-
Notifications
You must be signed in to change notification settings - Fork 588
HDDS-2206. Separate handling for OMException and IOException in the Ozone Manager. Contributed by Supratim Deka #12
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
|
/retest |
db69f54 to
5fff037
Compare
elek
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.
Thanks @supratimdeka the patch, overall it looks good to me. I like the separation between the business exception and unexpected system exception.
But can you please explain why did you introduce a new configuration settings? Do you see any risk?
I think you can just use the new code path. For me it seems to be risky to have two kind of behavior as based on the configuration the client side will receive totally different exceptions which means the code path will be totally different.
It would require full testing all the time with or without the configuration.
|
2 modifications in latest commit:
|
bharatviswa504
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.
+1 LGTM.
* Application errors must not flood system log * Write log when internal error * signing key check is for debug
# This is the 1st commit message: Initial Commit # This is the commit message apache#2: more slight changes # This is the commit message apache#3: changes++ # This is the commit message apache#4: getExecutorService Changes # This is the commit message apache#5: applyTransaction() Changes # This is the commit message apache#6: changes++ # This is the commit message apache#7: TestOzoneManagerLock changes # This is the commit message apache#8: add changes # This is the commit message apache#9: add more minor changes # This is the commit message apache#10: add config to ozone-default.xml # This is the commit message apache#11: minor changes # This is the commit message apache#12: change modulo logic # This is the commit message apache#13: changes # This is the commit message apache#14: changes++ # This is the commit message apache#15: add changes++ # This is the commit message apache#16: minor changes # This is the commit message apache#17: Changes (to be reverted) # This is the commit message apache#18: Changes 09/05
https://issues.apache.org/jira/browse/HDDS-2206
Introduced a boolean config parameter to control exception propagation from OM to Clients.
If set to true, all system exceptions (IOException) are thrown as ServiceException to RPC client - this also propagates the complete server-side stack trace to the client. If false, system exception stack trace is logged locally on the server, not sent to client.
The default value is set to true for now. For Ozone GA, we can revisit this choice.
Business Exception (OMException) handling is not changed.
This change does not include propagation of exceptions from within Ratis server.