Uploaded image for project: 'Solr'
  1. Solr
  2. SOLR-16438

Shard split should be able to set preferred leaders on other replicas

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Reopened
    • Major
    • Resolution: Abandoned
    • None
    • None
    • None
    • None

    Description

      Currently, shard split always create a first replica for each sub-shard on the current host. Then it creates other replicas and their corresponding sub-shards are in RECOVERY state. The effect is that the first replica (on the current host) is always the leader, meaning that if the sub-shards are split themselves, their sub-sub-shards leaders are also on the same host.
      This can lead to very unbalanced situation where the same host is the leader for a whole set of shards.

      A solution to distribute evenly the leaders is to flag some other replicas with the preferredLeader property during the split. Then a rebalance-leaders command can elect the appropriate leaders. If we do that for each split, then all the sub-shards have their leaders correctly balanced.

      To go further, we can improve CollectionsHandler#CollectionOperation to support combined operations. That way a CollectionOperation#SPLITSHARD_OP can trigger a split op, then a wait for split completion op, and then a rebalance leaders op.

      Attachments

        Issue Links

          Activity

            People

              broustant Bruno Roustant
              broustant Bruno Roustant
              Votes:
              0 Vote for this issue
              Watchers:
              6 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Time Tracking

                  Estimated:
                  Original Estimate - Not Specified
                  Not Specified
                  Remaining:
                  Remaining Estimate - 0h
                  0h
                  Logged:
                  Time Spent - 1.5h
                  1.5h