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

ben-manes / caffeine
94%
master: 100%

Build:
Build:
LAST BUILD BRANCH: v3.dev
DEFAULT BRANCH: master
Repo Added 15 Dec 2014 11:20PM UTC
Files 78
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

LAST BUILD ON BRANCH v2.5.4
branch: v2.5.4
CHANGE BRANCH
x
Reset
  • v2.5.4
  • 05a040c2478341bab8a58a02b3dc1fe14d626d72
  • 2.5.6
  • Gil
  • adaptive
  • async-loader
  • ben/issue30
  • ben/spacing
  • buffer
  • cache2k
  • clockpro
  • codeql
  • dependabot/github_actions/JetBrains/qodana-action-2023.1.4
  • dependabot/github_actions/JetBrains/qodana-action-61b94e7e3a716dcb9e2030cfd79cd46149d56c26
  • dependabot/github_actions/codecov/codecov-action-3.1.3
  • dependabot/github_actions/github/codeql-action-2.3.4
  • dependabot/gradle/com.gradle.common-custom-user-data-gradle-plugin-1.9
  • dependabot/gradle/com.gradle.enterprise-3.14
  • dependabot/gradle/de.thetaphi-forbiddenapis-3.6
  • dependabot/gradle/pmd-7.0.0-rc4
  • expiring_map
  • expiry
  • gil
  • gilga
  • gradient
  • guava
  • jctools
  • juherr
  • master
  • memory
  • orm
  • penalties
  • solr
  • testng
  • tmp
  • travis
  • v1.0
  • v1.0.1
  • v1.1.0
  • v1.2.0
  • v1.3.0
  • v1.3.1
  • v1.3.2
  • v1.3.3
  • v2.0.0
  • v2.0.1
  • v2.0.2
  • v2.0.3
  • v2.1.0
  • v2.2.0
  • v2.2.2
  • v2.2.4
  • v2.3.2
  • v2.3.4
  • v2.5.2
  • v2.5.3
  • v2.5.5
  • v2.6.1
  • v2.7.0
  • v2.8.0
  • v2.8.1
  • v2.8.2
  • v2.8.3
  • v2.8.4
  • v2.8.5
  • v2.dev
  • v3.0.5
  • v3.0.6
  • v3.1.0
  • v3.1.1
  • v3.1.2
  • v3.1.4
  • v3.1.5
  • v3.1.6
  • v3.1.7
  • v3.1.8
  • v3.dev

pending completion
2139

push

travis-ci

ben-manes
Don't refresh automatically when waiting for a slow reload (fixed #175)

If the load time exceeded the refreshAfterWrite time then a new refresh
is triggered and the previous was ignored. This was due to how the write
timestamp is used, which was set to the current time to delay expiration
and refresh. When the refresh completes it CAS's to the new value only if
no other writes occurred (so as to not stomp explicit writes and reload a
stale read). The slow reload meant that only the last refresh would be
honored, which may not occur for a long time on a busy system.

This also removes a sync vs async difference that I never remembered why
it was in place. Async didn't have this problem due to the timestamp being
pushed out into the distant future. Since I didn't recall why these were
special cased I had kept them as is, hoping the previous me was smarter
than the current. Seems both were pretty dumb.

5716 of 6070 relevant lines covered (94.17%)

0.94 hits per line

Relevant lines Covered
Build:
Build:
6070 RELEVANT LINES 5716 COVERED LINES
0.94 HITS PER LINE
Source Files on v2.5.4
  • List 0
  • Changed 0
  • Source Changed 0
  • Coverage Changed 0
Coverage ∆ File Lines Relevant Covered Missed Hits/Line

Recent builds

Builds Branch Commit Type Ran Committer Via Coverage
2139 v2.5.4 Don't refresh automatically when waiting for a slow reload (fixed #175) If the load time exceeded the refreshAfterWrite time then a new refresh is triggered and the previous was ignored. This was due to how the write timestamp is used, which was ... push 04 Aug 2017 11:18PM UTC ben-manes travis-ci pending completion  
See All Builds (4133)
  • Repo on GitHub
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

© 2025 Coveralls, Inc