mirror of
https://github.com/mongodb/mongo.git
synced 2024-12-01 09:32:32 +01:00
41 lines
1.3 KiB
JavaScript
41 lines
1.3 KiB
JavaScript
load("jstests/sharding/move_chunk_with_session_helper.js");
|
|
|
|
(function() {
|
|
"use strict";
|
|
|
|
load("jstests/libs/retryable_writes_util.js");
|
|
|
|
if (!RetryableWritesUtil.storageEngineSupportsRetryableWrites(jsTest.options().storageEngine)) {
|
|
jsTestLog("Retryable writes are not supported, skipping test");
|
|
return;
|
|
}
|
|
|
|
var st = new ShardingTest({shards: {rs0: {nodes: 2}, rs1: {nodes: 2}}});
|
|
assert.commandWorked(st.s.adminCommand({enableSharding: 'test'}));
|
|
st.ensurePrimaryShard('test', st.shard0.shardName);
|
|
|
|
var coll = 'insert';
|
|
var cmd = {
|
|
insert: coll,
|
|
documents: [{x: 10}, {x: 30}],
|
|
ordered: false,
|
|
lsid: {id: UUID()},
|
|
txnNumber: NumberLong(34),
|
|
};
|
|
var setup = function() {};
|
|
var checkRetryResult = function(result, retryResult) {
|
|
assert.eq(result.ok, retryResult.ok);
|
|
assert.eq(result.n, retryResult.n);
|
|
assert.eq(result.writeErrors, retryResult.writeErrors);
|
|
assert.eq(result.writeConcernErrors, retryResult.writeConcernErrors);
|
|
};
|
|
var checkDocuments = function(coll) {
|
|
assert.eq(1, coll.find({x: 10}).itcount());
|
|
assert.eq(1, coll.find({x: 30}).itcount());
|
|
};
|
|
|
|
testMoveChunkWithSession(st, coll, cmd, setup, checkRetryResult, checkDocuments);
|
|
|
|
st.stop();
|
|
})();
|