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

Add a collectionsAPI call BALANCESLICEUNIQUE

    Details

    • Type: Improvement
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 5.0, 6.0
    • Component/s: None
    • Labels:
      None

      Description

      Another sub-task for SOLR-6491. The ability to assign a property on a node-by-node basis is nice, but tedious to get right for a sysadmin, especially if there are, say, 100s of nodes hosting a system. This JIRA would essentially provide an automatic mechanism for assigning a property. This particular command simply changes the cluster state, it doesn't do anything like re-assign functions.

      My idea for this version is fairly limited. You'd have to specify a collection and there would be no attempt to, say, evenly distribute the preferred leader role/property for this collection by looking at other collections. Or by looking at underlying hardware capabilities. Or....

      It would be a pretty simple round-robin assignment. About the only intelligence built in would be to change as few roles/properties as possible. Let's say that the correct number of nodes for this role turned out to be 3. Any node currently having 3 properties for this collection would NOT be changed. Any node having 2 properties would have one added that would be taken from some node with > 3 properties like this.

      This probably needs an optional parameter, something like "includeInactiveNodes=true|false"

      Since this is an arbitrary property, one must specify sliceUnique=true. So for the "preferredLeader" functionality, one would specify something like:
      action=BALANCESLICEUNIQUE&property=preferredLeader&proprety.value=true.

      There are checks in this code that require the preferredLeader to have a t/f value and require that sliceUnique bet true. That said, this can be called on an arbitrary property that has only one such property per slice.

        Attachments

        1. SOLR-6513.patch
          56 kB
          Erick Erickson
        2. SOLR-6513.patch
          54 kB
          Erick Erickson
        3. SOLR-6513.patch
          52 kB
          Erick Erickson
        4. SOLR-6513.patch
          26 kB
          Erick Erickson

          Issue Links

            Activity

              People

              • Assignee:
                erickerickson Erick Erickson
                Reporter:
                erickerickson Erick Erickson
              • Votes:
                0 Vote for this issue
                Watchers:
                7 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: