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

codenotary / immudb / 28225094361
85%
master: 85%

Build:
Build:
LAST BUILD BRANCH: docs/rust-sdk-guidance
DEFAULT BRANCH: master
Ran 26 Jun 2026 08:03AM UTC
Jobs 1
Files 311
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

26 Jun 2026 07:55AM UTC coverage: 84.983% (+0.002%) from 84.981%
28225094361

Pull #2104

gh-ci

vchaindz
fix(multiapp): serve ReadAt from a detached handle on cache eviction race

A foreground ReadAt cache-miss opens and caches a chunk via singleflight,
then re-acquires it from the cache to take its ref. A concurrent insert
(another foreground miss or a background prefetch) could evict or replace
that just-inserted entry in between, so the re-acquire returned
cache.ErrKeyNotFound and ReadAt failed with a spurious "key not found"
for a perfectly valid, readable offset.

This surfaced as flaky failures in
embedded/appendable/remoteapp.TestWritePastFirstChunk (~3/8 full-package
runs), introduced by the parallel-prefetch / range-fetch read path.

Fix: when the post-open re-acquire misses, the data is still readable, so
re-open a detached, self-closing handle (refs=1, evicted) for that single
read instead of erroring. The detached handle is released exactly once by
ReadAt, which performs the underlying Close, so there is no leak.

Adds TestMultiAppConcurrentReadEvictionRace, which deterministically
reproduces the race (small cache + prefetch + concurrent sequential
readers) — 10/10 "key not found" before the fix, 0/20 after, clean under
-race.
Pull Request #2104: fix(multiapp): serve ReadAt from a detached handle on cache eviction race

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

3 existing lines in 1 file now uncovered.

45240 of 53234 relevant lines covered (84.98%)

126722.38 hits per line

Uncovered Changes

Lines Coverage ∆ File
3
86.24
-0.69% embedded/appendable/multiapp/multi_app.go

Coverage Regressions

Lines Coverage ∆ File
3
86.24
-0.69% embedded/appendable/multiapp/multi_app.go
Jobs
ID Job ID Ran Files Coverage
1 28225094361.1 26 Jun 2026 08:03AM UTC 311
84.98
Source Files on build 28225094361
  • Tree
  • List 311
  • Changed 3
  • Source Changed 0
  • Coverage Changed 3
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Pull Request #2104
  • PR Base - master (#28191445813)
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