• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

prisma-risk / tsoracle / 26420504892
95%

Build:
DEFAULT BRANCH: main
Ran 25 May 2026 09:35PM UTC
Jobs 1
Files 77
Run time 1min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

25 May 2026 09:29PM UTC coverage: 95.85%. Remained the same
26420504892

push

github

web-flow
fix(standalone): bound openraft peer unary RPCs with the RPCOption deadline (#443)

The openraft peer transport ignored the `RPCOption` passed to each unary
RaftNetworkV2 method (`_option`). openraft enforces that deadline itself for
`vote` and `transfer_leader` (it wraps them in `C::timeout` inside
`raft_core::broadcast_*`), but the replication `append_entries` path does not:
`stream_append_sequential` simply awaits `network.append_entries(req, option)`
and relies on the transport to honor `option.hard_ttl()`.

With the option dropped, an `append_entries` on a silently black-holed
connection (no RST — a NAT/firewall drop) had no deadline and would wedge that
follower's replication stream until TCP keepalive eventually tripped (~2h by
default).

Route all three unary RPCs (`append_entries`, `vote`, `transfer_leader`)
through a shared `unary_call` helper that applies `option.hard_ttl()` as a
wall-clock deadline. On any failure the pooled client is evicted so the next
attempt reconnects; a deadline elapse is surfaced as `Unreachable` (openraft
backs off) rather than `Network` (retry at once). For `vote`/`transfer_leader`
this is harmless belt-and-suspenders that fires no earlier than openraft's own
timeout; for `append_entries` it closes the real gap.

The helper is generic over the pool value and response types so it is
unit-testable without a live RaftPeerServiceClient, mirroring `evict`. Adds
tests for the deadline-elapse, transport-error, and success paths.

No public API change.

11270 of 11758 relevant lines covered (95.85%)

459492.05 hits per line

Jobs
ID Job ID Ran Files Coverage
1 26420504892.1 25 May 2026 09:35PM UTC 77
95.85
GitHub Action Run
Source Files on build 26420504892
  • Tree
  • List 77
  • Changed 0
  • Source Changed 0
  • Coverage Changed 0
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #26420504892
  • 1fecc0f3 on github
  • Prev Build on main (#26419802249)
  • Next Build on main (#26420824587)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc