Uploaded image for project: 'Core Server'
  1. Core Server
  2. SERVER-36394

mongos should reset chunk size tracking information when autosplit = false or splitvector returns too few split points

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Major - P3
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 3.6.14, 4.0.12, 3.4.23
    • Component/s: Sharding
    • Labels:
    • Backwards Compatibility:
      Fully Compatible
    • Operating System:
      ALL
    • Backport Requested:
      v3.6, v3.4
    • Sprint:
      Sharding 2019-07-15, Sharding 2019-07-29, Sharding 2019-08-12
    • Case:

      Description

      Currently, if the cluster is configured to turn off autosplitting, mongos still tracks the estimated size of each chunk that gets written to through it. This is fine, except that at this line, we refresh the balancer configuration from the config server, and if we don't set the chunk size back to zero, we'll continue to reach this line (because shouldSplit will return true) for every single insert. In other words, once a chunk reaches splitting size and the autosplitter is off, we'll query the config server for every single insert until that chunk is split manually or through some other means. This is unnecessary and hurts performance. We should at least reset the chunk size to zero so we won't try to split it again until many more inserts have been received.

        Attachments

          Issue Links

            Activity

              People

              Assignee:
              matthew.saltz Matthew Saltz
              Reporter:
              matthew.saltz Matthew Saltz
              Participants:
              Votes:
              0 Vote for this issue
              Watchers:
              9 Start watching this issue

                Dates

                Created:
                Updated:
                Resolved: