Open zonotope opened 2 months ago
@zonotope I would even initially accept an error response with a less-than-perfect explanation (rather than an indefinite hang). Which is to say if our existing txn validation handling (e.g. malli etc) already could recognize the error and produce a useful report, then by all means, let's return that with the error, but if not, then just capturing some initial error and handling it rather than hanging would maybe be sufficient
Agreed. The problem here is that I don't think the kind of superficial/syntax level validation that we could provide as our first line of defense in the http request handling with something like malli could catch a semantic/logical error like this. We will only know that this request is malformed after we begin parsing and executing the request itself, so it might take a little creativity to bubble that error that probably happens in the raft state machine back up to the user.
Describe the bug Malformed or invalid create requests to fluree/server hang instead of returning an error
To Reproduce Steps to reproduce the behavior:
xsd:string
and onlyrdf:langString
is allowed for language tagged strings):Expected behavior The user is notified of the invalid request with an error message explaining what's wrong instead of the system hanging.
Stack trace These errors come from the server logs: