Jedis: java.lang.NumberFormatException: For input string: “6379@13028“
Posted 杨博东的博客
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Jedis: java.lang.NumberFormatException: For input string: “6379@13028“相关的知识,希望对你有一定的参考价值。
报错内容
Caused by: java.lang.NumberFormatException: For input string: "6379@13028"
at java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
at java.lang.Integer.parseInt(Integer.java:580)
at java.lang.Integer.valueOf(Integer.java:766)
at redis.clients.util.ClusterNodeInformationParser.getHostAndPortFromNodeLine(ClusterNodeInformationParser.java:39)
at redis.clients.util.ClusterNodeInformationParser.parse(ClusterNodeInformationParser.java:14)
at redis.clients.jedis.JedisClusterInfoCache.discoverClusterNodesAndSlots(JedisClusterInfoCache.java:50)
at redis.clients.jedis.JedisClusterConnectionHandler.initializeSlotsCache(JedisClusterConnectionHandler.java:39)
...
可能原因
Jedis 2.8
版本及以下引入了ClusterNodeInformationParser
来解析cluster slots
返回值,但是Redis
后续更改了此命令返回值类型,所以解析报错NumberFormatException
。
建议方法
升级 Jedis 版本到2.9.0
。
GitHub相关
https://github.com/redis/jedis/issues/1958
https://issues.apache.org/jira/browse/BAHIR-306
以上是关于Jedis: java.lang.NumberFormatException: For input string: “6379@13028“的主要内容,如果未能解决你的问题,请参考以下文章