diff options
author | Benety Goh <benety@mongodb.com> | 2020-05-15 08:10:12 -0400 |
---|---|---|
committer | Evergreen Agent <no-reply@evergreen.mongodb.com> | 2020-05-15 12:52:48 +0000 |
commit | 285193c88f485e4786d27e27b84658fffb988479 (patch) | |
tree | 138488ebef7395083fb7f612833d1122fb9f0523 | |
parent | 213de387cd53a56faff5d8d221abc479069cd161 (diff) | |
download | mongo-285193c88f485e4786d27e27b84658fffb988479.tar.gz |
SERVER-48093 plan_cache_drop_database.js should catch DatabaseDropPending errors
-rw-r--r-- | jstests/concurrency/fsm_workloads/plan_cache_drop_database.js | 31 |
1 files changed, 18 insertions, 13 deletions
diff --git a/jstests/concurrency/fsm_workloads/plan_cache_drop_database.js b/jstests/concurrency/fsm_workloads/plan_cache_drop_database.js index c4cb0e01082..574d20228e1 100644 --- a/jstests/concurrency/fsm_workloads/plan_cache_drop_database.js +++ b/jstests/concurrency/fsm_workloads/plan_cache_drop_database.js @@ -12,20 +12,25 @@ var $config = (function() { function populateData(db, collName) { var coll = db[collName]; - var bulk = coll.initializeUnorderedBulkOp(); - for (var i = 0; i < 1000; ++i) { - bulk.insert({a: 1, b: Random.rand()}); - } - var res = bulk.execute(); - assertAlways.commandWorked(res); + try { + var bulk = coll.initializeUnorderedBulkOp(); + for (var i = 0; i < 1000; ++i) { + bulk.insert({a: 1, b: Random.rand()}); + } + var res = bulk.execute(); + assertAlways.commandWorked(res); - // Create two indexes to force plan caching: The {a: 1} index is - // cached by the query planner because we query on a single value - // of 'a' and a range of 'b' values. - assertAlways.commandWorkedOrFailedWithCode(coll.ensureIndex({a: 1}), - [ErrorCodes.IndexBuildAborted]); - assertAlways.commandWorkedOrFailedWithCode(coll.ensureIndex({b: 1}), - [ErrorCodes.IndexBuildAborted]); + // Create two indexes to force plan caching: The {a: 1} index is + // cached by the query planner because we query on a single value + // of 'a' and a range of 'b' values. + assertAlways.commandWorkedOrFailedWithCode(coll.ensureIndex({a: 1}), + [ErrorCodes.IndexBuildAborted]); + assertAlways.commandWorkedOrFailedWithCode(coll.ensureIndex({b: 1}), + [ErrorCodes.IndexBuildAborted]); + } catch (ex) { + assert.eq(true, ex instanceof BulkWriteError, tojson(ex)); + assert.writeErrorWithCode(ex, ErrorCodes.DatabaseDropPending, tojson(ex)); + } } var states = (function() { |