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

Eviction get stuck with <off-heap> configuration and optimistic transactions

    XMLWordPrintable

Details

    • Bug
    • Resolution: Done
    • Major
    • 10.0.0.CR3, 9.4.17.Final
    • None
    • None
    • None
    • Hide

      Configuration:
      <distributed-cache name="ExpirationCache">
      <locking isolation="READ_COMMITTED" striping="false"/>
      <transaction mode="NON_XA" locking="OPTIMISTIC"/>
      <memory>
      <off-heap eviction="COUNT" size="120"/>
      </memory>
      <expiration lifespan="60000" interval="-1"/>
      </distributed-cache>

      Simple HotRod remote client to put an entry every second or so

      Show
      Configuration: <distributed-cache name="ExpirationCache"> <locking isolation="READ_COMMITTED" striping="false"/> <transaction mode="NON_XA" locking="OPTIMISTIC"/> <memory> <off-heap eviction="COUNT" size="120"/> </memory> <expiration lifespan="60000" interval="-1"/> </distributed-cache> Simple HotRod remote client to put an entry every second or so

    Description

      If the cache is configured as followed adding entries every second will end up in an unresponsive server.
      The client will stop after 120sec (eviction count reached) with

      Exception in thread "main" org.infinispan.client.hotrod.exceptions.TransportException:: java.net.SocketTimeoutException: PutOperation

      {ExpirationCache, key=[B0x033E17323031392D..[26], value=[B0x033F280058585858..[10244], flags=4} timed out after 60000 ms
      at org.infinispan.client.hotrod.impl.Util.rewrap(Util.java:54)
      at org.infinispan.client.hotrod.impl.Util.await(Util.java:27)
      at org.infinispan.client.hotrod.impl.RemoteCacheImpl.put(RemoteCacheImpl.java:335)
      at org.infinispan.client.hotrod.impl.RemoteCacheSupport.put(RemoteCacheSupport.java:129)
      at org.infinispan.wfink.hotrod.client.HotRodConstantLoadExpirationClient.putWithExpiration(HotRodConstantLoadExpirationClient.java:48)
      at org.infinispan.wfink.hotrod.client.HotRodConstantLoadExpirationClient.testLoop(HotRodConstantLoadExpirationClient.java:84)
      at org.infinispan.wfink.hotrod.client.HotRodConstantLoadExpirationClient.main(HotRodConstantLoadExpirationClient.java:160)
      Caused by: java.net.SocketTimeoutException: PutOperation{ExpirationCache, key=[B0x033E17323031392D..[26], value=[B0x033F280058585858..[10244], flags=4}

      timed out after 60000 ms
      at org.infinispan.client.hotrod.impl.operations.HotRodOperation.run(HotRodOperation.java:172)
      at io.netty.util.concurrent.PromiseTask$RunnableAdapter.call(PromiseTask.java:38)
      at io.netty.util.concurrent.ScheduledFutureTask.run(ScheduledFutureTask.java:127)
      at io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:163)
      at io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:404)
      at io.netty.channel.epoll.EpollEventLoop.run(EpollEventLoop.java:322)
      at io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:884)
      at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
      at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
      at java.lang.Thread.run(Thread.java:748)

      Attachments

        Issue Links

          Activity

            People

              wburns@redhat.com Will Burns
              rhn-support-wfink Wolf Fink
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: