HDDS-13664. Persist pendingDeleteBytes only when feature is finalized#9036
HDDS-13664. Persist pendingDeleteBytes only when feature is finalized#9036ChenSammi merged 8 commits intoapache:HDDS-13177from
Conversation
|
@ChenSammi @sumitagrawl Can you please review the changes? |
|
Why does the title of this PR refer to datanode upgrade finalization but the code changes do not add a datanode layout feature? |
9e89eeb to
83e6f47
Compare
c78e9b5 to
9373f1b
Compare
updated the title. There is no upgrade actions. |
|
I see the layout feature was added earlier in the feature branch. Please update the design doc with information why a layout feature is required for this. From what I can tell we are only adding new information, which does not usually require layout features. |
|
Thank you @ChenSammi for the review and I have addressed all your comments in latest commit. |
| @@ -645,12 +647,17 @@ private void updateMetaData(KeyValueContainerData containerData, | |||
|
|
|||
| // update pending deletion blocks count and delete transaction ID in | |||
| // in-memory container status | |||
There was a problem hiding this comment.
Can you refactor these two lines of comments to make it correct?
There was a problem hiding this comment.
@priyeshkaratha , there is one more place that pendingDeleteBytes is persisted without check the feature finalized or not, KeyValueContainerMetadataInspector#checkAndRepair. We can skip the pendingDeleteBytes check and repair if feature is not finalized.
Please also check and run the fail test locally to see if it's related.
There was a problem hiding this comment.
Handled checkAndRepair. Validated failed testcase locally and it is passing.
|
Thanks @priyeshkaratha. |
What changes were proposed in this pull request?
This PR introduces refactors the pending deletion metadata handling logic and comprehensive integration testing for the DataNode data distribution feature upgrade scenario.
The changes include:
KeyValueContainerUtil.javapopulatePendingDeletionMetadata()method for better separation of concernsTestDNDataDistributionFinalization.javaWhat is the link to the Apache JIRA
HDDS-13664
How was this patch tested?
Tested using integration added integration tests.