HDDS-13874. Get rid of SnapshotCompactionDag#9678
HDDS-13874. Get rid of SnapshotCompactionDag#9678echonesis wants to merge 6 commits intoapache:masterfrom
Conversation
|
@aswinshakil @sadanand48 @smengcl please take a look |
|
This is a major change. As @peterxcli mentioned, We need some design doc to understand and review this change. @echonesis Can you please add them? |
|
Thanks @peterxcli and @aswinshakil for the suggestion! |
|
You can look at these design PRs for better understanding. These would give you an idea for adding design doc for new feature/changes to existing ones. |
|
Hi @peterxcli @aswinshakil , could you please take a look at this PR when you have a chance? |
|
This PR has been marked as stale due to 21 days of inactivity. Please comment or remove the stale label to keep it open. Otherwise, it will be automatically closed in 7 days. |
|
Thank you for your contribution. This PR is being closed due to inactivity. Please contact a maintainer if you would like to reopen it. |
What changes were proposed in this pull request?
This PR refactors the snapshot compaction tracking mechanism by replacing
SnapshotCompactionDagwith a new flush-based tracking system usingFlushLinkedListand related components.Major changes:
CompactionDagandCompactionNodeclasses that tracked compaction operations in a DAG structureFlushLinkedList: Tracks flush operations in a linked list structureFlushNode: Represents a single flush operation with snapshot generation metadataFlushLogEntry: DAO for writing flush log entries to the flush log tableFlushFileInfo: Metadata for flushed SST filesWhat is the link to the Apache JIRA
https://issues.apache.org/jira/browse/HDDS-13874
How was this patch tested?
GitHub Actions CI: https://github.com/echonesis/ozone/actions/runs/21389340168