Open vetens opened 5 years ago
In the cases that these errors return
exit codes that indicate failure, now an appropriate exception should be raised (std::runtime_error
, std::range_error
, etc.,, though @lpetre-ulb or @lmoureaux can comment if there only certain types that will pass natively through the template, though i think all those defined (or inherited from) here are fine)
so in one of those cases should I still also log it to LOG4CPLUS_ERROR
?
I think all exceptions should probably be logged as error or warning at least, as a general rule
Brief summary of issue
This issue is for the discussion of what to do with specific
EMIT_RPC_ERROR
functions which are called.Since we are migrating the module to not make explicit reference to the rpc methods we will need to rethink any times where the code explicitly emits an rpc error and perhaps raise an exception
Types of issue
Current Behavior
For example, in
gbt.cpp
lines46
,107
,125
,129
,162
,166
,189
, and193
, there are several calls toEMIT_RPC_ERROR( response, message, errorcode)
. For some of these we may want to raise an exception in addition to logging it in the usual manner.https://github.com/jsturdy/ctp7_modules/blob/53ccd17de4bae8619fbe355f7f8c62637a467273/include/utils.h#L207-L216
Currently the implementation for this migration is to replace the
EMIT_RPC_ERROR
calls withLOG4CPLUS_ERROR(logger, message)
so I would like to establish how and when to raise exceptions ingbt
and other submodules