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

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

Build:
Build:
LAST BUILD BRANCH: v3.dev
DEFAULT BRANCH: master
Ran 01 Jun 2026 08:18PM 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

01 Jun 2026 07:39PM UTC coverage: 100.0%. Remained the same
#5489

push

github

ben-manes
Fix JCache zero-creation-expiry, Guava null-query, and simulator bugs

JCache: CacheProxy.postProcess's EntryProcessor create/load path ignored a
zero creation expiry. Per ExpiryPolicy.getExpiryForCreation (JSR-107 1.1.1),
a Duration.ZERO entry 'will not be added to the Cache', but the path still
recorded a put and published a CREATED event for the absent entry, unlike the
putNoCopyOrAwait/putIfAbsentNoAwait siblings. Mirror the put guard: skip the
put stat and CREATED event, publish EXPIRED, store nothing. Verified against
the RI, Ehcache 2/3, Infinispan, Hazelcast, Coherence, and cache2k (CREATED
suppressed in all; entry not added in all; the RI also fires EXPIRED).

Guava: keep the facade a drop-in by matching Guava's asMap null-query
tolerance. get/containsKey/containsValue/remove/remove(k,v)/replace(k,null,v)
and keySet()/values().contains/containsAll now tolerate null (return
null/false) instead of throwing, and getAllPresent drops a null element. The
testlib suite is raised to ALLOWS_ANY_NULL_QUERIES and is now also run against
real Guava (GuavaMapTests) to guard against divergence; both pass.

Simulator: GLCacheTraceReader read the little-endian libCacheSim oracleGeneral
record as big-endian (mirror the OracleGeneralTraceReader sibling); Adam/Nadam
advanced the bias-correction timestep on the no-op first probe (count moment
updates instead); Synthetic.repeating produced items+1 distinct keys.

Found by a full-repository code review.

4032 of 4040 branches covered (99.8%)

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

8216 of 8216 relevant lines covered (100.0%)

1.0 hits per line

Jobs
ID Job ID Ran Files Coverage
1 #5489.1 01 Jun 2026 08:18PM UTC 78
100.0
Source Files on build #5489
  • Tree
  • List 78
  • Changed 2
  • Source Changed 2
  • Coverage Changed 2
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Repo
  • 1ef813b4 on github
  • Prev Build on master
  • Next Build on v3.dev
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