Skip to content

feat(c): expose TableWrite close for explicit cleanup - #1306

Open
ZENOTME wants to merge 1 commit into
apache:mainfrom
ZENOTME:feat/c-api-table-write-close
Open

ZENOTME wants to merge 1 commit into
apache:mainfrom
ZENOTME:feat/c-api-table-write-close

Conversation

@ZENOTME

@ZENOTME ZENOTME commented Nov 2, 2026

Copy link
Copy Markdown
Contributor

Purpose

Expose existing TableWrite::close() through the C API for explicit cleanup. Closes #1302.

Brief change log

Add paimon_table_write_close() using existing C binding conventions. Prepared messages remain caller-owned; free the handle separately.

Tests

Reuse test_write_commit_read_roundtrip: close the writer before committing its prepared messages, then verify the existing readback. No new fixture. Formatting checks pass.

API and Format

One additive C function; no storage format changes.

Documentation

Rustdoc describes ownership and handle lifetime.

@ZENOTME

ZENOTME commented Nov 2, 2026

Copy link
Copy Markdown
Contributor Author
thread 'io::cache::disk::shared::tests::batch_download_locks_deduplicate_and_skip_busy_stripes' (14679) panicked at crates/paimon/src/io/cache/shared.rs:1180:9:
assertion `left == right` failed
  left: 0
 right: 2

Looks like unrelatd failure

@QuakeWang

Copy link
Copy Markdown
Member
thread 'io::cache::disk::shared::tests::batch_download_locks_deduplicate_and_skip_busy_stripes' (14679) panicked at crates/paimon/src/io/cache/shared.rs:1180:9:
assertion `left == right` failed
  left: 0
 right: 2

Looks like unrelatd failure

@ZENOTME The unit (ubuntu) failure is the #1218 cache-lock flake, fixed on main in d8b3b11 (#1314). This branch is older than that. Could you rebase on main and push?

@ZENOTME
ZENOTME force-pushed the feat/c-api-table-write-close branch from 103421c to fabf5bd Compare November 4, 2026 12:37
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.

[Feature] Expose TableWrite::close in C bindings

2 participants