Andrius
Andrius

Reputation: 41

Replicated cache with NON_XA transaction fails to syncronize cache data upon Wildfly v.21 (same with v.22) second cluster node start

Works perfectly on Wildlfy v.18  (Infinispan 9.4.16) but not on v.21 or v.22 (Infinispan 11.04)

 

A standard Wildfly v.22 (same with v.21) configuration using standalone-full-ha.xml running as a cluster of two nodes.

Cache is configured as:

<cache-container name="opencell">
    <transport lock-timeout="60000"/>
    <replicated-cache name="opencell-cft-cache" statistics-enabled="true">
        <transaction mode="NON_XA"/>
    </replicated-cache>
</cache-container>

 

Cache is accessed this way:

@Resource(lookup = "java:jboss/infinispan/cache/opencell/opencell-cft-cache")
private Cache<CacheKeyStr, Map<String, CustomFieldTemplate>> cftsByAppliesTo;

 

Java version: OpenJDK 64-Bit Server VM 18.9 (build 11+28, mixed mode)

 

Infinispan fails to synchronize caches when starting a second cluster node because of missing transaction.

Changing transaction to NONE, a second cluster node starts with no errors.

 

16:13:46,141 ERROR [org.infinispan.interceptors.impl.InvocationContextInterceptor] (thread-18,ejb,opencell-node2) ISPN000136: Error executing command PutKeyValueCommand on Cache 'opencell-cft-cache', writing keys [/JobInstance_GenericWorkflowJob]: org.infinispan.commons.CacheException: javax.transaction.InvalidTransactionException: WFTXN0002: Transaction is not a supported instance: TransactionImpl{xid=Xid{formatId=2, globalTransactionId=0000000000000001,branchQualifier=0000000000000001}, status=ACTIVE}
    at [email protected]//org.infinispan.transaction.impl.TransactionTable.enlist(TransactionTable.java:227)
    at [email protected]//org.infinispan.interceptors.impl.TxInterceptor.enlist(TxInterceptor.java:423)
    at [email protected]//org.infinispan.interceptors.impl.TxInterceptor.handleWriteCommand(TxInterceptor.java:387)
    at [email protected]//org.infinispan.interceptors.impl.TxInterceptor.visitPutKeyValueCommand(TxInterceptor.java:227)
    at [email protected]//org.infinispan.commands.write.PutKeyValueCommand.acceptVisitor(PutKeyValueCommand.java:63)
    at [email protected]//org.infinispan.interceptors.BaseAsyncInterceptor.invokeNext(BaseAsyncInterceptor.java:59)
    at [email protected]//org.infinispan.statetransfer.TransactionSynchronizerInterceptor.visitCommand(TransactionSynchronizerInterceptor.java:41)
    at [email protected]//org.infinispan.interceptors.BaseAsyncInterceptor.invokeNextAndHandle(BaseAsyncInterceptor.java:190)
    at [email protected]//org.infinispan.statetransfer.StateTransferInterceptor.handleTxWriteCommand(StateTransferInterceptor.java:259)
    at [email protected]//org.infinispan.statetransfer.StateTransferInterceptor.handleWriteCommand(StateTransferInterceptor.java:249)
    at [email protected]//org.infinispan.statetransfer.StateTransferInterceptor.visitPutKeyValueCommand(StateTransferInterceptor.java:96)
    at [email protected]//org.infinispan.commands.write.PutKeyValueCommand.acceptVisitor(PutKeyValueCommand.java:63)
    at [email protected]//org.infinispan.interceptors.BaseAsyncInterceptor.invokeNextAndFinally(BaseAsyncInterceptor.java:155)
    at [email protected]//org.infinispan.interceptors.impl.CacheMgmtInterceptor.updateStoreStatistics(CacheMgmtInterceptor.java:249)
    at [email protected]//org.infinispan.interceptors.impl.CacheMgmtInterceptor.visitPutKeyValueCommand(CacheMgmtInterceptor.java:210)
    at [email protected]//org.infinispan.commands.write.PutKeyValueCommand.acceptVisitor(PutKeyValueCommand.java:63)
    at [email protected]//org.infinispan.interceptors.BaseAsyncInterceptor.invokeNextAndExceptionally(BaseAsyncInterceptor.java:128)
    at [email protected]//org.infinispan.interceptors.impl.InvocationContextInterceptor.visitCommand(InvocationContextInterceptor.java:90)
    at [email protected]//org.infinispan.interceptors.BaseAsyncInterceptor.invokeNext(BaseAsyncInterceptor.java:61)
    at [email protected]//org.infinispan.interceptors.DDAsyncInterceptor.handleDefault(DDAsyncInterceptor.java:53)
    at [email protected]//org.infinispan.interceptors.DDAsyncInterceptor.visitPutKeyValueCommand(DDAsyncInterceptor.java:59)
    at [email protected]//org.infinispan.commands.write.PutKeyValueCommand.acceptVisitor(PutKeyValueCommand.java:63)
    at [email protected]//org.infinispan.interceptors.DDAsyncInterceptor.visitCommand(DDAsyncInterceptor.java:49)
    at [email protected]//org.infinispan.interceptors.impl.AsyncInterceptorChainImpl.invokeAsync(AsyncInterceptorChainImpl.java:226)
    at [email protected]//org.infinispan.statetransfer.StateConsumerImpl.invokePut(StateConsumerImpl.java:739)
    at [email protected]//org.infinispan.statetransfer.StateConsumerImpl.doApplyState(StateConsumerImpl.java:676)
    at [email protected]//org.infinispan.statetransfer.StateConsumerImpl.applyChunk(StateConsumerImpl.java:644)
    at [email protected]//org.infinispan.statetransfer.StateConsumerImpl.applyStateIteration(StateConsumerImpl.java:618)
    at [email protected]//org.infinispan.statetransfer.StateConsumerImpl.applyState(StateConsumerImpl.java:597)
    at [email protected]//org.infinispan.commands.statetransfer.StateResponseCommand.invokeAsync(StateResponseCommand.java:80)
    at [email protected]//org.infinispan.remoting.inboundhandler.BasePerCacheInboundInvocationHandler.invokeCommand(BasePerCacheInboundInvocationHandler.java:115)
    at [email protected]//org.infinispan.remoting.inboundhandler.BaseBlockingRunnable.invoke(BaseBlockingRunnable.java:100)
    at [email protected]//org.infinispan.remoting.inboundhandler.BaseBlockingRunnable.lambda$runAsync$0(BaseBlockingRunnable.java:91)
    at java.base/java.util.concurrent.CompletableFuture.uniWhenComplete(CompletableFuture.java:859)
    at java.base/java.util.concurrent.CompletableFuture.uniWhenCompleteStage(CompletableFuture.java:883)
    at java.base/java.util.concurrent.CompletableFuture.whenComplete(CompletableFuture.java:2251)
    at [email protected]//org.infinispan.remoting.inboundhandler.BaseBlockingRunnable.runAsync(BaseBlockingRunnable.java:74)
    at [email protected]//org.infinispan.remoting.inboundhandler.BaseBlockingRunnable.run(BaseBlockingRunnable.java:41)
    at [email protected]//org.infinispan.remoting.inboundhandler.BasePerCacheInboundInvocationHandler.handleRunnable(BasePerCacheInboundInvocationHandler.java:163)
    at [email protected]//org.infinispan.remoting.inboundhandler.TxPerCacheInboundInvocationHandler.handle(TxPerCacheInboundInvocationHandler.java:89)
    at [email protected]//org.infinispan.remoting.inboundhandler.GlobalInboundInvocationHandler.handleCacheRpcCommand(GlobalInboundInvocationHandler.java:167)
    at [email protected]//org.infinispan.remoting.inboundhandler.GlobalInboundInvocationHandler.handleFromCluster(GlobalInboundInvocationHandler.java:113)
    at [email protected]//org.infinispan.remoting.transport.jgroups.JGroupsTransport.processRequest(JGroupsTransport.java:1378)
    at [email protected]//org.infinispan.remoting.transport.jgroups.JGroupsTransport.processMessage(JGroupsTransport.java:1302)
    at [email protected]//org.infinispan.remoting.transport.jgroups.JGroupsTransport.access$300(JGroupsTransport.java:131)
    at [email protected]//org.infinispan.remoting.transport.jgroups.JGroupsTransport$ChannelCallbacks.up(JGroupsTransport.java:1445)
    at [email protected]//org.jgroups.JChannel.up(JChannel.java:784)
    at [email protected]//org.jgroups.fork.ForkProtocolStack.up(ForkProtocolStack.java:135)
    at [email protected]//org.jgroups.stack.Protocol.up(Protocol.java:306)
    at [email protected]//org.jgroups.protocols.FORK.up(FORK.java:142)
    at [email protected]//org.jgroups.protocols.FRAG3.up(FRAG3.java:160)
    at [email protected]//org.jgroups.protocols.FlowControl.up(FlowControl.java:351)
    at [email protected]//org.jgroups.protocols.FlowControl.up(FlowControl.java:359)
    at [email protected]//org.jgroups.protocols.pbcast.GMS.up(GMS.java:868)
    at [email protected]//org.jgroups.protocols.pbcast.STABLE.up(STABLE.java:243)
    at [email protected]//org.jgroups.protocols.UNICAST3.deliverMessage(UNICAST3.java:1049)
    at [email protected]//org.jgroups.protocols.UNICAST3.addMessage(UNICAST3.java:772)
    at [email protected]//org.jgroups.protocols.UNICAST3.handleDataReceived(UNICAST3.java:753)
    at [email protected]//org.jgroups.protocols.UNICAST3.up(UNICAST3.java:405)
    at [email protected]//org.jgroups.protocols.pbcast.NAKACK2.up(NAKACK2.java:592)
    at [email protected]//org.jgroups.protocols.VERIFY_SUSPECT.up(VERIFY_SUSPECT.java:132)
    at [email protected]//org.jgroups.protocols.FailureDetection.up(FailureDetection.java:186)
    at [email protected]//org.jgroups.protocols.FD_SOCK.up(FD_SOCK.java:254)
    at [email protected]//org.jgroups.protocols.MERGE3.up(MERGE3.java:281)
    at [email protected]//org.jgroups.protocols.Discovery.up(Discovery.java:300)
    at [email protected]//org.jgroups.protocols.TP.passMessageUp(TP.java:1385)
    at [email protected]//org.jgroups.util.SubmitToThreadPool$SingleMessageHandler.run(SubmitToThreadPool.java:87)
    at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
    at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
    at [email protected]//org.jboss.as.clustering.context.ContextReferenceExecutor.execute(ContextReferenceExecutor.java:49)
    at [email protected]//org.jboss.as.clustering.context.ContextualExecutor$1.run(ContextualExecutor.java:70)
    at java.base/java.lang.Thread.run(Thread.java:834)
Caused by: javax.transaction.InvalidTransactionException: WFTXN0002: Transaction is not a supported instance: TransactionImpl{xid=Xid{formatId=2, globalTransactionId=0000000000000001,branchQualifier=0000000000000001}, status=ACTIVE}
    at [email protected]//org.wildfly.transaction.client.ContextTransactionManager.resume(ContextTransactionManager.java:148)
    at [email protected]//org.infinispan.transaction.impl.TransactionTable.enlist(TransactionTable.java:219)
    ... 71 more

 

 

 

Upvotes: 0

Views: 428

Answers (1)

pruivo
pruivo

Reputation: 1334

It is a bug. Created: https://issues.redhat.com/browse/ISPN-12798

Thanks for the report.

Upvotes: 0

Related Questions