Skip to content

v0.17.3 - Updated spec runner for replica-set CI

Latest

Choose a tag to compare

@paulocoghi paulocoghi released this 25 Aug 18:12

Spec runner fix for a replica-set CI flake after v0.17.2. Driver code is unchanged, just CI code.

v0.17.2 turned leftover failCommand off with directConnection. The third replica-set GitHub run then failed once: logging-replicaset.json Failing heartbeat, waitForEvent for serverHeartbeatFailedEvent got 0 in 10s. The client uses the default 10s heartbeat. Awaitable hello does not see failCommand until that wait ends, and waitForEvent is also 10s.

This release:

  • After a hello handshake-error failPoint, aborts in-progress monitor hello on the matching appName client when that client observes serverHeartbeatFailedEvent
  • Leaves backpressure tests alone (they freeze monitors on purpose)
  • Does not copy that failPoint to every replica-set member

On this run, Failing heartbeat was 101ms (was ~10s).

GitHub Docker (CRYSTAL_WORKERS=2), 0 failures. Same example / pending counts as v0.17.2:

Topology Time Examples Pending
standalone 1:54 754 14
replica set 4:42 879 15
sharded 6:51 868 15
load-balanced 4:23 822 15

Same time band as v0.17.1 / v0.17.2 (2:01 / 4:32 / 6:55 / 4:03).

Upgrade: applications on 0.17.2 do not need this release unless they run this repo's spec suite. Next work is Phase 3.14 (performance).