diff options
Diffstat (limited to 'src/mongo/s/catalog/type_collection.h')
-rw-r--r-- | src/mongo/s/catalog/type_collection.h | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/src/mongo/s/catalog/type_collection.h b/src/mongo/s/catalog/type_collection.h index dd40380453f..cba156013ba 100644 --- a/src/mongo/s/catalog/type_collection.h +++ b/src/mongo/s/catalog/type_collection.h @@ -65,6 +65,7 @@ class StatusWith; * "uuid" : UUID, * "noBalance" : false, * "distributionMode" : "unsharded|sharded", + * "permitMigrations": false * } * */ @@ -165,6 +166,18 @@ public: return _allowBalance.get_value_or(true); } + void setPermitMigrations(bool permit) { + if (permit) { + _permitMigrations = boost::none; + } else { + _permitMigrations = permit; + } + } + + bool getPermitMigrations() const { + return _permitMigrations.get_value_or(true); + } + void setDistributionMode(DistributionMode distributionMode) { _distributionMode = distributionMode; } @@ -206,6 +219,9 @@ private: // Optional whether balancing is allowed for this collection. If missing, implies true. boost::optional<bool> _allowBalance; + + // Optional whether migration is allowed for this collection. If missing, implies true. + boost::optional<bool> _permitMigrations; }; } // namespace mongo |