Skip to content

Port SlateDB fork to v0.16 - #12

Merged
matthewsanetra merged 67 commits into
mainfrom
port-v0.16
Sep 2, 2026
Merged

matthewsanetra merged 67 commits into
mainfrom
port-v0.16

Conversation

@matthewsanetra

Copy link
Copy Markdown

Summary

  • Rebase the HelixDB SlateDB fork feature series onto upstream v0.16.0.
  • Preserve fork APIs for readers and snapshots, multi-get, query metrics, cache snapshots, typed database-missing errors, and commutative transaction merges.
  • Integrate v0.16 custom WAL readers and streaming, ManifestV2, read tracing, explicit close flushing, and safe metrics callbacks.
  • Record current main through a content-neutral ancestry merge.

Validation

  • Rust feature-matrix checks and warning-denied Clippy.
  • All-feature nextest: 2,322 passed, 1 configured skip.
  • Documentation tests, DST, macOS cross-tests, FlatBuffers validation, and both reader benchmark compile targets.
  • Python: 47 tests; Node: 49 tests; Go and Java 22 checks.
  • v0.15 upgrade fixtures covering flushed, WAL-only, merged, and checkpointed databases.
  • HelixDB db full suite, strict Clippy, and targeted topology and bitmap concurrency tests.

agavra and others added 30 commits July 29, 2026 10:02
…elps slatedb#2003) (slatedb#2005)

Co-authored-by: Chris <criccomini@users.noreply.github.com>
bit2swaz and others added 29 commits August 24, 2026 12:29
- Introduced `multi_get` and `multi_get_with_options` methods in `Db`, `DbReader`, `DbSnapshot`, and `DbTransaction` to retrieve multiple values efficiently.
- Implemented a new `WriteBatchLookup` enum to facilitate lookup operations in `WriteBatch`.
- Enhanced the `lookup_latest_for_key` method to support the new multi-get functionality.
- Added tests to ensure correctness of multi-get operations, preserving input order and handling duplicates.

This update improves the performance and usability of batch retrieval operations in the database.
Keep the fork-facing object-store cache switch while routing it through v0.15's split flush and compaction admission policy. Accept the legacy optional checkpoint argument at DbReader::open through DbReaderMode conversion without weakening the v0.15 builder API.
@matthewsanetra
matthewsanetra merged commit 50c0633 into main Sep 2, 2026
12 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.