Uploaded image for project: 'Geode'
  1. Geode
  2. GEODE-9366

Redis SynchronizedStripeExecutor can throw IndexOutOfBoundsException

    XMLWordPrintableJSON

Details

    Description

      Saw the following issue being logged:

      [warn 2021/06/08 08:25:48.005 PDT redisServergemfire1_host1_9978 <GeodeRedisServer-Command-10> tid=0x79] Execution of Redis command HMSET \xac\xed\x00\x05t\x00<spring:session:sessions:c2ad8a8d-b7ad-4857-8293-2e20b448bf65 \xac\xed\x00\x05t\x00\x10lastAccessedTime
       \xac\xed\x00\x05sr\x00\x0ejava.lang.Long;\x8b\xe4\x90\xcc\x8f#\xdf\x02\x00\x01J\x00\x05valuexr\x00\x10java.lang.Number\x86\xac\x95\x1d\x0b\x94\xe0\x8b\x02\x00\x00xp\x00\x00\x01y\xec:\xd0c \xac\xed\x00\x05t\x00\x13maxInactiveInterval \xac\xed\x00\x05sr\x00\x11ja
      va.lang.Integer\x12\xe2\xa0\xa4\xf7\x81\x878\x02\x00\x01I\x00\x05valuexr\x00\x10java.lang.Number\x86\xac\x95\x1d\x0b\x94\xe0\x8b\x02\x00\x00xp\x00\x00\x00< \xac\xed\x00\x05t\x00\x19sessionAttr:Object_214669 \xac\xed\x00\x05t\x00\rObject_214669 \xac\xed\x00\x05t\
      x00\x0ccreationTime \xac\xed\x00\x05sr\x00\x0ejava.lang.Long;\x8b\xe4\x90\xcc\x8f#\xdf\x02\x00\x01J\x00\x05valuexr\x00\x10java.lang.Number\x86\xac\x95\x1d\x0b\x94\xe0\x8b\x02\x00\x00xp\x00\x00\x01y\xec:\xd0c  failed: java.lang.ArrayIndexOutOfBoundsException: -11
      52
      
      [error 2021/06/08 08:25:48.018 PDT redisServergemfire1_host1_9978 <GeodeRedisServer-Command-10> tid=0x79] GeodeRedisServer-Unexpected error handler for [id: 0x7d55de8e, L:/10.32.109.109:21171 - R:/10.32.109.109:39854]
      java.lang.ArrayIndexOutOfBoundsException: -1152
              at org.apache.geode.redis.internal.executor.SynchronizedStripedExecutor.getSync(SynchronizedStripedExecutor.java:56)
              at org.apache.geode.redis.internal.executor.SynchronizedStripedExecutor.execute(SynchronizedStripedExecutor.java:44)
              at org.apache.geode.redis.internal.RegionProvider.execute(RegionProvider.java:136)
              at org.apache.geode.redis.internal.data.RedisDataCommandsFunctionExecutor.stripedExecute(RedisDataCommandsFunctionExecutor.java:48)
              at org.apache.geode.redis.internal.data.RedisHashCommandsFunctionExecutor.hset(RedisHashCommandsFunctionExecutor.java:42)
              at org.apache.geode.redis.internal.executor.hash.HMSetExecutor.executeCommand(HMSetExecutor.java:58)
              at org.apache.geode.redis.internal.RedisCommandType.executeCommand(RedisCommandType.java:353)
              at org.apache.geode.redis.internal.netty.Command.execute(Command.java:178)
              at org.apache.geode.redis.internal.netty.ExecutionHandlerContext.executeCommand(ExecutionHandlerContext.java:330)
              at org.apache.geode.redis.internal.netty.ExecutionHandlerContext.processCommandQueue(ExecutionHandlerContext.java:155)
              at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
              at java.util.concurrent.FutureTask.run(FutureTask.java:266)
              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

              jens.deppe Jens Deppe
              jens.deppe Jens Deppe
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: