Conversation
…ABEL` (#1926) This commit only adds the labels, and does not fully implement the tickets specified below. The reason there are four JAVA tickets specified is that the is a single specification commit that resolved the four corresponding DRIVERS tickets. All of these JAVA tickets have to be done together. The relevant spec changes: - https://github.com/mongodb/specifications/blame/ba14b6bdc1dc695aa9cc20ccf9378592da1b2329/source/client-backpressure/client-backpressure.md#L52-L80 - it's a subset of [DRIVERS-3239, DRIVERS-3411, DRIVERS-3370, DRIVERS-3412: Client backpressure (#1907)](mongodb/specifications@1125200) JAVA-5956, JAVA-6117, JAVA-6113, JAVA-6119
There was a problem hiding this comment.
TODO-BACKPRESSURE Valentin
Before merging in main, make sure that all the code in the backpressure branch uses the MongoException.TRANSIENT_TRANSACTION_ERROR_LABEL/UNKNOWN_TRANSACTION_COMMIT_RESULT_LABEL/SYSTEM_OVERLOADED_ERROR_LABEL/RETRYABLE_ERROR_LABEL and CommandOperationHelper.RETRYABLE_WRITE_ERROR_LABEL/NO_WRITES_PERFORMED_ERROR_LABEL constants instead of using the TransientTransactionError/UnknownTransactionCommitResult/SystemOverloadedError/RetryableError and RetryableWriteError/NoWritesPerformed literals.
| BsonDocument helloCommandDocument = new BsonDocument(getHandshakeCommandName(), new BsonInt32(1)) | ||
| .append("helloOk", BsonBoolean.TRUE); | ||
| .append("helloOk", BsonBoolean.TRUE) | ||
| .append("backpressure", BsonBoolean.TRUE); |
There was a problem hiding this comment.
The commit ac1c120 introduced by #1906 for JAVA-6035 should have implemented, as far as I understand, the Test 9: Handshake documents include backpressure: true prose test (though the PR says nothing about the relevant spec changes it was meant to implement).
If the above is correct, let's reopen JAVA-6035 and create another PR for that ticket that will implement the prose test.
How to include
mainchanges intobackpressureRebase
backpressureon top ofmainwhen there are no outstanding PRs forbackpressurethat are being reviewed, because this leads to GitHub closing the PRs.See #1917 (comment) for more details.
How to deal with TODOs
TODO-BACKPRESSUREis the tag we use to leaveTODOs in PRs for thebackpressurebranch that must be addressed before the current PR is merged inmain. When we are leaving such a comment, and we know who should be responsible for addressing it, we should add the name of that engineer in the comment (for example, @stIncMale usesTODO-BACKPRESSURE Valentinfor theTODOs he should address).JAVA-5942, JAVA-6019