Eric Pai created IOTDB-2625:
-------------------------------
Summary: Election deadlock after partition table updating
Key: IOTDB-2625
URL: https://issues.apache.org/jira/browse/IOTDB-2625
Project: Apache IoTDB
Issue Type: Bug
Components: Core/Cluster
Affects Versions: 0.12.4, master branch, 0.13.0
Reporter: Eric Pai
Assignee: Eric Pai
Fix For: master branch, 0.13.0, 0.12.5
See the codes
[https://github.com/apache/iotdb/blob/92ad9f24b2d91490d532e0c829f19becad2c648f/cluster/src/main/java/org/apache/iotdb/cluster/server/service/DataGroupEngine.java#L361-L395]
When a new paritition table comes, the raft node will stop all the
DataGroupMembers and check if the previous stopped one is still in the new
partition table. If so, it will start it again.
There's a field called 'skipElection' controlling the ability to start an
election if needed. When the RaftMember stops, it will be set to 'true'.
However, if a stopped RaftMember is started again, the field still remains
'true', not 'false', which causing this raft node not launching election any
more.
--
This message was sent by Atlassian Jira
(v8.20.1#820001)