zhuanshenbsj1 commented on code in PR #10655:
URL: https://github.com/apache/paimon/pull/10655#discussion_r4357192780
##########
paimon-python/pypaimon/execution/python/write/table_write.py:
##########
@@ -227,6 +227,10 @@ def with_blob_consumer(self, blob_consumer: BlobConsumer):
writer = self.writer
if blob_consumer is not None and not callable(blob_consumer):
raise TypeError('blob_consumer must be callable')
+ if writer.file_store_write.data_writers:
Review Comment:
@JingsongLi Thank you for the detailed review and catching the consumer
guard regression!
I've addressed this feedback in commit `bd34991` (`[python] Preserve blob
consumer reconfiguration and adapt inline blob write_row`):
**Changes made:**
1. ✅ **Removed the guard in `table_write.py`**: Removed the
`data_writers` check that was rejecting valid `with_blob_consumer()`
reconfigurations.
2. ✅ **Restored per-bucket capture behavior**: Preserved the contract
where existing bucket writers keep their original consumer while newly opened
buckets use the updated one, aligning with Java's `BaseAppendFileStoreWrite`.
3. ✅ **Refactored inline blob encoding in `file_store_write.py`**:
Cleanly isolated Append table streaming blobs from Primary-Key table inline
BLOB Arrow conversion for `write_row`.
**Verification:**
All six Python variants of
`test_filtered_blob_batches_allow_configuration_and_real_writes_capture_it`
have been verified locally and pass cleanly.
--
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]