Affects Version/s: 3.3.3
Fix Version/s: None
Environment:Azure App Service
We're getting the following System.InvalidOperationException error message:
We get this exception sporadically and only a few times out of thousands. Unfortunately we have not been able to reproduce it.
I understand that when dealing with web sockets, it is allowed to have only a single pending "send" or a single pending "receive".
After looking at GitHub's WebSocketConnection class, I don't see any orchestration between SendMessageAsync's _client.SendAsync (currently line 54) and ReceiveMessageAsync's _client.ReceiveAsync (currently line 66).
I'm wondering if not having orchestration in the WebSocketConnection class to keep the single pending "send" or a single pending "receive" rule may be the cause.
In our .NET Core web api application, we create the GremlinConnection as a singleton in Startup.cs and then have one central call that makes Gremlin calls; i.e. it's a very straightforward implementation.
We use the Gremlin.Net version 3.3.3 nuget package and the Microsoft.NETCore.App SDK
Would it be possible to identify if this is indeed a bug on Gremlin.NET?
And if it is, any thoughts on a best-practice (temporary) work-around that we can implement?