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 2021/08/16 03:52:00 UTC
[jira] [Created] (IOTDB-1568) [Distributed] SendHeartbeat may be
blocked by client reconnection
Eric Pai created IOTDB-1568:
-------------------------------
Summary: [Distributed] SendHeartbeat may be blocked by client reconnection
Key: IOTDB-1568
URL: https://issues.apache.org/jira/browse/IOTDB-1568
Project: Apache IoTDB
Issue Type: Improvement
Components: Cluster
Reporter: Eric Pai
See the implemention HeartbeatThread.sendHeartbeatSync:
For a given node, the heartbeat sent process contains two steps:
# Acquire a client instance from the syncHeartbeatClientPool(SyncClientPool)
# Submit the sent request procedure to a thread pool to execute in parallel.
However, if the node is offline but the status recorded in local is actived, step 1 will block in trying to establish the TCP connection until connection timeout. This will block the following heartbeat broadcast, and some followers will not receive heartbeat in time, thus a new but unnecessary election will start. The whole cluster may be in an unstable status.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)