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

ben-manes / caffeine / #3456
100%

Build:
DEFAULT BRANCH: master
Ran 13 Dec 2022 01:31AM UTC
Jobs 1
Files 77
Run time 3s
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

pending completion
#3456

push

github-actions

ben-manes
Reduce the lock hold time during Map.clear (fixes #835)

When invalidating the cache, it is faster and simpler to discard under
the eviction lock. This avoids thrashing on the write buffer and causing
excessive maintenence runs, which are triggered per write. However, for
a large cache this hold time may be excessive by causing other writes to
pile up so that the write buffer is full and backpressure causes delays.

In that case removing through the write buffer allows fairer throughput
as all writes compete to append into the buffer and async draining will
captures a batch of work. This avoids delaying any other write, or at
least makes the backpressure times short, so that writes have better
latencies by disfavoring the clear throughput.

The cache adapts strategies by monitoring the size of the write buffer.
If it grows over a threshold then the clear operation backs off by
releasing the eviction lock and performing a one-by-one removal instead.

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

7456 of 7546 relevant lines covered (98.81%)

0.99 hits per line

Jobs
ID Job ID Ran Files Coverage
1 #3456.1 13 Dec 2022 01:31AM UTC 0
98.81
Source Files on build #3456
Detailed source file information is not available for this build.
  • Back to Repo
  • Build #3456
  • 68fbff87 on github
  • Prev Build on master
  • Next Build on master
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