Skip to main content

io.SinkWrite

What storing a node’s state did, in any sink.

Usage

Source

io.SinkWrite(
    mode, version, contract, inserted=0, deleted=0, constraints=dict()
)

mode is how: created the table, overwrite it, merge the change (Delta), append the new rows or write the change row_level (Iceberg), update it with the change (a sink of your own), or skipped a state the table already holds. version is the table’s version afterwards; constraints are the CHECK constraints the table has for the node’s guarantees (Delta). print it for a one-line summary. A refresh’s report lists the writes it made.

Attributes

mode: Literal["created", "overwrite", "merge", "append", "row_level", "update", "skipped"]

"created" (the first write made the table), "overwrite" (the table’s rows were replaced), "merge" (the change in one MERGE commit, Delta), "append" (the change only added rows, Iceberg), "row_level" (position deletes and new rows in one snapshot, Iceberg), "update" (the change, written by a sink of your own) or "skipped" (the table already has this state’s epoch).

version: int | None

The table’s version afterwards (Delta), its snapshot sequence number (Iceberg), or None if the sink has no versions.

contract: Contract

What the commit recorded.

inserted: int

Rows written.

deleted: int

Rows deleted.

constraints: dict[str, str]
The table’s CHECK constraints from the node’s guarantees, by name (Delta; empty for Iceberg).