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

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

Build:
Build:
LAST BUILD BRANCH: v3.dev
DEFAULT BRANCH: master
Ran 14 Jul 2026 07:56AM 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

14 Jul 2026 07:33AM UTC coverage: 99.988%. Remained the same
#5635

push

github

ben-manes
Fix the timer wheel wrap bias at Long.MIN_VALUE

advance()'s negative-to-non-negative crossing rebiases the timestamps so
the unsigned per-level tick delta is correct. The bias must be 2^63 to
map the negative range [MIN_VALUE, -1] strictly below the non-negative
range in unsigned space. Biasing by Long.MAX_VALUE (2^63-1) is one short:
previousTimeNanos == Long.MIN_VALUE maps to unsigned 2^64-1 instead of 0,
so every wheel delta is <= 0, the loop breaks at level 0, and the whole
advance is a no-op (background expiration stalls until the next advance
with a non-degenerate previous; the read path stays exact). Bias by
Long.MIN_VALUE, whose bit pattern is 2^63.

4137 of 4148 branches covered (99.73%)

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

8412 of 8413 relevant lines covered (99.99%)

1.0 hits per line

Jobs
ID Job ID Ran Files Coverage
1 #5635.1 14 Jul 2026 07:56AM UTC 78
99.99
Source Files on build #5635
  • Tree
  • List 78
  • Changed 0
  • Source Changed 0
  • Coverage Changed 0
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Repo
  • 94636fd6 on github
  • Prev Build on v3.dev
  • Next 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