Expand description
pk-index sink (V2/V3)
This module implements three core executors for the Iceberg pk-index sink that uses Deletion Vectors (DVs) instead of Equality Delete files:
-
Writer Executor (Stateful): Maintains a PK index mapping primary keys to (
file_path,position). Writes data files for inserts and emits (file_path,position) messages for deletes. -
Position-delete merger executor (Stateless): Consumes the Writer’s (
file_path,position) messages, merges delete positions with historical deletes, and reports the resulting delete files to meta.
Re-exports§
pub use position_delete_handler_impl::PositionDeleteHandlerImpl;pub use position_delete_merger::PositionDeleteMergerExecutor;pub use writer::WriterExecutor;pub use writer_impl::IcebergWriterImpl;
Modules§
- position_
delete_ 🔒handler_ impl - position_
delete_ 🔒merger - position_
delete_ 🔒staging - Pure, I/O-free bookkeeping for the position-delete merger’s in-memory “staging version”: the current delete state of each data file in this actor’s shard. Seeded once at init and appended to on every flush; the handler owns all iceberg I/O and calls into here for state transitions.
- writer 🔒
- writer_
impl 🔒