summaryrefslogtreecommitdiff
path: root/jstests/replsets/oplog_wallclock.js
blob: b11b125923b800f11fd7072181bd97d2b2aee592 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
// oplog should contain the field "wt" with wallClock timestamps.
(function() {
    'use strict';
    load('jstests/replsets/rslib.js');

    var assertLastOplogHasWT = function(primary, msg) {
        const opLogEntry = getLatestOp(primary);
        assert(opLogEntry.hasOwnProperty('wall'),
               'oplog entry must contain wt field: ' + tojson(opLogEntry));
    };

    var name = 'wt_test_coll';
    var replSet = new ReplSetTest({nodes: 1, oplogSize: 2, nodeOptions: {smallfiles: ''}});
    replSet.startSet();
    replSet.initiate();

    var primary = replSet.getPrimary();
    var collection = primary.getDB('test').getCollection(name);

    assert.writeOK(collection.insert({_id: 1, val: 'x'}));
    assertLastOplogHasWT(primary, 'insert');

    assert.writeOK(collection.update({_id: 1}, {val: 'y'}));
    assertLastOplogHasWT(primary, 'update');

    assert.writeOK(collection.remove({_id: 1}));
    assertLastOplogHasWT(primary, 'remove');

    replSet.stopSet();
})();