Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Integration test for compaction offload #1571

Closed
LeslieKid opened this issue Sep 20, 2024 · 0 comments · Fixed by #1573
Closed

Integration test for compaction offload #1571

LeslieKid opened this issue Sep 20, 2024 · 0 comments · Fixed by #1573

Comments

@LeslieKid
Copy link
Contributor

LeslieKid commented Sep 20, 2024

Describe This Problem

The subproblem for #1545 .
Currently, the compaction offload lacks integration tests. Impl these tests is crucial for ensuring the reliability and correctness of the compaction offload.
Secondly, adding support for a manual compact operation in SQL would provide more flexibility to users, allowing them to trigger table compaction on demand.

Proposal

The procedure to test the compaction module (in sql):

  1. Create a table.
  2. Insert data into table.
  3. Flush in-memory data into sst.
  4. Update data to simulate conditions requiring compaction.
  5. Flush.
  6. Trigger compaction. (manual compaction)
  7. Show compaction status.(optional) (delete for easiness)
  8. Verify the result.

The problem is that horaedb has not support manual compaction in sqlness yet. I want to impl compact as a pre-command, similar to flush command. The reason is:

  • Consistency with existing command. flush forces in-memory data to be written to SST files. Similarly, compact could be triggered to merge and optimize these SST files, aligning the two operations under the same command paradigm.

Additional Context

No response

@LeslieKid LeslieKid changed the title Integration test for compaction Integration test for compaction offload Oct 3, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant