jbmusso / gremlin-javascript

JavaScript tools for graph processing in Node.js and the browser inspired by the Apache TinkerPop API
MIT License
214 stars 63 forks source link

Attach rawMessage property to error on execute() #105

Closed princjef closed 6 years ago

princjef commented 6 years ago

Some gremlin-compatible endpoints (such as Azure CosmosDB Graph) provide additional metadata in the message which is useful for processing. It's possible to retrieve this information using a custom executeHandler, but the metadata is swallowed when an error occurs, making it impossible for a client to retrieve it.

This change adds a rawMessage property to the error emitted so that clients can retrieve additional structured information from the message when errors occur. I'm also open to any suggestions for other approaches/field names. I went with this because it was simple and non-breaking without limiting the available information.

jbmusso commented 6 years ago

Thanks! That makes sense.