[ 
https://issues.apache.org/jira/browse/TINKERPOP-2192?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17036233#comment-17036233
 ] 

Florian Hockmann edited comment on TINKERPOP-2192 at 2/13/20 1:50 PM:
----------------------------------------------------------------------

No, not really, but this should really be a simple fix. So, if you want to 
contribute, then this could be a good ticket to get started.

edit: Didn't see Stephen's comment yet when I wrote this.


was (Author: florian hockmann):
No, not really, but this should really be a simple fix. So, if you want to 
contribute, then this could be a good ticket to get started.

> Gremlin.Net.Driver.Connection.Parse throws a NullReferenceException
> -------------------------------------------------------------------
>
>                 Key: TINKERPOP-2192
>                 URL: https://issues.apache.org/jira/browse/TINKERPOP-2192
>             Project: TinkerPop
>          Issue Type: Bug
>          Components: dotnet
>    Affects Versions: 3.4.1
>            Reporter: Florian Hockmann
>            Priority: Minor
>
> The Parse method has only three objects on which we call methods of which two 
> are {{readonly}}. So the problem is most likely in the error handling:
> {code}
> if (_callbackByRequestId.TryRemove(receivedMsg.RequestId, out var 
> responseHandler))
>  {
>      responseHandler.HandleFailure(e);
> }
>  {code}
> Here, {{responseHandler}} can be null if the callback handler for that 
> request id was not found. So we just need a null check. (We can't notify 
> anyone about a failure any way in this case.)
> Stack trace:
> {code}
> System.NullReferenceException: Object reference not set to an instance of an 
> object.
>    at Gremlin.Net.Driver.Connection.Parse(Byte[] received)
>    at Gremlin.Net.Driver.Connection.ReceiveMessagesAsync()
>    at Gremlin.Net.Driver.ProxyConnection.SubmitAsync[T](RequestMessage 
> requestMessage)
>    at Gremlin.Net.Driver.GremlinClient.SubmitAsync[T](RequestMessage 
> requestMessage)
>    at 
> Gremlin.Net.Driver.Remote.DriverRemoteConnection.SubmitBytecodeAsync(Guid 
> requestid, Bytecode bytecode)
>    at 
> Gremlin.Net.Driver.Remote.DriverRemoteConnection.SubmitAsync[S,E](Bytecode 
> bytecode)
>    at Gremlin.Net.Process.Remote.RemoteStrategy.ApplyAsync[S,E](ITraversal`2 
> traversal)
>    at Gremlin.Net.Process.Traversal.DefaultTraversal`2.ApplyStrategiesAsync()
>    at 
> Gremlin.Net.Process.Traversal.DefaultTraversal`2.Promise[TReturn](Func`2 
> callback)
>  {code}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to