JingsongLi opened a new issue, #1062: URL: https://github.com/apache/paimon-rust/issues/1062
### Problem PyPaimon already supports `with_blob_consumer`, but installing a consumer currently switches NativeTableWrite back to the Python writer because Rust core and the Python bindings do not provide it. Rust also ignores the existing `blob.copy-buffer-size` option. ### Expected behavior Keep append Blob writes native while implementing Java BlobConsumer semantics: - Report physical payload descriptors for BLOB, ARRAY<BLOB> and MAP<K, BLOB> fields. - Report null descriptors for null fields, skip null collection elements, and preserve Java's callback timing and record-level flush requests. - Preserve consumer Blob files during automatic writer cleanup, including callback errors and partial prepare failures. Explicit TableCommit.abort remains available to discard prepared files. - Honor the positive, int-sized copy buffer option with Java's 4 KiB default without turning each small copy into a separate remote range request. - Keep descriptor conversion and Python exception transport in the binding, with write behavior implemented in Rust core. Primary-key managed Blob writers do not invoke the append consumer, consistent with Java. This does not introduce a new storage format or new PyPaimon functionality. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
