v0.17.2 - Updated spec runner for replica-set CI
Spec runner fix for a replica-set CI flake after v0.17.1. The production driver is unchanged.
v0.17.1 locked one UTF file at a time. That lock held but new runs still failed with extra insert events: leftover failCommand on an Unknown member, and a hello failPoint on the URI seed that also matched CSOT blockConnection.
This release:
- Arms the URI-seed hello failPoint only for handshake errors (
errorCodeorcloseConnection) - Turns off
failCommandon every mongod withdirectConnection, including Unknown / paused pools - Waits for a
w:1insert beforewaitForPrimaryChangereturns
GitHub Docker (CRYSTAL_WORKERS=2), 0 failures. Same example / pending counts and time band as v0.17.1:
| Topology | Time | Examples | Pending |
|---|---|---|---|
| standalone | 2:01 | 754 | 14 |
| replica set | 4:32 | 879 | 15 |
| sharded | 6:55 | 868 | 15 |
| load-balanced | 4:03 | 822 | 15 |
Upgrade: applications on 0.17.1 do not need this release unless they run this repo's spec suite. Next work is Phase 3.14 (performance).