| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
No functional changes, just getting rid of some unnecessary overhead.
* Get rid of the extra TargetedBatchSizeMap during write command processing
* Do not use pointers in the write commands error tracking
* Remove unused code from the commands parsing
* Get rid of unused code from the write commands tests
* Make the write commands targeter return actual ShardEndpoint(s) instead of populating arrays of pointers. This saves both on memory allocations and makes the code simpler to follow.
(cherry picked from commit 890051d8166e668442aff70cfcde3cb71ae6115f)
(cherry picked from commit 10e3ce2d905ca3afc1e5949da2daa3353740171a)
(cherry picked from commit 98f30b75b31c54464d5a907f435c15121a6c5353)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
ScopedCollectionMetadata outside of MetadataManager
Contains the combined backport of multiple commits listed below.
SERVER-31056 Cleanup MetadataManager and CollectionMetadata
No functional changes, only cleanup to improve readability.
* Removes unused code
* Improve comments
* Hide functionality, which doesn't need to be public
(cherry picked from commit 88fa04b3791d1e53444601432677bb0cf86dc293)
SERVER-31056 Make CollectionMetadata immutable
It shouldn't contain state internal to the metadata manager.
(cherry picked from commit b732abe6b1295740c3a5799c5903f84cd1857347)
SERVER-31056 Remove usages of ScopedCollectionMetadata default constructor
(cherry picked from commit 95e95613412c33b52bb8a514751550c2447526d4)
SERVER-31056 Remove all usages of the ScopedCollectionMetadata default constructor
With this commit, only the MetadataManager is allowed to instantiate
empty ScopedCollectionMetadata objects.
(cherry picked from commit 762765c80b005375c3c3b893772c7284271598ea)
SERVER-31056 Remove the KeyRange type from non-test code
(cherry picked from commit d5be73dbe4d28211994746dc1f5b47fb840ccdbd)
SERVER-31056 Do not uassert with code StaleConfig
The StaleConfig error code is interpreted in a special way and it
requires the presence of StaleConfigException. Because of this we should
never uassert with it directly.
(cherry picked from commit 4fcaef90b1ca91b4806bace87da568565d5633c9)
|
| |
|
|
|
|
| |
ShardingState.
|
| |
|
| |
|
|
|
|
| |
CollectionMetadata
|
|
|
|
|
|
|
| |
This change gets rid of the MetadataLoader in place of using the
CatalogCache for loading chunk metadata on shards. This ensures that the
same concurrency control and rate limiting applies on mongos and mongod
and obviates the need for having different kinds of ChunkDiffer.
|
|
|
|
|
| |
This removes many of the remaining uses of the deprecated
`OwnedPointerVector` type.
|
| |
|
|
|
|
|
|
| |
This change makes the collection metadata on the shard also include the
chunk version and makes the splitChunk and moveChunk commands use it when
checking for consistency.
|
|
|
|
|
| |
No functional changes, just getting rid of some unused code and tightening
assertions.
|
| |
|
|
|
|
|
|
| |
migration
Also introduces a failpoint and js test to exercise the race condition.
|
|
|
|
|
| |
This change rewrites the collection metadata refresh mechanism and puts it
entirely under the metadata manager.
|
| |
|
| |
|
|
|
|
|
| |
Get rid of the out parameter and make them use invariant plus a failed
status.
|
|
|
|
|
|
| |
The clonePlusChunk method is only used for testing purposes, so there is
no need for it to uassert. Add invariands and remove an unnecessary out
parameter.
|
|
|
|
| |
This reverts commit 69e76a1c722dc869e5e49e388298896460a173b8.
|
|
|
|
|
|
| |
The clonePlusChunk method is only used for testing purposes, so there is
no need for it to uassert. Add invariands and remove an unnecessary out
parameter.
|
|
|
|
|
|
| |
Moves the code, which manipulates the pending chunk data to reside under
the migration destination manager instead of the global sharding state and
makes it use the collection sharding state instead of the global map.
|
|
|
|
|
|
| |
Moves the shard version checking during move chunk to happen at the time
of metadata clone instead of being decided in advance and tightens the
associated assertions.
|
|
Moves the metadata management code specific to mongod under the mongo/db
directory along with its tests.
|