Details
-
Bug
-
Resolution: Fixed
-
Test Blocker
-
None
-
None
-
None
-
None
Description
Java version:
java-client-3.0.0-20200103.164621-49.jar
During swap rebalance tests and few negative tests of transaction, we see that client.disconnect() fails with TimeoutException
Description of the failure with test steps
1. Initialize 4 node cluster, replica =2 and load 10000 documents through transaction though 8 threads. Each thread loads 1250 as in 5 in a single txn. so 10000 docs is loaded through 250*8= 2000 txn.
2. Initial load is now completed
3. now start a single txn to update 10000 docs(loaded in step 1) in a batch of 5 docs per txn and when the load id going on failover 2 nodes in the cluser. here failed over nodes are (172.23.120.192 and 172.23.120.19)
failover completes and rebalance also completes. Txn load is also completed
4. verification of the docs also passes and completes
now the test is trying to close the open client connection , which is actually failing
test case:
./testrunner -i /tmp/testexec.30530.ini num_items=10000,doc_size=512,transaction_timeout=150,durability=PERSIST_TO_MAJORITY,atomicity=True,GROUP=P0_Set1 -t rebalance_new.swaprebalancetests.SwapRebalanceFailedTests.test_failover_swap_rebalance,nodes_init=4,replicas=2,standard_buckets=1,num-swap=2,GROUP=P0_Set1;default
Error message:
File "lib/sdk_client3.py", line 120, in close
self.cluster.disconnect()
RuntimeException: java.lang.RuntimeException: java.util.concurrent.TimeoutException: Did not observe any item or terminal signal within 10000ms in 'source(MonoDefer)' (and no fallback has been configured)
Note: client.disconnect() doesnot fail for all the scenarios, it fails in few scenarios only (mostly when the txn expires or one node in the cluster goes down). Also, i ran the test without transaction and the test failed in client.disconnect() with the same error message.
Attached JavaSDK.log(JavaSDK.log) and the test.log(test.log)