Uploaded image for project: 'Infinispan'
  1. Infinispan
  2. ISPN-11518

IndexingDuringStateTransferTest random failures

XMLWordPrintable

      IndexingDuringStateTransferTest.test blocks StateResponseCommand so that state transfer doesn't finish during the test. Since state transfer is now non-blocking, blocking the thread that's trying to send the StateResponseCommand also prevents it from sending the response to the StateTransferStartCommand.

      Because the StateTransferStartCommand is blocked, the requestor can't complete the transaction data future in StateTransferLockImpl, and the test can't proceed to unblock the StateResumeCommand.

      The RpcManager wrapper is supposed to send the command anyway, but it doesn't catch AssertionError, so the command isn't sent and the rebalance hangs.

      Eventually the put times out, and the next test also fails because it can't add a new manager:

      java.lang.RuntimeException: java.util.concurrent.TimeoutException
      	at org.infinispan.query.blackbox.IndexingDuringStateTransferTest.test(IndexingDuringStateTransferTest.java:189)
      	at org.infinispan.query.blackbox.IndexingDuringStateTransferTest.testPut(IndexingDuringStateTransferTest.java:78)
      	at org.infinispan.commons.test.TestNGLongTestsHook.run(TestNGLongTestsHook.java:24)
      	at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
      	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
      	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
      	at java.base/java.lang.Thread.run(Thread.java:834)
      Caused by: java.util.concurrent.TimeoutException
      
          org.infinispan.manager.EmbeddedCacheManagerStartupException: org.infinispan.commons.CacheException: Initial state transfer timed out for cache defaultcache on IndexingDuringStateTransferTest-NodeF
      	at org.infinispan.manager.DefaultCacheManager.internalStart(DefaultCacheManager.java:746)
      	at org.infinispan.manager.DefaultCacheManager.start(DefaultCacheManager.java:712)
      	at org.infinispan.test.MultipleCacheManagersTest.addClusterEnabledCacheManager(MultipleCacheManagersTest.java:268)
      	at org.infinispan.test.MultipleCacheManagersTest.addClusterEnabledCacheManager(MultipleCacheManagersTest.java:232)
      	at org.infinispan.test.MultipleCacheManagersTest.addClusterEnabledCacheManager(MultipleCacheManagersTest.java:225)
      	at org.infinispan.query.blackbox.IndexingDuringStateTransferTest.test(IndexingDuringStateTransferTest.java:144)
      	at org.infinispan.query.blackbox.IndexingDuringStateTransferTest.testPutIgnoreReturnValue(IndexingDuringStateTransferTest.java:82)
      

            dberinde@redhat.com Dan Berindei (Inactive)
            dberinde@redhat.com Dan Berindei (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated:
              Resolved: