tinkerpop-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "ASF GitHub Bot (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (TINKERPOP-2026) Gremlin.Net.Driver should check ClientWebSocket.State before closing
Date Fri, 21 Sep 2018 16:55:00 GMT

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

ASF GitHub Bot commented on TINKERPOP-2026:

Github user SamiMajed commented on the issue:

    Thank you, Florian. Is this fix scheduled to be part of the 3.4 release? 
    If so, what would be the target release date? 

> Gremlin.Net.Driver should check ClientWebSocket.State before closing
> --------------------------------------------------------------------
>                 Key: TINKERPOP-2026
>                 URL: https://issues.apache.org/jira/browse/TINKERPOP-2026
>             Project: TinkerPop
>          Issue Type: Improvement
>          Components: dotnet
>    Affects Versions: 3.2.9
>            Reporter: Florian Hockmann
>            Assignee: Florian Hockmann
>            Priority: Minor
> User [~samimajed] described in a comment for TINKERPOP-2019 a situation where the Gremlin.Net.Driver
tries to close a {{ClientWebSocket}} which fails because it was apparently already closed:
> {code}
> System.Net.WebSockets.WebSocketException:
> at System.Net.WebSockets.WebSocketValidate.ThrowIfInvalidState (System.Net.WebSockets.Client,
Version=, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a)
> at System.Net.WebSockets.WinHttpWebSocketState.InterlockedCheckAndUpdateState (System.Net.WebSockets.Client,
Version=, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a)
> at System.Net.WebSockets.WinHttpWebSocket+<CloseAsync>d__30.MoveNext (System.Net.WebSockets.Client,
Version=, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a)
> [...]
> at Gremlin.Net.Driver.WebSocketConnection+<CloseAsync>d__4.MoveNext (Gremlin.Net,
Version=, Culture=neutral, PublicKeyToken=d2035e9aa387a711)
> [...]
> {code}
> Gremlin.Net should check the state of the {{ClientWebSocket}} before trying to close
it as the server could have already closed the connection.
> [The implementation for this in SignalR|https://github.com/SignalR/SignalR/blob/1fba14fa3437e24c204dfaf8a18db3fce8acad3c/src/Microsoft.AspNet.SignalR.Core/Owin/WebSockets/WebSocketHandler.cs#L92]
could be a good starting point as it uses the same underlying WebSocket implementation.

This message was sent by Atlassian JIRA

View raw message