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

databendlabs / openraft / 26814810383 / 1
87%
main: 87%

Build:
DEFAULT BRANCH: main
Ran 02 Jun 2026 10:50AM UTC
Files 264
Run time 9s
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

02 Jun 2026 10:36AM UTC coverage: 86.541% (+0.001%) from 86.54%
26814810383.1

push

github

drmingdrmer
fix: drain stranded client responders on PurgeLog

# Summary

A former leader's pending client write could be superseded by a snapshot
install on a lagging follower, leaving its responder in the queue. The next
apply then panicked the RaftCore task on a purged log index, permanently
freezing that Raft group. PurgeLog now drains and fails such responders,
mirroring TruncateLog.

# Details

Root cause: when a follower lags past the snapshot's last index,
install_full_snapshot skips the conflict-truncate (the only step that drains
responders) because the local log does not reach that index, and removes the
superseded entries via PurgeLog. PurgeLog did not touch client_responders, so a
responder remained below the new purge boundary; the next apply called
get_log_id(index).unwrap() on a purged index and panicked.

Fix: PurgeLog drains responders up to the purged index and completes each with
ForwardToLeader. In normal operation purge follows apply, so the drained range
is empty and behavior is unchanged; it only fires on the snapshot-strand path.

A regression test reproduces the path: leader accepts a write, loses leadership
with the responder pending, lags, installs a snapshot past its local log, then
applies once.

- Fix: #1761

16383 of 18931 relevant lines covered (86.54%)

145291.83 hits per line

Source Files on job 26814810383.1
  • Tree
  • List 264
  • Changed 4
  • Source Changed 1
  • Coverage Changed 4
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Build 26814810383
  • 13df5b32 on github
  • Prev Job for on main (#26814307926.1)
  • Next Job for on main (#26823344269.1)
  • Delete
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