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.
PR description
Harmonize error handling in order to:
Changes
datashare-neo4j-extension/src
Changed
HttpError
to avoid deserializing thetrace
attribute, this way no trace information will be returned by the HTTP. In order to be able to log message with traces aHttpError.getMessageWithTrace()
method was addedNeo4jAppError
andHttpError
to isolate their behavior.Neo4jAppError
represents a error returned by the Python application, it serialization had not reason to be bound to theHttpError
serialization/deserializationRuntimeError
wrapNeo4jAppCall
to reformat any unhandled exception into theHttpError
usingHttpError.fromException
which converts any exception in a single format. The wrapper logs error with trace and return HTTP errors without traceswrapNeo4jAppCall
, the deserialization of the incoming payload is done using theparseContext
function which raise a customBadRequest
error which it later caught and reformatted into theHttpError
. This allows to return normalized errors in case of a400
error rather than retuning the non formatted error fromfluent
datashare-neo4j-extension/pom.xml
Fixed
./neo4j format_test_java
and updated java files accordingly