Skip to content

fix(server): refresh stale point lookups across stores - #234

Merged
beinan merged 1 commit into
lance-format:mainfrom
beinan:fix/refresh-rollout-point-miss
Aug 7, 2026
Merged

fix(server): refresh stale point lookups across stores#234
beinan merged 1 commit into
lance-format:mainfrom
beinan:fix/refresh-rollout-point-miss

Conversation

@beinan

@beinan beinan commented Aug 6, 2026

Copy link
Copy Markdown
Collaborator

Summary

  • move explicit dataset-version pin tracking into shared StorageBase, so refresh behavior is consistent for context, rollout, generic, and datagen stores
  • keep point-read hits on the existing shared-lock fast path; on a miss, acquire the write lock, checkout_latest(), and retry once
  • cover context id/external-id/payload reads, rollout record/blob reads, generic row reads, and datagen fold/event/status/failure/blob reads
  • preserve explicit context and rollout time-travel checkouts instead of auto-advancing pinned handles
  • add deterministic multi-handle regressions where an external writer merges a row, drains the WAL, and leaves the cached reader on an older base version

Testing

  • ./.codex/skills/ci-pr-helper/scripts/run_ci_checks.sh
  • Rust core: 217 passed, 3 ignored
  • Rust server: 67 passed
  • WAL integration: 6 passed
  • Python: 213 passed, 6 skipped, 3 xfailed
  • cargo fmt/clippy, ruff format/check, and pyright passed

@beinan
beinan force-pushed the fix/refresh-rollout-point-miss branch from 7af8cea to 52f6911 Compare August 6, 2026 21:57
@beinan beinan changed the title fix(server): refresh stale rollout point lookups fix(server): refresh stale point lookups across stores Aug 6, 2026
@beinan
beinan merged commit ffdfb6b into lance-format:main Aug 7, 2026
10 checks passed
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.

1 participant