Skip to content

Docs: Restructure write support into explicit operation subsections - #3647

Open
Zhuoxi2000 wants to merge 1 commit into
apache:mainfrom
Zhuoxi2000:docs-write-support-modes
Open

Docs: Restructure write support into explicit operation subsections#3647
Zhuoxi2000 wants to merge 1 commit into
apache:mainfrom
Zhuoxi2000:docs-write-support-modes

Conversation

@Zhuoxi2000

Copy link
Copy Markdown

Closes #1008

Rationale for this change

#1008 asks for the write documentation to describe each operation and API
mode "explicitly in detail as separate subsections". The current "Write to
a table" section is a single narrative: delete is buried mid-flow, the
Transaction API is never mentioned for writes, and several parameters
(branch, snapshot_properties, case_sensitive) are undocumented.

What changes are included in this PR?

  • New subsection "Write API modes: Table and Transaction" — documents
    that every Table-API write is a single-operation transaction, and shows
    multi-operation atomic commits (delete + append in one snapshot chain,
    schema evolution + write in one commit).
  • Explicit subsections per operation: Append, Overwrite (full +
    partial), Dynamic partition overwrite (split out of "Partial
    overwrites"), Delete (new — previously inline prose), Upsert
    (unchanged).
  • Pads missing details: the snapshot_properties / branch kwargs accepted
    by every write, case_sensitive on filtered operations, the
    DELETE/OVERWRITE/APPEND snapshots an overwrite/delete may produce, the
    "did not match any records" warning, and the copy-on-write fallback when
    write.delete.mode=merge-on-read.

No code changes; prose and structure only. Existing anchors are preserved
("Partial overwrites" survives as an h4; "Streaming writes from a
RecordBatchReader" untouched).

Are these changes tested?

markdownlint (repo config) passes. Internal anchors verified against the
generated heading ids.

Are there any user-facing changes?

Docs only.

Documents the two write API modes (Table API vs Transaction API) and
gives each write operation its own subsection: Append, Overwrite
(full and partial), Dynamic partition overwrite, Delete and Upsert.

Pads in previously undocumented details: multi-operation atomic
commits via Transaction, the snapshot_properties / branch kwargs
accepted by every write, case_sensitive on filtered operations, the
DELETE/OVERWRITE/APPEND snapshots an overwrite or delete may produce,
the no-match warning on delete, and the copy-on-write fallback when
write.delete.mode is merge-on-read.

Closes apache#1008
@github-actions

Copy link
Copy Markdown

This pull request has been marked as stale due to 30 days of inactivity. It will be closed in 1 week if no further activity occurs. If you think that's incorrect or this pull request requires a review, please simply write any comment. If closed, you can revive the PR at any time and @mention a reviewer or discuss it on the dev@iceberg.apache.org list. Thank you for your contributions.

@github-actions github-actions Bot added the stale label Aug 10, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

DOCS: Improve Documentation on Write Support

1 participant