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

ben-manes / caffeine / 1667
100%

Build:
DEFAULT BRANCH: master
Ran 03 Apr 2016 02:30AM UTC
Jobs 1
Files 64
Run time 2s
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
1667

push

travis-ci

ben-manes
Add expireAfterWrite tolerance to handle high write rates

Full details are described in [1].

In a JMH write benchmark, the write buffer was overwelmed and caused
degredations. This only occurs for expireAfterWrite due to needing to
reorder the entry on the O(1) queue after an update. Due to the high
rate of updates and an unbounded buffer, the system would perform poorly.
Similar behavior was only seen for maximumSize stress testing of inserts.
In both cases a Thread.yield resolves the problem.

This case is more likely to be seen by users benchmarking their apps,
so it is unfair to not resolve it. An update within a short time window
(1 second) is not reordered on the expireAfterWrite queue. This allows
the async maintenance to keep up without a problem, while honoring the
user's expectations.

[1] https://github.com/orbit/orbit/pull/144#issuecomment-204838214

4459 of 4696 relevant lines covered (94.95%)

0.95 hits per line

Jobs
ID Job ID Ran Files Coverage
1 1667.1 (TERM=dumb) 03 Apr 2016 02:30AM UTC 0
94.95
Travis Job 1667.1
Source Files on build 1667
Detailed source file information is not available for this build.
  • Back to Repo
  • Travis Build #1667
  • 2c5c1d96 on github
  • Prev Build on master (#1666)
  • Next Build on master (#1668)
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