redis.clients.jedis.exceptions.JedisNoReachableClusterNodeException: No reachable node in cluster
1.前提介绍redis: 5.0.0版本jdk:1.8之前还好着的,今天重新ci部署发现项目报错了2.报错详细堆栈Caused by: redis.clients.jedis.exceptions.JedisNoReachableClusterNodeException: No reachable node in clusterat redis.clients.jedis.JedisSlotBas
·
1.前提介绍
redis: 5.0.0版本
jdk:1.8
之前还好着的,今天重新ci部署发现项目报错了
2.报错详细堆栈
Caused by: redis.clients.jedis.exceptions.JedisNoReachableClusterNodeException: No reachable node in cluster
at redis.clients.jedis.JedisSlotBasedConnectionHandler.getConnection(JedisSlotBasedConnectionHandler.java:57)
at redis.clients.jedis.JedisSlotBasedConnectionHandler.getConnectionFromSlot(JedisSlotBasedConnectionHandler.java:74)
at redis.clients.jedis.JedisClusterCommand.runWithRetries(JedisClusterCommand.java:116)
at redis.clients.jedis.JedisClusterCommand.run(JedisClusterCommand.java:31)
at redis.clients.jedis.JedisCluster.hincrBy(JedisCluster.java:444)
at MonitorAdvice$$anonfun$main$1$$anonfun$apply$5$$anonfun$apply$6.apply(MonitorAdvice.scala:96)
at MonitorAdvice$$anonfun$main$1$$anonfun$apply$5$$anonfun$apply$6.apply(MonitorAdvice.scala:95)
at scala.collection.Iterator$class.foreach(Iterator.scala:893)
at org.apache.spark.util.CompletionIterator.foreach(CompletionIterator.scala:26)
at MonitorAdvice$$anonfun$main$1$$anonfun$apply$5.apply(MonitorAdvice.scala:95)
at MonitorAdvice$$anonfun$main$1$$anonfun$apply$5.apply(MonitorAdvice.scala:93)
at org.apache.spark.rdd.RDD$$anonfun$foreachPartition$1$$anonfun$apply$29.apply(RDD.scala:926)
at org.apache.spark.rdd.RDD$$anonfun$foreachPartition$1$$anonfun$apply$29.apply(RDD.scala:926)
at org.apache.spark.SparkContext$$anonfun$runJob$5.apply(SparkContext.scala:2069)
at org.apache.spark.SparkContext$$anonfun$runJob$5.apply(SparkContext.scala:2069)
at org.apache.spark.scheduler.ResultTask.runTask(ResultTask.scala:87)
at org.apache.spark.scheduler.Task.run(Task.scala:108)
3.解决思路
3.1 查看集群是否正常
- redis-cli 连接上集群
- 输入
cluster info
命令 - 我的集群状态是ok
3.2 查看最近代码提交
查看最近与redis相关的代码提交,发现了如下
伪代码:
JedisCluster jedisCluster = ......
.....do something .....
jedisCluster.close(); // 集群的连接不需要手动释放,集群自动释放
发现问题,注释掉jedisCluster.close()
重启项目,解决问题。
更多推荐
已为社区贡献2条内容
所有评论(0)