You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tinkerpop.apache.org by "ASF GitHub Bot (Jira)" <ji...@apache.org> on 2020/08/27 23:27:00 UTC

[jira] [Commented] (TINKERPOP-2410) Free up server threads when client is closed

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

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

divijvaidya opened a new pull request #1318:
URL: https://github.com/apache/tinkerpop/pull/1318


   https://issues.apache.org/jira/browse/TINKERPOP-2410
   
   Consider a situation where the server has sent some results back to the client and is waiting for Netty channel to be writable again before sending rest of the results. Let's assume that the client dies (or is closed) at this instant without consuming the entire set of results. In this case, the server threads will continue to wait for the channel to become writable (which it never will since client is dead) until the timeout is hit.
   
   With this change, if the connection becomes inactive, the loop will break and free up the threads.
   
   ## Testing
   We don't have any test mechanism to check the number of busy server threads. Hence, no tests are added to repro this case. Any suggestions on how to add tests for such scenarios are welcome!


----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


> Free up server threads when client is closed
> --------------------------------------------
>
>                 Key: TINKERPOP-2410
>                 URL: https://issues.apache.org/jira/browse/TINKERPOP-2410
>             Project: TinkerPop
>          Issue Type: Bug
>          Components: server
>    Affects Versions: 3.4.8
>            Reporter: Divij Vaidya
>            Priority: Minor
>
> Consider a situation where the server has sent some results back to the client and is waiting for Netty channel to be writable again before sending rest of the results. Let's assume that the client dies (or is closed) at this instant without consuming the entire set of results.
> In this case, the server threads will continue to wait for the channel to become writable (which it never will since client is dead) until the timeout is hit.
> We need to change the behaviour such that the waiting thread loop breaks if the channel becomes inactive. Such loop exists at TraversalOpProcessor (for bytecode execution) and AbstractOpProcessor(for string execution) in the server.



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