[ https://issues.apache.org/jira/browse/SOLR-16806?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17733154#comment-17733154 ]
ASF subversion and git services commented on SOLR-16806: -------------------------------------------------------- Commit de5d1aaec7d5269ebd60ba8e73f06dc31a98887d in solr's branch refs/heads/main from Houston Putman [ https://gitbox.apache.org/repos/asf?p=solr.git;h=de5d1aaec7d ] SOLR-16806: Create a BalanceReplicas API (#1650) - Introduce BalanceReplicasAPI - Add computeReplicaBalancing() in Assign, and computeBalancing() in PlacementPlugin. The default implementation returns an empty balancePlan (moving no replicas). - Refactor all provided PlacementPlugins, to implement OrderedNodePlacementPlugin, and share a common way of computing placements and balancing. Also fixes SOLR-16816, updating metrics when doing multi-shard/collection placements. > Add a BalanceReplicas API > ------------------------- > > Key: SOLR-16806 > URL: https://issues.apache.org/jira/browse/SOLR-16806 > Project: Solr > Issue Type: Sub-task > Reporter: Houston Putman > Priority: Major > Time Spent: 6h 50m > Remaining Estimate: 0h > > Currently there is no way to move replicas to a new, empty, Solr node, > without manually choosing the replicas yourself, and moving/recreating the > replicas. The logic we would need for this is to choose the best replicas to > move to an empty Solr node, and stop when that Solr node reaches an > "equilibrium" with the rest of the cluster. > This logic is very close to merely balancing the existing replicas across a > given set of nodes. So instead of creating a similar command that solves a > subset of use-cases, it is probably worth it to take a bit more effort and > create the general balance-replicas API to solve all balancing use-cases. > The API would be quite simple. It would be something like {*}POST > "/api/cluster/replicas/balance"{*}, and it would take in a list of nodes: > {"nodes": [ "node1", "node2" ]} > If no nodes were provided in the request body, then Solr would default to > balancing across all data nodes. > I don't see a need to write a V1 API for this. > This requires adding method signatures to the PlacementPlugin, but we can > make them default to a NO-OP, preserving compatibility for existing > custom-plugins. -- This message was sent by Atlassian Jira (v8.20.10#820010) --------------------------------------------------------------------- To unsubscribe, e-mail: issues-unsubscr...@solr.apache.org For additional commands, e-mail: issues-h...@solr.apache.org