diff options
Diffstat (limited to 'jstests/noPassthrough/wt_cache_full.js')
-rw-r--r-- | jstests/noPassthrough/wt_cache_full.js | 97 |
1 files changed, 48 insertions, 49 deletions
diff --git a/jstests/noPassthrough/wt_cache_full.js b/jstests/noPassthrough/wt_cache_full.js index a5f08aa0815..29be77da891 100644 --- a/jstests/noPassthrough/wt_cache_full.js +++ b/jstests/noPassthrough/wt_cache_full.js @@ -3,63 +3,62 @@ * @tags: [requires_replication, requires_wiredtiger] */ (function() { - 'use strict'; +'use strict'; - const rst = new ReplSetTest({ - nodes: [ - { - slowms: 30000, // Don't log slow operations on primary. +const rst = new ReplSetTest({ + nodes: [ + { + slowms: 30000, // Don't log slow operations on primary. + }, + { + // Disallow elections on secondary. + rsConfig: { + priority: 0, + votes: 0, }, - { - // Disallow elections on secondary. - rsConfig: { - priority: 0, - votes: 0, - }, - // Constrain the storage engine cache size to make it easier to fill it up with - // unflushed modifications. - wiredTigerCacheSizeGB: 1, - }, - ] - }); - const nodes = rst.startSet(); - rst.initiate(); + // Constrain the storage engine cache size to make it easier to fill it up with + // unflushed modifications. + wiredTigerCacheSizeGB: 1, + }, + ] +}); +const nodes = rst.startSet(); +rst.initiate(); - const primary = rst.getPrimary(); - const mydb = primary.getDB('test'); - const coll = mydb.getCollection('t'); +const primary = rst.getPrimary(); +const mydb = primary.getDB('test'); +const coll = mydb.getCollection('t'); - const numDocs = 2; - const minDocSizeMB = 10; +const numDocs = 2; +const minDocSizeMB = 10; - for (let i = 0; i < numDocs; ++i) { - assert.writeOK( - coll.save({_id: i, i: 0, x: 'x'.repeat(minDocSizeMB * 1024 * 1024)}, - {writeConcern: {w: nodes.length, wtimeout: ReplSetTest.kDefaultTimeoutMS}})); - } - assert.eq(numDocs, coll.find().itcount()); +for (let i = 0; i < numDocs; ++i) { + assert.writeOK( + coll.save({_id: i, i: 0, x: 'x'.repeat(minDocSizeMB * 1024 * 1024)}, + {writeConcern: {w: nodes.length, wtimeout: ReplSetTest.kDefaultTimeoutMS}})); +} +assert.eq(numDocs, coll.find().itcount()); - const numUpdates = 500; - const secondary = rst.getSecondary(); - const batchOpsLimit = - assert.commandWorked(secondary.adminCommand({getParameter: 1, replBatchLimitOperations: 1})) - .replBatchLimitOperations; - jsTestLog('Oplog application on secondary ' + secondary.host + ' is limited to ' + - batchOpsLimit + ' operations per batch.'); +const numUpdates = 500; +const secondary = rst.getSecondary(); +const batchOpsLimit = + assert.commandWorked(secondary.adminCommand({getParameter: 1, replBatchLimitOperations: 1})) + .replBatchLimitOperations; +jsTestLog('Oplog application on secondary ' + secondary.host + ' is limited to ' + batchOpsLimit + + ' operations per batch.'); - jsTestLog('Buffering ' + numUpdates + ' updates to ' + numDocs + ' documents on secondary.'); - assert.commandWorked( - secondary.adminCommand({configureFailPoint: 'rsSyncApplyStop', mode: 'alwaysOn'})); - for (let i = 0; i < numDocs; ++i) { - for (let j = 0; j < numUpdates; ++j) { - assert.writeOK(coll.update({_id: i}, {$inc: {i: 1}})); - } +jsTestLog('Buffering ' + numUpdates + ' updates to ' + numDocs + ' documents on secondary.'); +assert.commandWorked( + secondary.adminCommand({configureFailPoint: 'rsSyncApplyStop', mode: 'alwaysOn'})); +for (let i = 0; i < numDocs; ++i) { + for (let j = 0; j < numUpdates; ++j) { + assert.writeOK(coll.update({_id: i}, {$inc: {i: 1}})); } +} - jsTestLog('Applying updates on secondary ' + secondary.host); - assert.commandWorked( - secondary.adminCommand({configureFailPoint: 'rsSyncApplyStop', mode: 'off'})); - rst.awaitReplication(); +jsTestLog('Applying updates on secondary ' + secondary.host); +assert.commandWorked(secondary.adminCommand({configureFailPoint: 'rsSyncApplyStop', mode: 'off'})); +rst.awaitReplication(); - rst.stopSet(); +rst.stopSet(); })(); |