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

Locks not released when committing a transaction which contains explicit locks but no modifications

    Details

    • Steps to Reproduce:
      Hide

      Run the attached unit test, errors will be printed on STDERR.

      Show
      Run the attached unit test, errors will be printed on STDERR.
    • Workaround:
      Workaround Exists
    • Workaround Description:
      Hide

      Make sure the transaction makes at least 1 update.

      Show
      Make sure the transaction makes at least 1 update.
    • Estimated Difficulty:
      High

      Description

      When run the attached unit test, following exception occurs in the first several loops.

      2010-10-19 16:36:19,739 INFO [org.infinispan.factories.ComponentRegistry](main)- Infinispan version: Infinispan 'Pagoa' 4.2.0.ALPHA3

      2010-10-19 16:36:35,880 ERROR [org.infinispan.interceptors.InvocationContextInterceptor](Thread-4)- Execution error:

      org.infinispan.util.concurrent.TimeoutException: Timed out waiting for valid responses!

      at org.infinispan.remoting.transport.jgroups.JGroupsTransport.invokeRemotely(JGroupsTransport.java:421)

      at org.infinispan.remoting.rpc.RpcManagerImpl.invokeRemotely(RpcManagerImpl.java:100)

      at org.infinispan.remoting.rpc.RpcManagerImpl.invokeRemotely(RpcManagerImpl.java:124)

      at org.infinispan.remoting.rpc.RpcManagerImpl.invokeRemotely(RpcManagerImpl.java:229)

      at org.infinispan.remoting.rpc.RpcManagerImpl.invokeRemotely(RpcManagerImpl.java:216)

      at org.infinispan.interceptors.DistributionInterceptor.visitLockControlCommand(DistributionInterceptor.java:214)

      at org.infinispan.commands.control.LockControlCommand.acceptVisitor(LockControlCommand.java:142)

      at org.infinispan.interceptors.base.CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:118)

      at org.infinispan.interceptors.LockingInterceptor.visitLockControlCommand(LockingInterceptor.java:158)

      at org.infinispan.commands.control.LockControlCommand.acceptVisitor(LockControlCommand.java:142)

      at org.infinispan.interceptors.base.CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:118)

      at org.infinispan.interceptors.DeadlockDetectingInterceptor.handleDataCommand(DeadlockDetectingInterceptor.java:89)

      at org.infinispan.interceptors.DeadlockDetectingInterceptor.visitLockControlCommand(DeadlockDetectingInterceptor.java:71)

      at org.infinispan.commands.control.LockControlCommand.acceptVisitor(LockControlCommand.java:142)

      at org.infinispan.interceptors.base.CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:118)

      at org.infinispan.interceptors.base.CommandInterceptor.handleDefault(CommandInterceptor.java:132)

      at org.infinispan.commands.AbstractVisitor.visitLockControlCommand(AbstractVisitor.java:147)

      at org.infinispan.commands.control.LockControlCommand.acceptVisitor(LockControlCommand.java:142)

      at org.infinispan.interceptors.base.CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:118)

      at org.infinispan.interceptors.MarshalledValueInterceptor.visitLockControlCommand(MarshalledValueInterceptor.java:93)

      at org.infinispan.commands.control.LockControlCommand.acceptVisitor(LockControlCommand.java:142)

      at org.infinispan.interceptors.base.CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:118)

      at org.infinispan.interceptors.TxInterceptor.enlistReadAndInvokeNext(TxInterceptor.java:159)

      at org.infinispan.interceptors.TxInterceptor.visitLockControlCommand(TxInterceptor.java:115)

      at org.infinispan.commands.control.LockControlCommand.acceptVisitor(LockControlCommand.java:142)

      at org.infinispan.interceptors.base.CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:118)

      at org.infinispan.interceptors.InvocationContextInterceptor.handleAll(InvocationContextInterceptor.java:87)

      at org.infinispan.interceptors.InvocationContextInterceptor.visitLockControlCommand(InvocationContextInterceptor.java:63)

      at org.infinispan.commands.control.LockControlCommand.acceptVisitor(LockControlCommand.java:142)

      at org.infinispan.interceptors.InterceptorChain.invoke(InterceptorChain.java:273)

      at org.infinispan.CacheDelegate.lock(CacheDelegate.java:297)

      at org.infinispan.CacheDelegate.lock(CacheDelegate.java:290)

      at test.TestSaveMultipleKeys.lockMultipleKeys(TestSaveMultipleKeys.java:100)

      at test.TestSaveMultipleKeys.access$000(TestSaveMultipleKeys.java:13)

      at test.TestSaveMultipleKeys$XThread.run(TestSaveMultipleKeys.java:84)

      ERROR in loop 1: Timed out waiting for valid responses!

        Gliffy Diagrams

          Attachments

            Activity

              People

              • Assignee:
                manik Manik Surtani
                Reporter:
                changgeng Changgeng Li
              • Votes:
                1 Vote for this issue
                Watchers:
                2 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: