-
Notifications
You must be signed in to change notification settings - Fork 588
HDDS-12990. Generate tree from metadata when it doesn't exist during getContainerChecksumInfo call #8881
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
Conversation
…getContainerChecksumInfo call
errose28
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Just a minor typo in the log message otherwise LGTM.
...tainer-service/src/main/java/org/apache/hadoop/ozone/container/keyvalue/KeyValueHandler.java
Outdated
Show resolved
Hide resolved
|
@errose28 @aswinshakil This seems to break master. Please kindly help to rectify it. |
…xist during getContainerChecksumInfo call (#8881)
|
Good catch @ivandika3 and @adoroszlai. Looks like the order of events was:
I'm not sure if there's a way to prevent these sort of issues entirely, since there's always going to be a gap between when a PR's CI completes and when it is merged, during which any other change could show up in master. I guess if reviewers are aware of related changes in master they can re-trigger the CI before merge. |
|
Thanks @adoroszlai for helping to resolve the issue promptly and @errose28 for tracing the issue.
Yes, IMO it's an acceptable tradeoff between occasional compile issue and needing to merge to latest master (which will slow down merge). I think it's OK if we can rectify the issue quickly (e.g. checking master branch frequently + checking for notification for CI failures on master when the PR is merged). @adoroszlai By the way, can I check whether any committer / PMC has the privilege to push directly to master to fix compile issue or is there any SOP that we need to follow? |
Yes.
Not completely, but here's a basic sanity check to be run locally before merge: (It uses GitHub CLI, but can also be done using few more lower level commands.) |
* master: (55 commits) HDDS-13525. Rename configuration property to ozone.om.compaction.service.enabled (apache#8928) HDDS-13519. Reconciliation should continue if a peer datanode is unreachable (apache#8908) HDDS-13566. Fix incorrect authorizer class in ACL documentation (apache#8931) HDDS-13084. Trigger on-demand container scan when a container moves from open to unhealthy. (apache#8904) HDDS-13432. Accelerating Namespace Usage Calculation in Recon using - Materialised Approach (apache#8797) HDDS-13557. Bump jline to 3.30.5 (apache#8920) HDDS-13556. Bump assertj-core to 3.27.4 (apache#8919) HDDS-13543. [Docs] Design doc for OM bootstrapping process with snapshots. (apache#8900) HDDS-13541. Bump sonar-maven-plugin to 5.1.0.4751 (apache#8911) HDDS-13101. Remove duplicate information in datanode list output (apache#8523) HDDS-13528. Handle null paths when the NSSummary is initializing (apache#8901) HDDS-12990. (addendum) Generate tree from metadata when it does not exist during getContainerChecksumInfo call (apache#8881) HDDS-13086. Block duplicate reconciliation requests for the same container and datanode within the datanode. (apache#8905) HDDS-12990. Generate tree from metadata when it doesn't exist during getContainerChecksumInfo call (apache#8881) HDDS-12824. Optimize container checksum read during datanode startup (apache#8604) HDDS-13522. Rename axisLabel for No. of delete request received (apache#8879) HDDS-12196. Document ozone repair cli (apache#8849) HDDS-13514. Intermittent failure in TestNSSummaryMemoryLeak (apache#8889) HDDS-13423. Log reason for triggering on-demand container scan (apache#8854) HDDS-13466. Disable flaky TestOmSnapshotFsoWithNativeLibWithLinkedBuckets ...
…getContainerChecksumInfo call (apache#8881)
What changes were proposed in this pull request?
Currently the client will get an IO_EXCEPTION result code when requesting the merkle tree of a peer that has not been generated yet. If the container is not open, have the peer build the merkle tree from metadata and return this instead. This change builds merkle tree if it's not available.
What is the link to the Apache JIRA
https://issues.apache.org/jira/browse/HDDS-12990
How was this patch tested?
Existing tests.