diff options
author | Kaloian Manassiev <kaloian.manassiev@mongodb.com> | 2017-04-07 17:33:26 -0400 |
---|---|---|
committer | Kaloian Manassiev <kaloian.manassiev@mongodb.com> | 2017-04-11 16:41:30 -0400 |
commit | e3650103509da22a0c4dc7c07ab4f9cea9521e8e (patch) | |
tree | df96e5fc9fa7d45ec6c4d817ccc6842651b84838 /jstests/sharding | |
parent | dbb62093678716934383d0e777ff836623bf634b (diff) | |
download | mongo-e3650103509da22a0c4dc7c07ab4f9cea9521e8e.tar.gz |
SERVER-28698 Use 'chunkDataCommitted' failpoint in migration_critical_section_concurrency.js
(cherry picked from commit 61339fc6cf60938cbc83fd5b6772b10da55d4289)
Diffstat (limited to 'jstests/sharding')
-rw-r--r-- | jstests/sharding/migration_critical_section_concurrency.js | 30 |
1 files changed, 15 insertions, 15 deletions
diff --git a/jstests/sharding/migration_critical_section_concurrency.js b/jstests/sharding/migration_critical_section_concurrency.js index 496f38a0728..5993fd5d841 100644 --- a/jstests/sharding/migration_critical_section_concurrency.js +++ b/jstests/sharding/migration_critical_section_concurrency.js @@ -33,30 +33,30 @@ load('./jstests/libs/chunk_manipulation_util.js'); assert.commandWorked( st.s0.adminCommand({moveChunk: 'TestDB.Coll0', find: {Key: 1}, to: st.shard1.shardName})); - // Pause the move chunk operation in the critical section - pauseMigrateAtStep(st.shard1, migrateStepNames.steady); + // Pause the move chunk operation just before it leaves the critical section + pauseMoveChunkAtStep(st.shard0, moveChunkStepNames.chunkDataCommitted); + var joinMoveChunk = moveChunkParallel( staticMongod, st.s0.host, {Key: 1}, null, 'TestDB.Coll1', st.shard1.shardName); - // Wait till the donor reaches the critical section - waitForMoveChunkStep(st.shard0, moveChunkStepNames.reachedSteadyState); + waitForMoveChunkStep(st.shard0, moveChunkStepNames.chunkDataCommitted); // Ensure that operations for 'Coll0' are not stalled - assert.eq(1, coll0.find({Key: {$lte: -1}}).maxTimeMS(5000).itcount()); - assert.eq(1, coll0.find({Key: {$gte: 1}}).maxTimeMS(5000).itcount()); - assert.writeOK(coll0.insert({Key: -2, Value: '-2'}, {writeConcern: {wtimeout: 5000}})); - assert.writeOK(coll0.insert({Key: 2, Value: '2'}, {writeConcern: {wtimeout: 5000}})); - assert.eq(2, coll0.find({Key: {$lte: -1}}).maxTimeMS(5000).itcount()); - assert.eq(2, coll0.find({Key: {$gte: 1}}).maxTimeMS(5000).itcount()); + assert.eq(1, coll0.find({Key: {$lte: -1}}).itcount()); + assert.eq(1, coll0.find({Key: {$gte: 1}}).itcount()); + assert.writeOK(coll0.insert({Key: -2, Value: '-2'})); + assert.writeOK(coll0.insert({Key: 2, Value: '2'})); + assert.eq(2, coll0.find({Key: {$lte: -1}}).itcount()); + assert.eq(2, coll0.find({Key: {$gte: 1}}).itcount()); // Ensure that operations for non-sharded collections are not stalled var collUnsharded = testDB.CollUnsharded; - assert.eq(0, collUnsharded.find({}).maxTimeMS(5000).itcount()); - assert.writeOK( - collUnsharded.insert({TestKey: 0, Value: 'Zero'}, {writeConcern: {wtimeout: 5000}})); - assert.eq(1, collUnsharded.find({}).maxTimeMS(5000).itcount()); + assert.eq(0, collUnsharded.find({}).itcount()); + assert.writeOK(collUnsharded.insert({TestKey: 0, Value: 'Zero'})); + assert.eq(1, collUnsharded.find({}).itcount()); + + unpauseMoveChunkAtStep(st.shard0, moveChunkStepNames.chunkDataCommitted); - unpauseMigrateAtStep(st.shard1, migrateStepNames.steady); joinMoveChunk(); st.stop(); |