Jerry created SOLR-18298:
----------------------------
Summary: ZkController.onReconnect Is Triggered Unnecessarily
Key: SOLR-18298
URL: https://issues.apache.org/jira/browse/SOLR-18298
Project: Solr
Issue Type: Improvement
Components: SolrCloud
Affects Versions: 10.0
Reporter: Jerry
Curator's RECONNECTED event is different from the previous RECONNECTED event.
Before Solr10, the OnReconnect is only triggered after a session expiration and
reconnection.
Check the following
https://github.com/apache/solr/blob/fdb5314279657f7895a90123436d834e81ea3157/solr/solrj-zookeeper/src/java/org/apache/solr/common/cloud/ConnectionManager.java#L165
https://github.com/apache/solr/blob/fdb5314279657f7895a90123436d834e81ea3157/solr/solrj-zookeeper/src/java/org/apache/solr/common/cloud/ConnectionManager.java#L199
But Curator's RECONNECTED event is triggered every time a Solr node is
disconnected from a ZooKeeper instance and reconnected to another
ZooKeeper instance
Therefore, currently ZkController.onReconnect is invoked every time a Solr
node is disconnected from a ZooKeeper instance and reconnected, which is a huge
overhead, especially when we need to rolling restart a ZooKeeper Cluster. It
can take more than 10 minutes for a small Solr cluster to level out.
Similiarly, now ZkController.onDisconnect is triggered just after a
disconnection from a Zookeeper instance. It should only be triggered after a
session expiration.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]