Stephen0421 opened a new pull request, #10514:
URL: https://github.com/apache/paimon/pull/10514

   ### Purpose
   
     Flink `sys.data_evolution_merge_into` previously rejected updates to 
managed raw BLOB
     columns. This PR supports updating `BLOB`, `ARRAY<BLOB>`, and `MAP<K, 
BLOB>` columns,
     including updates to `NULL`.
   
     - Unchanged rows are written as placeholders, so their payloads stay in 
the previous
       blob file instead of being copied.
     - Descriptor bytes keep a catalog-aware reader across the sort buffer, so 
an external
       blob descriptor is copied instead of failing with a null `FileIO`.
     - Blob files produced by one partial write receive contiguous 
`first_row_id`s.
     - Video-frame fields are rejected: they require a `VideoFrameDescriptor`, 
and BYTES
       input is not a video frame.
     - A single row larger than `write-buffer-size` (256 MB by default) fails 
the job,
       because the managed BLOB value is inlined into the merge sort buffer. 
Documented.
   
     Also in this PR:
   
     - Removes `CoreOptions#updatableBlobFields()`. It was an alias of 
`blobInlineField()`
       with a single caller, and its contract ("only descriptor fields are 
updatable") no
       longer holds.
     - Fixes the engine name in the BLOB `MERGE INTO` table: the procedure is
       `sys.data_evolution_merge_into`, not `sys.merge_into`.
   
   ### Tests
   
     `DataEvolutionMergeIntoActionITCase` covers:
   
     - Scalar, `NULL`, array, and map updates, plus existing non-blob updates 
on raw and descriptor blob tables.
     - A blob-column update with `blob.target-file-size=1b`: new blob files 
have contiguous `first_row_id`s, and an unchanged 64 KB payload is not copied 
into the new blob file.
     - Two successive updates, a local `sys.path_to_descriptor` source, and 
rejection of a `video-frame-field` column. 


-- 
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]

Reply via email to