2021-04-07 14:53:12 -04:00
|
|
|
// @tags: [requires_multi_updates, requires_non_retryable_writes]
|
2010-03-15 20:46:10 -04:00
|
|
|
|
2025-02-04 14:03:10 -05:00
|
|
|
const t = db[jsTestName()];
|
2010-03-15 20:46:10 -04:00
|
|
|
t.drop();
|
|
|
|
|
|
2025-08-21 10:17:44 -07:00
|
|
|
let o = {
|
|
|
|
|
_id: 1,
|
|
|
|
|
title: "ABC",
|
|
|
|
|
comments: [
|
|
|
|
|
{"by": "joe", "votes": 3},
|
|
|
|
|
{"by": "jane", "votes": 7},
|
|
|
|
|
],
|
|
|
|
|
};
|
2010-03-15 20:46:10 -04:00
|
|
|
|
2025-02-04 14:03:10 -05:00
|
|
|
assert.commandWorked(t.save(o));
|
2016-03-09 12:17:50 -05:00
|
|
|
assert.eq(o, t.findOne(), "A1");
|
2010-03-15 20:46:10 -04:00
|
|
|
|
2025-08-21 10:17:44 -07:00
|
|
|
assert.commandWorked(t.update({"comments.by": "joe"}, {$inc: {"comments.$.votes": 1}}, false, true));
|
2010-03-15 20:46:10 -04:00
|
|
|
o.comments[0].votes++;
|
2016-03-09 12:17:50 -05:00
|
|
|
assert.eq(o, t.findOne(), "A2");
|