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

BiasRevocationTest.testFailedRevocationDuringPutAllOnNonOwnerThrowBefore random failures

    XMLWordPrintable

Details

    Description

      The test doesn't wait for the cluster to form before issuing a write operation. After a topology change, the retried command fails on the primary owner with a NullPointerException:

      00:44:52,166 TRACE (remote-thread-Test-NodeA-p63633-t5:[]) [TrianglePerCacheInboundInvocationHandler] Topology changed, retrying: org.infinispan.statetransfer.OutdatedTopologyException
      00:44:52,166 TRACE (remote-thread-Test-NodeA-p63633-t5:[]) [TrianglePerCacheInboundInvocationHandler] Sending exception ack for command CommandInvocation:Test-NodeB-50920:99611. Originator=Test-NodeB-50920.
      00:44:52,166 TRACE (remote-thread-Test-NodeA-p63633-t5:[]) [JGroupsTransport] Test-NodeA-62783 sending command to Test-NodeB-50920: ExceptionAckCommand{id=99611, throwable=org.infinispan.remoting.RemoteException: Exception on Test-NodeA-62783, topologyId=4}
      00:44:52,167 TRACE (jgroups-6,Test-NodeB-50920:[]) [JGroupsTransport] Test-NodeB-50920 received command from Test-NodeA-62783: ExceptionAckCommand{id=99611, throwable=org.infinispan.remoting.RemoteException: Exception on Test-NodeA-62783, topologyId=4}
      00:44:52,177 TRACE (jgroups-6,Test-NodeB-50920:[]) [EntryWrappingInterceptor] This is a retry - resetting previous values for [MagicKey{2379/BEF29B28/0@Test-NodeA-62783}]
      00:44:52,177 ERROR (jgroups-6,Test-NodeB-50920:[]) [InvocationContextInterceptor] ISPN000136: Error executing command PutMapCommand, writing keys [MagicKey{2379/BEF29B28/0@Test-NodeA-62783}]
      java.lang.NullPointerException: null
      	at org.infinispan.interceptors.impl.EntryWrappingInterceptor.removeFromContextOnRetry(EntryWrappingInterceptor.java:357) ~[classes/:?]
      	at org.infinispan.interceptors.impl.EntryWrappingInterceptor.visitPutMapCommand(EntryWrappingInterceptor.java:393) ~[classes/:?]
      	at org.infinispan.commands.write.PutMapCommand.acceptVisitor(PutMapCommand.java:80) ~[classes/:?]
      	at org.infinispan.interceptors.BaseAsyncInterceptor.invokeNext(BaseAsyncInterceptor.java:59) ~[classes/:?]
      	at org.infinispan.interceptors.impl.PrefetchInterceptor.handleWriteManyCommand(PrefetchInterceptor.java:394) ~[classes/:?]
      	at org.infinispan.interceptors.impl.PrefetchInterceptor.visitPutMapCommand(PrefetchInterceptor.java:450) ~[classes/:?]
      	at org.infinispan.commands.write.PutMapCommand.acceptVisitor(PutMapCommand.java:80) ~[classes/:?]
      	at org.infinispan.interceptors.BaseAsyncInterceptor.invokeNextAndHandle(BaseAsyncInterceptor.java:188) ~[classes/:?]
      	at org.infinispan.interceptors.impl.BaseStateTransferInterceptor.retryWhenDone(BaseStateTransferInterceptor.java:157) ~[classes/:?]
      	at org.infinispan.statetransfer.StateTransferInterceptor.handleNonTxWriteReturn(StateTransferInterceptor.java:338) ~[classes/:?]
      	at org.infinispan.interceptors.impl.QueueAsyncInvocationStage.invokeQueuedHandlers(QueueAsyncInvocationStage.java:118) ~[classes/:?]
      	at org.infinispan.interceptors.impl.QueueAsyncInvocationStage.accept(QueueAsyncInvocationStage.java:81) ~[classes/:?]
      	at org.infinispan.interceptors.impl.QueueAsyncInvocationStage.accept(QueueAsyncInvocationStage.java:30) ~[classes/:?]
      	at java.util.concurrent.CompletableFuture.uniWhenComplete(CompletableFuture.java:760) ~[?:1.8.0_152]
      	at java.util.concurrent.CompletableFuture$UniWhenComplete.tryFire(CompletableFuture.java:736) ~[?:1.8.0_152]
      	at java.util.concurrent.CompletableFuture.postComplete(CompletableFuture.java:474) ~[?:1.8.0_152]
      	at java.util.concurrent.CompletableFuture.completeExceptionally(CompletableFuture.java:1977) ~[?:1.8.0_152]
      	at org.infinispan.interceptors.distribution.ScatteredDistributionInterceptor$SyncMergingCompletableFuture.completeExceptionally(ScatteredDistributionInterceptor.java:1397) ~[classes/:?]
      	at org.infinispan.interceptors.distribution.ScatteredDistributionInterceptor.lambda$handleWriteManyOnOrigin$25(ScatteredDistributionInterceptor.java:1014) ~[classes/:?]
      	at java.util.concurrent.CompletableFuture.uniWhenComplete(CompletableFuture.java:760) [?:1.8.0_152]
      	at java.util.concurrent.CompletableFuture$UniWhenComplete.tryFire(CompletableFuture.java:736) [?:1.8.0_152]
      	at java.util.concurrent.CompletableFuture.postComplete(CompletableFuture.java:474) [?:1.8.0_152]
      	at java.util.concurrent.CompletableFuture.completeExceptionally(CompletableFuture.java:1977) [?:1.8.0_152]
      	at org.infinispan.util.concurrent.CommandAckCollector$CombiningCollector.primaryException(CommandAckCollector.java:553) [classes/:?]
      	at org.infinispan.util.concurrent.CommandAckCollector$MultiAckTarget.completeExceptionally(CommandAckCollector.java:641) [classes/:?]
      	at org.infinispan.util.concurrent.CommandAckCollector.completeExceptionally(CommandAckCollector.java:206) [classes/:?]
      	at org.infinispan.commands.write.ExceptionAckCommand.ack(ExceptionAckCommand.java:43) [classes/:?]
      	at org.infinispan.remoting.inboundhandler.TrianglePerCacheInboundInvocationHandler.handleExceptionAck(TrianglePerCacheInboundInvocationHandler.java:212) [classes/:?]
      	at org.infinispan.remoting.inboundhandler.TrianglePerCacheInboundInvocationHandler.handle(TrianglePerCacheInboundInvocationHandler.java:112) [classes/:?]
      	at org.infinispan.remoting.inboundhandler.GlobalInboundInvocationHandler.handleCacheRpcCommand(GlobalInboundInvocationHandler.java:120) [classes/:?]
      	at org.infinispan.remoting.inboundhandler.GlobalInboundInvocationHandler.handleFromCluster(GlobalInboundInvocationHandler.java:79) [classes/:?]
      	at org.infinispan.remoting.transport.jgroups.JGroupsTransport.processRequest(JGroupsTransport.java:1295) [classes/:?]
      	at org.infinispan.remoting.transport.jgroups.JGroupsTransport.processMessage(JGroupsTransport.java:1219) [classes/:?]
      	at org.infinispan.remoting.transport.jgroups.JGroupsTransport.access$200(JGroupsTransport.java:124) [classes/:?]
      	at org.infinispan.remoting.transport.jgroups.JGroupsTransport$ChannelCallbacks.receive(JGroupsTransport.java:1357) [classes/:?]
      00:44:52,205 ERROR (testng-Test:[]) [TestSuiteProgress] Test failed: org.infinispan.scattered.BiasRevocationTest.testFailedRevocationDuringPutAllOnNonOwnerThrowBefore
      java.lang.AssertionError: Wrong exception thrown: expected:<org.infinispan.util.concurrent.TimeoutException>, actual:<org.infinispan.commons.CacheException>
      	at org.infinispan.test.Exceptions.assertException(Exceptions.java:22) ~[test-classes/:?]
      	at org.infinispan.test.Exceptions.expectException(Exceptions.java:99) ~[test-classes/:?]
      	at org.infinispan.scattered.BiasRevocationTest.testFailedRevocation(BiasRevocationTest.java:105) ~[test-classes/:?]
      	at org.infinispan.scattered.BiasRevocationTest.testFailedRevocationDuringPutAllOnNonOwnerThrowBefore(BiasRevocationTest.java:82) ~[test-classes/:?]
      

      Attachments

        Activity

          People

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

            Dates

              Created:
              Updated:
              Resolved: