Невозможно выполнить ключи Redis или метод сканирования для получения ключей по шаблону на сервере Redis с щелкунчиком на нем - PullRequest
0 голосов
/ 20 апреля 2020

Я пытаюсь удалить ключи по шаблону с сервера Redis с помощью Щелкунчика в качестве прокси-сервера, но он показывает ошибку при выполнении jedis.keys, который я использую в своем коде java. Это не позволяет ключи и метод сканирования, который я знаю. Я использую простой метод set, чтобы сделать запись значения ключа в Redis. Так может кто-нибудь предложить какой-нибудь альтернативный метод для извлечения ключей по шаблону из redis?

Stacktrace исключения:

redis.clients.jedis.exceptions.JedisConnectionException: Unexpected end of stream.
    at redis.clients.util.RedisInputStream.ensureFill(RedisInputStream.java:199)
    at redis.clients.util.RedisInputStream.readByte(RedisInputStream.java:40)
    at redis.clients.jedis.Protocol.process(Protocol.java:153)
    at redis.clients.jedis.Protocol.read(Protocol.java:218)
    at redis.clients.jedis.Connection.readProtocolWithCheckingBroken(Connection.java:341)
    at redis.clients.jedis.Connection.getBinaryMultiBulkReply(Connection.java:277)
    at redis.clients.jedis.Jedis.keys(Jedis.java:284)

Значение тайм-аута сервера установлено равным 0, и версия jedis, которой я был использование 2.10.2. Ниже приведен фрагмент кода, который я пытаюсь выполнить:

try {
    Set<String> keys = jedis.keys(pattern);
    jedis.del(keys.toArray(new String[keys.size()]));
} catch(Exception e) {
    log.error("Failed to delete key entry for pattern {0}", pattern);
    throw e;
}
...