sh.stopBalancer()
On this page
Definition
sh.stopBalancer(timeout, interval)
Changed in version 6.1.
Disables the balancer in a sharded cluster.
Starting in MongoDB 6.0.3, automatic chunk splitting is not performed. This is because of balancing policy improvements. Auto-splitting commands still exist, but do not perform an operation.
In MongoDB versions earlier than 6.0.3,
sh.stopBalancer()
also disables auto-splitting for the sharded cluster.Important
mongosh Method
This page documents a
mongosh
method. This is not the documentation for database commands or language-specific drivers, such as Node.js.For the database command, see the
balancerStop
command.For MongoDB API drivers, refer to the language-specific MongoDB driver documentation.
The method can take the following options:
ParameterTypeDescriptiontimeout
integerOptional. Time limit for disabling the balancer.
Defaults to 60000 milliseconds.
interval
integerOptional. The interval (in milliseconds) at which to check if the balancing round has stopped.If you omit both options, MongoDB disables the balancer indefinitely.
Important
Leaving the balancer disabled for extended periods of time can lead to unbalanced shards, which degrade cluster performance. Only disable the balancer if necessary, and ensure that you re-enable the balancer when maintenance is complete.
You can only run
sh.stopBalancer()
on amongos
instance.sh.stopBalancer()
errors if run onmongod
instance.The
mongosh
shell method is a wrapper around thebalancerStop
command.
Behavior
If a balancing round is in progress, the operation waits for balancing to complete.