summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorEsha Maharishi <esha.maharishi@10gen.com>2015-09-29 19:02:18 -0400
committerEsha Maharishi <esha.maharishi@10gen.com>2015-09-29 19:03:41 -0400
commit1f34fa3204a4212ee724c330331bdef7ad3a4c44 (patch)
treedaf7c602f2c544fa481c387b14f17a08e992eb48 /src
parentde6eab9a60f9643696b86621d008e2a22852a1b9 (diff)
downloadmongo-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.cpp4
-rw-r--r--src/mongo/s/catalog/replset/catalog_manager_replica_set.cpp4
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();
}