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

ben-manes / caffeine / 2203
100%

Build:
DEFAULT BRANCH: master
Ran 23 Nov 2017 06:02AM UTC
Jobs 1
Files 67
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
2203

push

travis-ci

ben-manes
Wait on future outside of a computation in Async's asMap sync view

The AsyncLoadingCache's synchronous asMap() view has to block on the
existing in-flight future when performing a computation, such as
computeIfPresent. That blocks other computations for the same key,
such as eviction's computeIfPresent to remove the entry. If the
future itself is a cache write, then the recursion may hit the
ConcurrentHashMap live-lock.

Instead the entry's future is retreived and blocked on outside of
the computation, validated as the same instance inside of the block,
and the mapping function executed or else the entire operation is
retried.

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

5772 of 6150 relevant lines covered (93.85%)

0.94 hits per line

Uncovered Changes

Lines Coverage ∆ File
1
100.0
caffeine/src/main/java/com/github/benmanes/caffeine/cache/LocalAsyncLoadingCache.java
Jobs
ID Job ID Ran Files Coverage
2 2203.2 (GROUP=tests) 23 Nov 2017 06:02AM UTC 0
93.85
Travis Job 2203.2
Source Files on build 2203
Detailed source file information is not available for this build.
  • Back to Repo
  • Travis Build #2203
  • 1f8ddd37 on github
  • Prev Build on master (#2200)
  • Next Build on master (#2205)
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