You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@iotdb.apache.org by "Eric Pai (Jira)" <ji...@apache.org> on 2022/02/28 08:30:00 UTC

[jira] [Created] (IOTDB-2625) Election deadlock after partition table updating

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)