diff options
author | Esha Maharishi <esha.maharishi@10gen.com> | 2015-09-29 19:02:18 -0400 |
---|---|---|
committer | Esha Maharishi <esha.maharishi@10gen.com> | 2015-09-29 19:03:41 -0400 |
commit | 1f34fa3204a4212ee724c330331bdef7ad3a4c44 (patch) | |
tree | daf7c602f2c544fa481c387b14f17a08e992eb48 /src | |
parent | de6eab9a60f9643696b86621d008e2a22852a1b9 (diff) | |
download | mongo-1f34fa3204a4212ee724c330331bdef7ad3a4c44.tar.gz |
SERVER-20653 make default distributed lock timeout for dropCollection 2 seconds
Diffstat (limited to 'src')
-rw-r--r-- | src/mongo/s/catalog/legacy/catalog_manager_legacy.cpp | 4 | ||||
-rw-r--r-- | src/mongo/s/catalog/replset/catalog_manager_replica_set.cpp | 4 |
2 files changed, 6 insertions, 2 deletions
diff --git a/src/mongo/s/catalog/legacy/catalog_manager_legacy.cpp b/src/mongo/s/catalog/legacy/catalog_manager_legacy.cpp index 1d9596f4f8e..10ecc61f927 100644 --- a/src/mongo/s/catalog/legacy/catalog_manager_legacy.cpp +++ b/src/mongo/s/catalog/legacy/catalog_manager_legacy.cpp @@ -555,7 +555,9 @@ Status CatalogManagerLegacy::dropCollection(OperationContext* txn, const Namespa LOG(1) << "dropCollection " << ns << " started"; // Lock the collection globally so that split/migrate cannot run - auto scopedDistLock = getDistLockManager()->lock(ns.ns(), "drop"); + const stdx::chrono::seconds waitFor(2); + const stdx::chrono::milliseconds lockTryInterval(500); + auto scopedDistLock = getDistLockManager()->lock(ns.ns(), "drop", waitFor, lockTryInterval); if (!scopedDistLock.isOK()) { return scopedDistLock.getStatus(); } diff --git a/src/mongo/s/catalog/replset/catalog_manager_replica_set.cpp b/src/mongo/s/catalog/replset/catalog_manager_replica_set.cpp index d38932caae0..9209f50f73a 100644 --- a/src/mongo/s/catalog/replset/catalog_manager_replica_set.cpp +++ b/src/mongo/s/catalog/replset/catalog_manager_replica_set.cpp @@ -449,7 +449,9 @@ Status CatalogManagerReplicaSet::dropCollection(OperationContext* txn, const Nam LOG(1) << "dropCollection " << ns << " started"; // Lock the collection globally so that split/migrate cannot run - auto scopedDistLock = getDistLockManager()->lock(ns.ns(), "drop"); + const stdx::chrono::seconds waitFor(2); + const stdx::chrono::milliseconds lockTryInterval(500); + auto scopedDistLock = getDistLockManager()->lock(ns.ns(), "drop", waitFor, lockTryInterval); if (!scopedDistLock.isOK()) { return scopedDistLock.getStatus(); } |