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

ben-manes / caffeine / #5695
100%
master: 100%

Build:
Build:
LAST BUILD BRANCH: v3.dev
DEFAULT BRANCH: master
Ran 29 Jul 2026 05:25AM UTC
Jobs 1
Files 78
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

29 Jul 2026 04:50AM UTC coverage: 99.976%. Remained the same
#5695

push

github

ben-manes
Report the timer wheel's next bucket flush as its delay

The expiration delay is when the wheel next flushes a bucket holding a
timer, which either expires the entry or cascades it towards a finer
resolution. A bucket is flushed once the wheel reaches its tick, so the
current bucket, whose tick has already passed, is flushed by the next
one rather than a full span later.

The scan reported a whole span when the current bucket was occupied and
returned before probing the rest of that wheel, hiding an event a single
bucket ahead which then fired up to a span late. The current bucket is
occupied because findBucket chooses the wheel by duration but the index
by absolute time, so a duration within the clock's offset into the span
of the next span's start wraps a full revolution onto it. That entry is
a revolution out while the one it masks is imminent.

peekAhead skipped the higher wheel's current bucket, which is flushed
alongside the one it probed. Only wrapped timers land there, so nothing
expired late, but the delay no longer described the flush that followed
it.

The fuzzy test now asserts the delay equals the earliest flush across
every bucket. Its previous assertion was guarded by the same condition
it asserted and compared an absolute time against a relative delay.

4203 of 4215 branches covered (99.72%)

6 of 6 new or added lines in 1 file covered. (100.0%)

8482 of 8484 relevant lines covered (99.98%)

1.0 hits per line

Jobs
ID Job ID Ran Files Coverage
1 #5695.1 29 Jul 2026 05:25AM UTC 78
99.98
Source Files on build #5695
  • Tree
  • List 78
  • Changed 1
  • Source Changed 1
  • Coverage Changed 1
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Repo
  • 7cc9f1f4 on github
  • Prev Build on v3.dev
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE TRIAL · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc