[ https://issues.apache.org/jira/browse/TINKERPOP-2266?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16884754#comment-16884754 ]
Divij Vaidya commented on TINKERPOP-2266: ----------------------------------------- This PR [1] solves this problem by removing the custom keep alive logic and instead handling the responsibility to Netty [2] . It is not merged in any of the release branches yet since it carries a lot of other changes with it. Feel free to take a look at the code and file a PR addressing this specific issue. Let me know if you need help implementing it. [1][https://github.com/apache/tinkerpop/pull/1105] [2][https://github.com/apache/tinkerpop/pull/1105/files#diff-d29dedc9180fcee3c1b87f2f3d24fd4f] > Keep alive not started at connection creation > --------------------------------------------- > > Key: TINKERPOP-2266 > URL: https://issues.apache.org/jira/browse/TINKERPOP-2266 > Project: TinkerPop > Issue Type: Bug > Components: driver > Affects Versions: 3.3.5 > Reporter: Christian Howe > Priority: Major > > I keep seeing connections in the connection pool being closed in the Gremlin > Java driver, and it looks like there are no keep alive messages being sent to > keep the connection open. However, after a write happens to the connection, > the keep alive seems to start and keep the connection open, based on > observations from tcpdump. The problem with this is that sometimes when we > make a query to the client, we get a connection which is closed, and an > exception is thrown. This results in an increase in customer-impacting > faults, and retries are likely to pull down another connection which is also > closed in a pool with a lot of connections. Larger pools are necessary with > longer running queries to have sufficient concurrency. > It looks like [when keep alive was > added|https://github.com/apache/tinkerpop/pull/433], it was written to only > start the keep alive after there is a write to the connection. In the case > where a connection is created as part of a connection pool during > initialization, I can't find where any write would be made to start the keep > alive. Is there another a mechanism to start this keep alive when a > connection is created? -- This message was sent by Atlassian JIRA (v7.6.14#76016)