-
Notifications
You must be signed in to change notification settings - Fork 9.2k
HDDS-2064. OzoneManagerRatisServer#newOMRatisServer throws NPE when OM HA is configured incorrectly #1398
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
Closed
Closed
HDDS-2064. OzoneManagerRatisServer#newOMRatisServer throws NPE when OM HA is configured incorrectly #1398
Changes from 2 commits
Commits
Show all changes
7 commits
Select commit
Hold shift + click to select a range
5eaa1ef
HDDS-2064. OzoneManagerRatisServer#newOMRatisServer throws NPE when OM
smengcl 5e59dc2
Make testWrongConfiguration and testMultipleOMServiceIds happy.
smengcl 97ed7f4
Initialize this.peerNodes instead to eliminate OzoneManagerRatisServe…
smengcl c3a37cd
Clean up dead code. Remove assert.
smengcl fd122ac
Amend unit tests.
smengcl 8b90760
Remove unused import.
smengcl fe2a9b1
Remove more unused imports.
smengcl File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.
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.
We cannot add this condition here, because think of case
OZONE_OM_SERVICE_IDS_KEY = ns1,ns2
Because after one iteration of nameserviceID if we are not able to find any om node matching with nameservice, we should not throw illegal configuration. We should try out all name services and see if it is matching with any nameservice.
And also, we can eliminate iteration of for loop with OmUtils.emptyAsSingletonNull(omServiceIds)) and similar for nameServiceIds. As for HA this is a must required configuration which needs to be set.
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.
And also try out test cases with multiple name services set also. And for this test case, you can use ozone.om.node.id if needed.
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.
@bharatviswa504 Thanks for the review. You are right. Now I understand that it makes sense to walk through all configured service ids before declaring failure.
I should probably just put
found == 0check outside theserviceIdloop.