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

ASF GitHub Bot commented on TINKERPOP-1726:
-------------------------------------------

Github user robertdale commented on a diff in the pull request:

    https://github.com/apache/tinkerpop/pull/800#discussion_r169305818
  
    --- Diff: 
gremlin-server/src/test/java/org/apache/tinkerpop/gremlin/server/GremlinServerIntegrateTest.java
 ---
    @@ -293,6 +312,21 @@ private static SslContext createServerSslContext() {
             return scriptEngineConf;
         }
     
    +    @Test
    +    public void shouldPingChannelIfClientDies() throws Exception {
    --- End diff --
    
    You should be able test for a dead client by opening a raw WebSocket, or 
even TCP, connection and simply not responding to anything.
    
    Or separately, just disable the idleWriteLimit (keepalive) and connect. 
Then it should timeout the client.



> Support WebSockets ping/pong keep-alive in Gremlin server
> ---------------------------------------------------------
>
>                 Key: TINKERPOP-1726
>                 URL: https://issues.apache.org/jira/browse/TINKERPOP-1726
>             Project: TinkerPop
>          Issue Type: Improvement
>          Components: server
>    Affects Versions: 3.2.5
>            Reporter: Andy Davidoff
>            Priority: Major
>
> The ping/pong keep-alive system that is part of the WebSockets spec provides 
> for successful identification of a dropped connection from either end of the 
> connection.
> Currently, the Java client successfully issues keep-alive pings and receives 
> pong replies from the server.  Unfortunately, the server does not actively 
> ping clients, nor does it discover and react to dead clients when keep-alive 
> fails.
> This can cause pending client writes to lock up the server indefinitely when 
> a client spontaneously disconnects.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to