Github user vrozov commented on a diff in the pull request:
https://github.com/apache/drill/pull/1144#discussion_r184452335
--- Diff: src/main/resources/checkstyle-config.xml ---
@@ -30,10 +30,15 @@
<module name="NeedBraces"/>
+ <module name="IllegalCatch">
--- End diff --
My point is that there should be no special handling for IOBE compared to
NPE or CCE. If it is in process call to a Java library all run-time exceptions
including NPE, IOBE and CCE should be propagated to the caller. If it is a
remote call, runtime and checked exceptions need to be handled by propagating
them to a remote caller as well.
What an end user tool displays to an end user depends on a tool. IMO, the
best option is to have a configuration parameter that determines verbosity
level. With default verbosity level, the tool may show a generic error message
(possibly explaining how to increase verbosity level to get more info, see
`maven -X`), and there should be an option to change the verbosity level and
print a stack trace that initially triggered the error. Such stack trace is
required when an end user logs a bug or asks for help on the dev list.
---