Geoff Reedy created TINKERPOP3-816:
--------------------------------------

             Summary: Gryo deserialization of error response with null message 
causes NPE and protocol desync
                 Key: TINKERPOP3-816
                 URL: https://issues.apache.org/jira/browse/TINKERPOP3-816
             Project: TinkerPop 3
          Issue Type: Bug
          Components: driver
    Affects Versions: 3.0.0-incubating
            Reporter: Geoff Reedy
            Assignee: stephen mallette


The issue can be easily reproduced by submitting a query that throws an 
exception with a null message, e.g.

:> throw new RuntimeException()

This results in a NPE on the client end in GryoMessageSerializerV1d0.dese
rializeResponse

The offending code is the invocation of .intern() on statusMsg on [line 
208|https://github.com/apache/incubator-tinkerpop/blob/d33fb15fd5d70e90b81edf16aba489b8eb8f7730/gremlin-driver/src/main/java/org/apache/tinkerpop/gremlin/driver/ser/GryoMessageSerializerV1d0.java#L208]

There are several ways to fix this problem, but I don't see the utility behind 
interning the message so I suggest removing the call to intern.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to