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

Lock timeout when writing to index caches for the first time

    XMLWordPrintable

Details

    Description

      If multiple puts are done concurrently for the first time in an indexed cache, the QueryInterceptor will bottleneck in the entity class internal registration, causing Timeout exceptions.

      ERROR: ISPN000136: Error executing command PrepareCommand, writing keys [KeyValuePair{key=qci-cache, value=class com.gustavonalle.infinispan.perf.domain.Transaction}]
      org.infinispan.util.concurrent.TimeoutException: ISPN000299: Unable to acquire lock after 10 seconds for key KeyValuePair{key=qci-cache, value=class com.gustavonalle.infinispan.perf.domain.Transaction} and requestor GlobalTransaction:<jedha-4472>:2:remote. Lock is held by GlobalTransaction:<jedha-26225>:1:local
      	at org.infinispan.util.concurrent.locks.impl.DefaultLockManager$KeyAwareExtendedLockPromise.lock(DefaultLockManager.java:238)
      	at org.infinispan.interceptors.locking.AbstractLockingInterceptor.lockAllAndRecord(AbstractLockingInterceptor.java:202)
      	at org.infinispan.interceptors.locking.AbstractTxLockingInterceptor.checkPendingAndLockAllKeys(AbstractTxLockingInterceptor.java:200)
      	at org.infinispan.interceptors.locking.AbstractTxLockingInterceptor.lockAllOrRegisterBackupLock(AbstractTxLockingInterceptor.java:166)
      	at org.infinispan.interceptors.locking.OptimisticLockingInterceptor.visitPrepareCommand(OptimisticLockingInterceptor.java:74)
      	at org.infinispan.commands.tx.PrepareCommand.acceptVisitor(PrepareCommand.java:176)
      

      Attachments

        Issue Links

          Activity

            People

              gfernand@redhat.com Gustavo Fernandes (Inactive)
              gfernand@redhat.com Gustavo Fernandes (Inactive)
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: