You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
| Columnar storage on object store | ✅ Arrow/Lance | URI normalization, S3 env-var plumbing |
270
270
| Per-dataset versioning + time travel | ✅ |`snapshot_at_version`, `entity_at`, snapshot-pinned reads across many tables |
271
-
| Blob-v2 cell access | ✅ Blob-v2 descriptors and range readers |`read_blob_at` selects one logical node/edge Blob cell at an exact branch or snapshot without exposing Lance placement. Managed readers are bounded and snapshot-pinned; external values are descriptor-only. Identity ambiguity and malformed state fail closed. See [RFC-033](docs/rfcs/0033-blob-management.md) and [execution internals](docs/dev/execution.md). |
271
+
| Blob-v2 cell access | ✅ Blob-v2 descriptors and range readers |`read_blob_at` selects one logical node/edge Blob cell at an exact branch or snapshot without exposing Lance placement. Managed readers are bounded and snapshot-pinned; HTTP GET/explicit HEAD adds ranges, conditionals, and a two-chunk backpressure envelope, while whole-object external values redirect without target-object I/O. Identity ambiguity, ranged external delivery, and malformed state fail closed. See [RFC-033](docs/rfcs/0033-blob-management.md) and [execution internals](docs/dev/execution.md). |
272
272
| Stable schema + table identity | — | Persisted accepted SchemaIR v2 owns one graph identity domain and a shared monotonic no-reuse allocator for nonzero type, property, and table-incarnation IDs. Internal manifest schema v5 introduced identity-keyed registration, version, tombstone, OCC, recovery ownership, and identity-derived node/edge paths; v6 preserves that contract and adds exact non-null `id` fencing. `table_key` is a mutable alias: rename preserves identity/path/history, while drop/re-add mints a new lifetime. This binary serves exactly v6; released v4 graphs rebuild by export/init/load, and abandoned unreleased v7-v19 roots are refused as future formats. |
273
273
| Per-dataset branches | ✅ |**Graph-level** refs are logically atomic through authoritative `__manifest``BranchContents`; native create/delete crash gaps are classified and reclaimed under a single-writer-process boundary; live names are path-prefix-disjoint; data-table forks are lazy; system branches are filtered |
274
274
| Atomic single-dataset commits | ✅ |**Multi-table publication has three layers:** each participant's Lance effect, one identity-aware `__manifest` CAS for graph visibility, and ordinary recovery-v9 for the gap. Mutation/Load, SchemaApply, BranchMerge, EnsureIndices, and Optimize arm identity-bearing sidecars before their first durable effect. Every pin, effect, registration, rename, tombstone, and output carries stable table/incarnation identity. Writers pre-mint exact Lance transactions where available, confirm complete outcomes before publication, and fail closed on ambiguous or foreign effects. Completed recovery is audited in `_graph_commit_recoveries.lance`. |
0 commit comments