redis.clients.jedis.exceptions.JedisConnectionException: Unknown reply: 5

Spring JIRA | Mark Paluch | 8 months ago
tip
Your exception is missing from the Samebug knowledge base.
Here are the best solutions we found on the Internet.
Click on the to mark the helpful solution and get rewards for you help.
  1. 0

    The concurrent use of {{SCAN}} and iteration over the resulting {{Cursor}} causes various Exceptions using the Jedis Driver. Test case: https://gist.github.com/mp911de/327cb876117bc1d74049aff25e5509cb {code} redis.clients.jedis.exceptions.JedisConnectionException: Unknown reply: 5 at redis.clients.jedis.Protocol.process(Protocol.java:154) at redis.clients.jedis.Protocol.processMultiBulkReply(Protocol.java:196) at redis.clients.jedis.Protocol.process(Protocol.java:147) at redis.clients.jedis.Protocol.processMultiBulkReply(Protocol.java:196) at redis.clients.jedis.Protocol.process(Protocol.java:147) at redis.clients.jedis.Protocol.read(Protocol.java:205) at redis.clients.jedis.Connection.readProtocolWithCheckingBroken(Connection.java:297) at redis.clients.jedis.Connection.getRawObjectMultiBulkReply(Connection.java:242) at redis.clients.jedis.Connection.getObjectMultiBulkReply(Connection.java:248) at redis.clients.jedis.BinaryJedis.hscan(BinaryJedis.java:3300) at org.springframework.data.redis.connection.jedis.JedisConnection$5.doScan(JedisConnection.java:3437) {code} {code} java.lang.ClassCastException: [B cannot be cast to java.util.List at redis.clients.jedis.Connection.getRawObjectMultiBulkReply(Connection.java:242) at redis.clients.jedis.Connection.getObjectMultiBulkReply(Connection.java:248) at redis.clients.jedis.BinaryJedis.hscan(BinaryJedis.java:3300) at org.springframework.data.redis.connection.jedis.JedisConnection$5.doScan(JedisConnection.java:3437) {code} This issue gets only visible if: 1. Multiple threads try to use the {{SCAN}} command and iterate over the resulting {{Cursor}} 2. There is enough data to keep the iteration busy The reason is that the resulting {{Cursor}} s hold a reference to the connection that was allocated during the {{.scan()}} invocation. {{.scan()}} allocates a connection but then it releases the connection back and so can multiple {{Cursors}} in different {{Thread}} s share the same Jedis connection.

    Spring JIRA | 8 months ago | Mark Paluch
    redis.clients.jedis.exceptions.JedisConnectionException: Unknown reply: 5
  2. 0

    orca and front50 connect exception when create app or query app

    GitHub | 4 months ago | wangchangjian
    redis.clients.jedis.exceptions.JedisConnectionException: Unexpected end of stream.
  3. Speed up your debug routine!

    Automated exception search integrated into your IDE

    Root Cause Analysis

    1. redis.clients.jedis.exceptions.JedisConnectionException

      Unknown reply: 5

      at redis.clients.jedis.Protocol.process()
    2. Jedis
      BinaryJedis.hscan
      1. redis.clients.jedis.Protocol.process(Protocol.java:154)
      2. redis.clients.jedis.Protocol.processMultiBulkReply(Protocol.java:196)
      3. redis.clients.jedis.Protocol.process(Protocol.java:147)
      4. redis.clients.jedis.Protocol.processMultiBulkReply(Protocol.java:196)
      5. redis.clients.jedis.Protocol.process(Protocol.java:147)
      6. redis.clients.jedis.Protocol.read(Protocol.java:205)
      7. redis.clients.jedis.Connection.readProtocolWithCheckingBroken(Connection.java:297)
      8. redis.clients.jedis.Connection.getRawObjectMultiBulkReply(Connection.java:242)
      9. redis.clients.jedis.Connection.getObjectMultiBulkReply(Connection.java:248)
      10. redis.clients.jedis.BinaryJedis.hscan(BinaryJedis.java:3300)
      10 frames
    3. Spring Data Redis
      JedisConnection$5.doScan
      1. org.springframework.data.redis.connection.jedis.JedisConnection$5.doScan(JedisConnection.java:3437)
      1 frame