Tendis
Tendis copied to clipboard
故障节点手动重启失败
使用2.3.4-rocksdb-v5.13.4 release包在同一台机上,搭建三主三从服务。
主节点 从节点 51003 51004 51005 51006 51007 51008
使用shell脚本一直向集群里写数据,然后使用kill -9杀死51005端口的进程后,51006成为主节点,51005下线。现在手动重启51005,一直重启不成功。
shell脚本
#!/bin/bash
a=1
while(( $a<=1000000 ))
do
./redis-cli -c -p 51003 -a 123456 set abcde$a ddddd$a
let "a++"
done
重启日志如下: I0716 19:00:47.346467 25729 network.cpp:185] NetworkAsio::prepare ip:127.0.0.1 port:51006 E0716 19:00:47.346581 25729 server_entry.cpp:539] ServerEntry::startup failed, _network->prepare:-ERR:1,msg:bind: Address already in use ip:127.0.0.1 port:51006 F0716 19:00:47.346719 25729 main.cpp:135] server startup failed:-ERR:1,msg:bind: Address already in use
使用如下命令查看51006端口情况
sudo netstat -tn |grep 51006
tcp 0 0 127.0.0.1:51006 127.0.0.1:51003 TIME_WAIT
tcp 0 0 127.0.0.1:51006 127.0.0.1:51007 TIME_WAIT
该问题能重现,屡试不爽
目前需要把写数据的脚本关掉后,才能拉起,后续我们会对这个问题做优化