Details
-
Task
-
Resolution: Fixed
-
Major - P3
-
None
-
None
-
Fully Compatible
-
Repl 2019-02-25, Repl 2019-03-11
Description
On commit, after writing oplog entries for buffered operations, a “commitTransaction” oplog entry is written with a new subfield of the command (“o” field) { “prepared” : false } to distinguish from prepared transactions.
{
|
"ts": Timestamp(1538534630, 10),
|
"t": NumberLong(1),
|
"op": "c",
|
"ns": "admin.$cmd",
|
|
|
// The new commitTransaction command, for unprepared transactions.
|
"o": { "commitTransaction": 1, "prepared": false },
|
|
|
"lsid": < lsid > ,
|
"txnNumber": NumberLong("1"),
|
|
|
// Pointing to the previous oplog entry in the transaction.
|
"prevOpTime": { "ts": Timestamp(1538534630, 2), "t": NumberLong(1) }
|
}
|
The IDL format of commitTransaction oplog entry should be updated to include the new field.