This is an automated email from the ASF dual-hosted git repository.

spmallette pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/tinkerpop.git

commit 9d9536ff44eda6cd1139c43a783c7f9fb5c78ebc
Merge: 1e6dd6b8a7 2ba7aa37f5
Author: Stephen Mallette <[email protected]>
AuthorDate: Mon Jun 23 07:29:11 2025 -0400

    Merge branch '3.8-dev'

 CHANGELOG.asciidoc                                    |  1 +
 .../org/apache/tinkerpop/gremlin/driver/Client.java   | 19 +++++++++++++++----
 .../gremlin/server/GremlinDriverIntegrateTest.java    | 16 +++++++++++++++-
 3 files changed, 31 insertions(+), 5 deletions(-)

diff --cc 
gremlin-server/src/test/java/org/apache/tinkerpop/gremlin/server/GremlinDriverIntegrateTest.java
index 54e70af717,3f585f4ee8..bdce08b0c8
--- 
a/gremlin-server/src/test/java/org/apache/tinkerpop/gremlin/server/GremlinDriverIntegrateTest.java
+++ 
b/gremlin-server/src/test/java/org/apache/tinkerpop/gremlin/server/GremlinDriverIntegrateTest.java
@@@ -763,14 -852,24 +766,25 @@@ public class GremlinDriverIntegrateTes
              // keepAlive message or the next request, whichever is earlier. 
In this case, we will simulate the second
              // scenario by sending a new request on first client. The request 
would fail (since server is down) and
              // client should mark the host unavailable.
-             cluster.connect().init();
+             // ...
+             // at 3.7.4 we don't let cluster level host availability 
determine for the client if
+             // NoHostAvailableException should be thrown. we rely on the 
ground truth of the actually initialization of
+             // the ConnectionPool and if at least one Host managed to create 
one. as such, it's more likely now that
+             // a NoHostAvailableException be thrown in this scenario, rather 
than it silently succeeding because
+             // client1 thinks it's still good.
+             try {
+                 cluster.connect().init();
+                 fail("Should have thrown NHA");
+             } catch (NoHostAvailableException ex) {
+ 
+             }
  
              try {
 -                client1.submit("1+1").all().join();
 +                client1.submit("g.inject(2)").all().join();
                  fail("Expecting an exception because the server is shut 
down.");
              } catch (Exception ex) {
 -                // ignore the exception
 +                assertTrue(ex.getCause() instanceof TimeoutException);
 +                assertThat(ex.getMessage(), containsString("waiting for 
connection"));
              }
  
              assertEquals(0, cluster.availableHosts().size());

Reply via email to