Uploaded image for project: 'Documentation'
  1. Documentation
  2. DOCS-9441

Docs for SERVER-26579: Sharding balancer moves chunks to shards whose utilization is above the cluster average

    XMLWordPrintableJSON

Details

    • Icon: Task Task
    • Resolution: Won't Do
    • Icon: Major - P3 Major - P3
    • Server_Docs_20231030
    • None
    • Server

    Description

      Engineering Ticket Description:

      The current sharding balancer policy attempts to move chunks from shards which have more than the cluster-wide per-shard chunk count average to shards which have less than it. However there is a bug due to which chunks will move from highly loaded to less-loaded shard if the difference between the two is sufficiently large.

      In particular consider the following case:

      Shard1 - 1000
      Shard2 - 900
      Shard3 - 900
      Shard4 - 800
      Shard5 - 0
      Shard6 - 0
      

      Intuitively, this should produce only two migrations: Shard1 -> Shard5 and Shard2 -> Shard 6. However it will also cause a third migration from Shard3 -> Shard4, because 900 is above the ideal per-shard chunk number of 600.

      Via kaloian.manassiev
      > With this change, the balancer will now also attempt to move chunks out of shards whose max size setting is exceeded.

      Attachments

        Activity

          People

            ravind.kumar Ravind Kumar (Inactive)
            emily.hall Emily Hall
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:
              46 weeks, 6 days ago