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

ben-manes / caffeine / #5457
100%

Build:
DEFAULT BRANCH: master
Ran 12 May 2026 06:49AM 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

12 May 2026 05:53AM UTC coverage: 100.0%. Remained the same
#5457

push

github

ben-manes
Filter null entries from loadAll replace-existing loader results

CacheLoader.loadAll may return a map containing null keys or values
(the spec contract recommends against it, but defensive consumers
handle it anyway). The keep-existing branches in both CacheProxy and
JCacheLoaderAdapter already filter such entries before put; the
replace-existing branches did not. A loader returning a HashMap with
a null value would hit requireNonNull(value) inside putNoCopyOrAwait
midway through iteration, wrap NPE as CacheLoaderException, and
deliver it via the listener — but only after earlier keys had already
been put, leaving the cache in a partial-commit state.

Hoist loadAllAndReplaceExisting from private to protected so
LoadingCacheProxy can share it, then have both proxies route through
the same filtered path the keep-existing branches use.

4013 of 4022 branches covered (99.78%)

3 of 3 new or added lines in 2 files covered. (100.0%)

8239 of 8239 relevant lines covered (100.0%)

1.0 hits per line

Jobs
ID Job ID Ran Files Coverage
1 #5457.1 12 May 2026 06:49AM UTC 78
100.0
Source Files on build #5457
  • Tree
  • List 78
  • Changed 3
  • Source Changed 3
  • Coverage Changed 2
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Repo
  • 4738b7b2 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