Skip to content

Improve store pipeline reliability, filesystem performance, and caching#2206

Open
rejuvenile wants to merge 2 commits intoTraceMachina:mainfrom
rejuvenile:pr/02-store-reliability
Open

Improve store pipeline reliability, filesystem performance, and caching#2206
rejuvenile wants to merge 2 commits intoTraceMachina:mainfrom
rejuvenile:pr/02-store-reliability

Conversation

@rejuvenile
Copy link

@rejuvenile rejuvenile commented Mar 12, 2026

Summary

  • Harden store pipeline with better error handling and retry logic
  • Improve FilesystemStore performance (skip redundant chmod, POSIX_FADV_SEQUENTIAL)
  • Fix ExistenceCacheStore stale positive entries (bypass cache on update, clean on NotFound)
  • Fix BatchUpdateBlobs duplicate digest handling

Test plan

  • cargo check passes
  • CI checks pass

Stack: 2/11 — depends on #2205

🤖 Generated with Claude Code


This change is Reviewable

NativeLink Contributor added 2 commits March 11, 2026 16:54
Update tonic, prost, and other dependencies to latest versions.
Regenerate protobuf bindings. Add aws-lc-rs and rayon support
to digest hasher. Update BUILD.bazel files for LRE toolchain.

Co-Authored-By: NativeLink Contributor <contributor@nativelink.dev>
Rewrite existence cache to prevent stale positives by bypassing cache
on update and cleaning entries on NotFound. Fix BatchUpdateBlobs
duplicate digest handling. Add POSIX_FADV_SEQUENTIAL for read-ahead.
Pre-set CAS files to 0o555 to avoid redundant chmod on hardlink.
Fix LRU eviction ordering at startup by sorting files by atime.
Add stall detector for store operations. Replace async Mutex with
parking_lot in EvictingMap. Increase gRPC connections_per_endpoint
default to 32.

Co-Authored-By: NativeLink Contributor <contributor@nativelink.dev>
@CLAassistant
Copy link

CLA assistant check
Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.


NativeLink Contributor seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.
You have signed the CLA already but the status is still pending? Let us recheck it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants