[
https://issues.apache.org/jira/browse/TINKERPOP-1467?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15532494#comment-15532494
]
ASF GitHub Bot commented on TINKERPOP-1467:
-------------------------------------------
Github user dkuppitz commented on a diff in the pull request:
https://github.com/apache/tinkerpop/pull/441#discussion_r81113714
--- Diff:
gremlin-server/src/test/java/org/apache/tinkerpop/gremlin/server/GremlinDriverIntegrateTest.java
---
@@ -1248,6 +1250,73 @@ public void
shouldProcessSessionRequestsInOrderAfterTimeout() throws Exception {
}
}
+ @Test
+ public void shouldCloseAllClientsOnCloseOfCluster() throws Exception {
+ final Cluster cluster = Cluster.open();
+ final Client sessionlessOne = cluster.connect();
+ final Client session = cluster.connect("session");
+ final Client sessionlessTwo = cluster.connect();
+ final Client sessionlessThree = cluster.connect();
+ final Client sessionlessFour = cluster.connect();
+
+ assertEquals(2,
sessionlessOne.submit("1+1").all().get().get(0).getInt());
+ assertEquals(2, session.submit("1+1").all().get().get(0).getInt());
+ assertEquals(2,
sessionlessTwo.submit("1+1").all().get().get(0).getInt());
+ assertEquals(2,
sessionlessThree.submit("1+1").all().get().get(0).getInt());
+ // dont' send anything on the 4th client
+
+ // close one of these Clients before the Cluster
+ sessionlessThree.close();
+ cluster.close();
+
+ try {
--- End diff --
It is not verified, that exceptions are actually thrown. Should be more
like:
```
try {
sessionXyz.submit("1+1").all().get();
assertTrue(false);
} catch (Exception ex) {
....
```
> Improve close() operations on the Java driver
> ----------------------------------------------
>
> Key: TINKERPOP-1467
> URL: https://issues.apache.org/jira/browse/TINKERPOP-1467
> Project: TinkerPop
> Issue Type: Bug
> Components: driver
> Affects Versions: 3.1.3
> Reporter: stephen mallette
> Assignee: stephen mallette
> Fix For: 3.1.5, 3.2.3
>
>
> A few big problems:
> 1. Client will hang if submitting a request after {{close()}}
> 2. Multiple calls to {{close()}} hangs periodically
> 3. Closing the {{Cluster}} doesn't attempt to clean up open {{Client}}
> instances.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)