[infinispan-issues] [JBoss JIRA] (ISPN-2459) Rollback not preceded by Prepare sent to remote site

Galder Zamarreño (JIRA) jira-events at lists.jboss.org
Tue Dec 11 03:27:19 EST 2012


     [ https://issues.jboss.org/browse/ISPN-2459?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Galder Zamarreño updated ISPN-2459:
-----------------------------------

    Sprint: Beta6

    
> Rollback not preceded by Prepare sent to remote site
> ----------------------------------------------------
>
>                 Key: ISPN-2459
>                 URL: https://issues.jboss.org/browse/ISPN-2459
>             Project: Infinispan
>          Issue Type: Bug
>          Components: Cross-Site Replication, Transactions
>    Affects Versions: 5.2.0.Beta3
>            Reporter: Radim Vansa
>            Assignee: Mircea Markus
>            Priority: Critical
>             Fix For: 5.2.0.Beta6, 5.2.0.Final
>
>
> When a {{TransactionManager.rollback()}} is called under optimistic locking, the {{RollbackCommand}} is sent to the remote site with backup cache. This makes no sense as there are no changes to roll back, and furthermore, the command fails in the remote site as the transaction which is rolled back is not known:
> {code}
> 05:37:00,727 WARN  [org.infinispan.remoting.transport.jgroups.CommandAwareRpcDispatcher] (Incoming-2,global,_edg-perf01-58034:LON) Problems invoking command SingleRpcCommand{cacheName='nycCache', command=RollbackCommand {gtx=GlobalTransaction:<c25cba86-1e90-e190-b101-155e93063c9c[T]>:5:local, cacheName='nycCache', topologyId=-1}}
> org.infinispan.CacheException: Couldn't find a local transaction corresponding to remote transaction GlobalTransaction:<c25cba86-1e90-e190-b101-155e93063c9c[T]>:5:local
>         at org.infinispan.xsite.BackupReceiver$BackupCacheUpdater.completeTransaction(BackupReceiver.java:187)
>         at org.infinispan.xsite.BackupReceiver$BackupCacheUpdater.visitRollbackCommand(BackupReceiver.java:178)
>         at org.infinispan.commands.tx.RollbackCommand.acceptVisitor(RollbackCommand.java:61)
>         at org.infinispan.xsite.BackupReceiver.handleRemoteCommand(BackupReceiver.java:76)
>         at org.infinispan.xsite.BackupReceiverRepositoryImpl.handleRemoteCommand(BackupReceiverRepositoryImpl.java:60)
>         at org.infinispan.remoting.transport.jgroups.CommandAwareRpcDispatcher.executeCommandFromRemoteSite(CommandAwareRpcDispatcher.java:240)
>         at org.infinispan.remoting.transport.jgroups.CommandAwareRpcDispatcher.handle(CommandAwareRpcDispatcher.java:217)
>         at org.jgroups.blocks.RequestCorrelator.handleRequest(RequestCorrelator.java:483)
>         at org.jgroups.blocks.RequestCorrelator.receiveMessage(RequestCorrelator.java:390)
>         at org.jgroups.blocks.RequestCorrelator.receive(RequestCorrelator.java:248)
>         at org.jgroups.blocks.MessageDispatcher$ProtocolAdapter.up(MessageDispatcher.java:604)
>         at org.jgroups.JChannel.up(JChannel.java:670)
>         at org.jgroups.stack.ProtocolStack.up(ProtocolStack.java:1020)
>         at org.jgroups.protocols.relay.RELAY2.deliver(RELAY2.java:420)
>         at org.jgroups.protocols.relay.RELAY2.route(RELAY2.java:316)
>         at org.jgroups.protocols.relay.RELAY2.handleMessage(RELAY2.java:292)
>         at org.jgroups.protocols.relay.RELAY2.handleRelayMessage(RELAY2.java:272)
>         at org.jgroups.protocols.relay.Relayer$Bridge.receive(Relayer.java:214)
>         at org.jgroups.JChannel.invokeCallback(JChannel.java:712)
>         at org.jgroups.JChannel.up(JChannel.java:673)
>         at org.jgroups.stack.ProtocolStack.up(ProtocolStack.java:1020)
>         at org.jgroups.protocols.RSVP.up(RSVP.java:188)
>         at org.jgroups.protocols.FRAG2.up(FRAG2.java:181)
>         at org.jgroups.protocols.FlowControl.up(FlowControl.java:418)
>         at org.jgroups.protocols.FlowControl.up(FlowControl.java:400)
>         at org.jgroups.protocols.pbcast.GMS.up(GMS.java:896)
>         at org.jgroups.protocols.pbcast.STABLE.up(STABLE.java:244)
>         at org.jgroups.protocols.UNICAST2.handleDataReceived(UNICAST2.java:769)
>         at org.jgroups.protocols.UNICAST2.up(UNICAST2.java:414)
>         at org.jgroups.protocols.pbcast.NAKACK2.up(NAKACK2.java:601)
>         at org.jgroups.protocols.FD_SOCK.up(FD_SOCK.java:288)
>         at org.jgroups.protocols.Discovery.up(Discovery.java:359)
>         at org.jgroups.protocols.TP.passMessageUp(TP.java:1293)
>         at org.jgroups.protocols.TP$IncomingPacket.handleMyMessage(TP.java:1856)
>         at org.jgroups.protocols.TP$IncomingPacket.run(TP.java:1829)
>         at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
>         at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
>         at java.lang.Thread.run(Thread.java:662)
> {code}

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira



More information about the infinispan-issues mailing list