summaryrefslogtreecommitdiff
path: root/src/mongo/db/s/migration_source_manager.h
Commit message (Collapse)AuthorAgeFilesLines
* SERVER-40791 Track multi-statement transaction operations for migrations at ↵Blake Oler2019-06-201-0/+5
| | | | commit time
* Revert "SERVER-40791 Track multi-statement transaction operations for ↵Blake Oler2019-06-131-5/+0
| | | | | | migrations at commit time" This reverts commit dfa8658c18142c560447c7bf6f34a6f788593d28.
* SERVER-40791 Track multi-statement transaction operations for migrations at ↵Blake Oler2019-06-121-0/+5
| | | | commit time
* SERVER-40357 expand all calls to MONGO_DISALLOW_COPYINGBilly Donahue2019-03-281-2/+2
| | | | | | | | | | | produced by: hits="$(git grep -n MONGO_DISALLOW_COPYING | cut -d: -f1 )" for f in "$hits"; do sed -i.orig ' s/^\( *\)MONGO_DISALLOW_COPYING(\(.*\));/\1\2(const \2\&) = delete;\n\1\2\& operator=(const \2\&) = delete;/; ' $f done
* SERVER-40264 Change MigrationChunkCloner to be a shared pointer to ↵Blake Oler2019-03-251-7/+7
| | | | synchronize object lifetime across threads
* SERVER-39560 - remove leading blank line on all C++ filesBilly Donahue2019-02-131-1/+0
| | | | | | Remove leading comments that are just stating the filename. Move any file-level comments below the copyright banner. Remove leading blank lines.
* SERVER-38473 Create DatabaseShardingStateLock to ensure concurrency around ↵Blake Oler2019-02-051-1/+1
| | | | DatabaseShardingState usage
* SERVER-38284 Create concurrency lock for CollectionShardingRuntimeBlake Oler2018-12-281-4/+6
|
* SERVER-32198 Split CollectionShardingState::getMetadata into three methodsKaloian Manassiev2018-11-141-0/+2
| | | | | | | | | | | | | o getCurrentMetadataIfKnown - which returns the current filtering metadata if any is available o getMetadataForOperation - which returns the metadata which is required by the current opertion, based on the OperationShardingState o getCurrentMetadata - which returns the currently available filtering metadata (or UNSHARDED if not known) This is in preparation for making getMetadataForOperation/getCurrentMetadata throw StaleShardVersion exception if the metadata has not been loaded yet.
* SERVER-37651 Update header files with new licenseRamon Fernandez2018-10-221-14/+16
|
* SERVER-29908 Move CollectionShardingState under sharding_api_dKaloian Manassiev2018-07-271-4/+4
|
* SERVER-35723 Make the collection critical section into an RAII classjannaerin2018-06-281-0/+2
|
* SERVER-29908 Move OpObserver and MigrationSourceManager logic out of ↵Andy Schwerin2018-04-231-0/+5
| | | | | | | | CollectionShardingState. Makes MigrationSourceManager a decoration on CollectionShardingState, not a member and moves the op observer behavior from CollectionShardingState to free functions in shard_server_op_observer.h/cpp.
* SERVER-29908 Move the migration critical section out of MigrationSourceManagerKaloian Manassiev2018-03-131-25/+1
|
* SERVER-31979 Include chunk migration stats in `moveChunk.commit` changelog ↵jannaerin2018-02-051-0/+3
| | | | entries
* SERVER-32901 Consolidate sharding librariesKaloian Manassiev2018-01-291-1/+1
| | | | | Also gets rid of most usages of the std::string variant of CollectionShardingState::get.
* SERVER-28670 Add sharding CatalogCache and donor metrics to serverStatusKaloian Manassiev2018-01-241-2/+10
| | | | | Includes metrics for refresh, clone and migration critical section duration.
* SERVER-31911 make UUID constructor privateGeert Bosch2018-01-051-1/+3
|
* SERVER-31056 Remove all usages of the ScopedCollectionMetadata default ↵Kaloian Manassiev2017-12-051-6/+4
| | | | | | | constructor With this commit, only the MetadataManager is allowed to instantiate empty ScopedCollectionMetadata objects.
* SERVER-31056 Remove usages of ScopedCollectionMetadata default constructorKaloian Manassiev2017-12-041-11/+8
|
* SERVER-31069 Stop converting SendStaleConfig to RecvStaleConfigMathias Stearn2017-09-131-1/+1
|
* SERVER-29961 Close change notification cursors when a chunk migrates to a ↵Siyuan Zhou2017-09-131-0/+4
| | | | new shard
* SERVER-27597 Delay blocking read operations during the migration critical ↵Kaloian Manassiev2017-06-131-4/+12
| | | | section
* SERVER-27938 Rename all OperationContext variables to opCtxMaria van Keulen2017-03-071-8/+8
| | | | | | This commit is an automated rename of all whole word instances of txn, _txn, and txnPtr to opCtx, _opCtx, and opCtxPtr, respectively in all .cpp and .h files in src/mongo.
* SERVER-22657 Make MigrationChunkClonerSourceLegacy not do host resolutionKaloian Manassiev2016-11-111-1/+10
| | | | | | No functional changes, just a cleanup to move the resolution of the recipient shard's primary out of MigrationChunkClonerSourceLegacy in order to make it simpler for unit-testing.
* SERVER-26593 decrement usage counter in ScopedCollectionMetadata's move ↵Esha Maharishi2016-10-141-4/+2
| | | | constructor
* SERVER-26471 Always incrementally refresh metadata after committing chunk ↵Kaloian Manassiev2016-10-071-4/+13
| | | | | | migration Also introduces a failpoint and js test to exercise the race condition.
* SERVER-22671 adding migration status to serverStatus' sharding sectionDianna Hohensee2016-08-241-0/+7
|
* SERVER-24415 Replace instances of shared_ptr<CollectionMetadata> with ↵Leon Zaruvinsky2016-07-071-7/+8
| | | | ScopedCollectionMetadata
* SERVER-24479 Make 'Notification' class be able to return a valueKaloian Manassiev2016-06-101-40/+4
|
* SERVER-22659 removing _uncommittedMetadata local variableDianna Hohensee2016-05-181-4/+0
|
* SERVER-22656 Componentize MigrationSourceManagerKaloian Manassiev2016-03-231-116/+130
| | | | | | | This change moves the entire chunk migration state machine to be driven by the MigrationSourceManager and abstracts the cloning logic behind an interface called MigrationChunkClonerSource with a default legacy implementation, which uses the existing _migrateClone/_transferMods commands.
* SERVER-22656 Use RAII classes to enter migrationKaloian Manassiev2016-03-181-0/+5
| | | | | | | | | | Adds a RAII-style classes to put a shard into migration mode and acquire distributed lock and adds means to register the migration on the global sharding state. Removes references to the global migration source manager from everywhere but the migration code itself. All others will be referencing it from the collection.
* SERVER-22997 Unify wait for migrate critical section and metadata refreshKaloian Manassiev2016-03-161-13/+40
| | | | | | | | This change gets rid of commands explicitly waiting for critical section establishment and instead makes all operations when they encounter stale version to install a wait object on the OperationContext, which can be used to wait for critical section outside of lock. It also makes refresh to happen outside of lock.
* SERVER-22359 Move op observer hooks to CollectionShardingStateKaloian Manassiev2016-03-071-12/+3
| | | | | | | | Use the CollectionShardingState for notifications from the oplog observer instead of calling into the global ShardingState object. Also gets rid of the threading through of the fromMigrate flags down to the sharding state.
* SERVER-20290 Introduce migration session idDianna Hohensee2016-02-021-5/+12
|
* SERVER-21945 adding testing coverage for inserts/updates during chunk migrationDianna Hohensee2016-01-201-1/+1
|
* SERVER-22057 refactor OpObserver::onUpdate and ↵Dianna Hohensee2016-01-151-4/+4
| | | | MigrationSourceManager::logUpdateOp to directly take the updated document
* SERVER-21899 MigrationSourceManager::logOp refactorDianna Hohensee2016-01-061-6/+29
|
* SERVER-21678 setting fromMigrate flag for deletes in oplogDianna Hohensee2016-01-041-0/+4
|
* SERVER-21382 fixing sharding migration to transfer only document deletions ↵Dianna Hohensee2015-12-221-0/+2
| | | | relevant to the chunk being migrated, not every deletion
* SERVER-19855 Do not perform shard version checking where not necessarySpencer T Brody2015-08-251-2/+3
| | | | This reverts commit 045cd1070cae1e7827255850c2fe35194e48b24e.
* Revert "SERVER-19855 Do not perform shard version checking where not necessary"Benety Goh2015-08-211-3/+2
| | | | This reverts commit 31716d2ae526d82d7d36464f6c9fae8b9f38542f.
* SERVER-19855 Do not perform shard version checking where not necessaryKaloian Manassiev2015-08-211-2/+3
| | | | | | | | | | | The code in RangeDeleter and sharding migration and split uses AutoGetCollectionForRead, which has the side effect of checking for shard version, based on the context. This causes problems in the cases where we are transmitting shard version information as part of the context, in particular during the migration cases. This change gets rid of these checks and replaces them with plain lock retrieval.
* SERVER-18084 Modularize chunk migration state machineKaloian Manassiev2015-07-141-0/+180
* Move the sharding migration destination (receiving side) management to a separate source file * Move the destination thread management to be owned by the destination manager * Move the sharding migration source (donor side) management to a separate source file * Remove the medianKey command since it is noop and not used anywhere No migration logic changes.