Florian Hockmann created TINKERPOP-2192: -------------------------------------------
Summary: 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 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 (v7.6.3#76005)