Don't use CLUSTER_COORDINATION
to deserialize incoming cluster states
#106352
Labels
>bug
:Distributed/Cluster Coordination
Cluster formation and cluster state publication, including cluster membership and fault detection.
Team:Distributed
Meta label for distributed team
Today we deserialize a cluster state received from the master on the
CLUSTER_COORDINATION
thread:elasticsearch/server/src/main/java/org/elasticsearch/cluster/coordination/PublicationTransportHandler.java
Lines 106 to 113 in df82022
I suspect there's no good reason to do this work here, we're not using
Coordinator#mutex
until we callacceptState
, and for humongous cluster states this work might block other cluster coordination activity for multiple minutes. In particular, if we just joined a cluster then we need to update the term in theFollowersChecker
which happens on the slow path throughhandleFollowerCheck
, and that has to happen within 30s to avoid the node being dropped from the cluster again.The text was updated successfully, but these errors were encountered: