[
https://issues.apache.org/jira/browse/SOLR-17895?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18018196#comment-18018196
]
Paul McArthur commented on SOLR-17895:
--------------------------------------
One solution identified to resolve this is to change the ZNode type from
persistent nodes to container nodes, allowing ZooKeeper to remove them
automatically when they no longer have children.
The solution may require testing and changes around re-creating the lock paths
when creating the ephemeral lock node, should an error be returned from
ZooKeeper that the path no longer exists.
> Persistent ZNodes are leaked when running Solr Cloud with distributed
> collection commands
> -----------------------------------------------------------------------------------------
>
> Key: SOLR-17895
> URL: https://issues.apache.org/jira/browse/SOLR-17895
> Project: Solr
> Issue Type: Bug
> Components: SolrCloud
> Affects Versions: 9.0, 10.0
> Reporter: Paul McArthur
> Priority: Minor
>
> When a collection command is executed in distributed mode
> (DistributedCollectionCommandRunner), an ephemeral ZNode is created to lock
> the collection, shard or replica that prevents other commands from executing
> concurrently and potentially conflicting with each other.
>
> The ephemeral nodes are created in a tree structure under
> {_}*distributedapi/collectionlocks*{_}, with persistent znodes created for
> - \{collName}
> - \{collName}/Locks
> - \{collName}/_\{shard}
> - \{collName}/_\{shard}/Locks
> - \{collName}/_\{shard}/_replica
> These nodes are never deleted from ZooKeeper, even when the collection is
> deleted, and can therefore accrue over time.
> In our specific case, we have accumulated many thousands of these nodes over
> a few months. While there appears to be no direct impact on performance,
> these nodes should nonetheless be removed when they are no longer required.
>
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]