2021-04-07 14:53:12 -04:00
|
|
|
// @tags: [requires_multi_updates, requires_non_retryable_writes]
|
2010-03-15 20:46:10 -04:00
|
|
|
|
|
|
|
|
t = db.update_arraymatch3;
|
|
|
|
|
t.drop();
|
|
|
|
|
|
2016-03-09 12:17:50 -05:00
|
|
|
o = {
|
|
|
|
|
_id: 1,
|
|
|
|
|
title: "ABC",
|
|
|
|
|
comments: [{"by": "joe", "votes": 3}, {"by": "jane", "votes": 7}]
|
|
|
|
|
};
|
2010-03-15 20:46:10 -04:00
|
|
|
|
2016-03-09 12:17:50 -05:00
|
|
|
t.save(o);
|
|
|
|
|
assert.eq(o, t.findOne(), "A1");
|
2010-03-15 20:46:10 -04:00
|
|
|
|
2016-03-09 12:17:50 -05:00
|
|
|
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");
|