WRONGTYPE исключение при попытке установить строку в карте (джедай) - PullRequest
0 голосов
/ 26 июня 2018

Я получаю JedisDataException при попытке установить строку в качестве значения, и я не могу понять, где я делаю ошибку, если я делаю ее вообще. Версия Jedis 2.9.0 (я верю, что это последняя версия).

redis.clients.jedis.exceptions.JedisDataException: WRONGTYPE Operation against a key holding the wrong kind of value
    at redis.clients.jedis.Protocol.processError(Protocol.java:127) ~[?:?]
    at redis.clients.jedis.Protocol.process(Protocol.java:161) ~[?:?]
    at redis.clients.jedis.Protocol.read(Protocol.java:215) ~[?:?]
    at redis.clients.jedis.Connection.readProtocolWithCheckingBroken(Connection.java:340) ~[?:?]
    at redis.clients.jedis.Connection.getIntegerReply(Connection.java:265) ~[?:?]
    at redis.clients.jedis.Jedis.hset(Jedis.java:658) ~[?:?]
    at net.ferskfisk.lobby.database.mongodb.Mongo$3.run(Mongo.java:174) ~[?:?]
    at org.bukkit.craftbukkit.v1_12_R1.scheduler.CraftTask.run(CraftTask.java:71) ~[1.12.jar:git-Spigot-3d850ec-809c399]
    at org.bukkit.craftbukkit.v1_12_R1.scheduler.CraftAsyncTask.run(CraftAsyncTask.java:52) [1.12.jar:git-Spigot-3d850ec-809c399]
    at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) [?:?]
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) [?:?]
    at java.lang.Thread.run(Unknown Source) [?:?]

                String name = "name";
                String string = "test";
                Jedis jedis = null;
                try {
                    jedis = Database.getInstance().getRedis().getJedisPool().getResource();
                    jedis.auth("password");
                    jedis.hset(name, "doc", string);
                } finally {
                    if(jedis != null)
                        jedis.close();
                }

1 Ответ

0 голосов
/ 26 июня 2018

При отсутствии трассировки стека наиболее вероятным объяснением является то, что у вас уже есть ключ с именем name, а это не хеш.

...