Details
Description
There's a build failure where we run setIndexCommitQuorum with the following arguments:
(gdb) p _opMsgRequest
|
$2 = { |
<mongo::OpMsg> = {
|
body = owned BSONObj 214 bytes @ 0x7f8c0925ccbd = { |
[setIndexCommitQuorum] = "twoPhaseIndexBuild", |
[indexNames] = ["a_1"], |
[commitQuorum] = null, |
[$clusterTime] = {"clusterTime": {"$timestamp": {"t": 1623174548, "i": 15}}, "signature": {"hash": {"$binary": "AAAAAAAAAAAAAAAAAAAAAAAAAAA=", "$type": "00"}, "keyId": 0}}, |
[$db] = "TopChunkDB" |
},
|
sequences = std::vector of length 0, capacity 0 |
}, <No data fields>}
|
The 'null' type isn't one of the acceptable values for CommitQuorum. See: https://github.com/mongodb/mongo/blob/f1370eb80c66f1439bc2ea135a2bf25e80eda1ed/src/mongo/db/catalog/commit_quorum.idl#L38-L42
mark.benvenuto discovered a bug in the non-strict IDL parser that seems to be the cause of this.