-
Type: Task
-
Resolution: Fixed
-
Priority: Major - P3
-
Affects Version/s: None
-
Component/s: None
-
None
-
Catalog and Routing
-
Fully Compatible
-
CAR Team 2024-12-23, CAR Team 2025-01-06
-
0
The goal of this ticket is to adjust the balancingEnabled field return by $listClusterCatalog, so that:
- It's false whenever the fields `noBalance` or `permitMigrations` of a collection are blocking the balancer.
- It doesn't depend on the value of the global balancing status.
In addition, we'll add a field called `balancingEnabledReason` to expose the status of `noBalance` and `permitMigration` flags separately.
The format of this new field will be:
balancingEnabledReason: { 'enableBalancing': <true or false>, 'allowMigrations': <true or false> }
- enableBalancing will depend on the `noBalance` field.
- allowMigrations will depend on the `permitMigrations` field.
Note that this is necessary because, currently, a user can enable the balancing of a collection through 2 different ways:
- setAllowMigrations - which will be deprecated soon - this command updates the `permitMigrations` flag.
- configureCollectionBalancing - which introduced the option of enabling the balancing of a coll in v8.1 - this command updates the `noBalance` flag.
- causes
-
SERVER-98841 agg_list_cluster_catalog_sharding_fields.js test should not leave collections with permitMigrations=false
- Closed
- is related to
-
SERVER-98527 Complete TODO listed in SERVER-97215
- Closed