Shekharrajak opened a new pull request, #2561:
URL: https://github.com/apache/fluss/pull/2561

    ### Purpose                                                                 
                                                                                
                               
                                                                                
                                                                                
                                
     <!-- Linking this pull request to the issue -->                            
                                                                                
                                
     Linked issue:   https://github.com/apache/fluss/issues/2536                
                                                                                
                                                              
                                                                                
                                                                                
                                
     <!-- What is the purpose of the change -->                                 
                                                                                
                                
     This PR adds foundational support for Iceberg V3 deletion vectors in 
Fluss. Deletion vectors (DVs) are a V3 feature that provides more efficient 
row-level deletes by storing deleted row  
     positions in a compact bitmap format (Puffin files) rather than separate 
position delete files.                                                          
                                  
                                                                                
                                                                                
                                
     ### Brief change log                                                       
                                                                                
                                
                                                                                
                                                                                
                                
     <!-- Please describe the changes made in this pull request and explain how 
they address the issue -->                                                      
                                
                                                                                
                                                                                
                                
     - **Add FormatVersionManager**: A utility class for detecting Iceberg 
table format versions and gating V3-specific features. 
                                               
                                                                                
                                                                                
                                
     - **Add V3DeltaTaskWriter**: A V3-aware delta writer that uses Iceberg's 
built-in `BaseDVFileWriter` for position deletes when the table format version 
supports deletion vectors.         
       - For V3 tables: Uses Puffin-based deletion vectors for position deletes 
                                                                                
                                
       - For V2 tables: Falls back to traditional position delete files         
                                                                                
                                
       - Extends `BaseTaskWriter` with DV support detection 
   
    ### API and Format                                                          
                                                                                
                               
                                                                                
                                                                                
                                
     <!-- Does this change affect API or storage format -->                     
                                                                                
                                
     No breaking API changes. This adds new internal classes:                   
                                                                                
                                
     - `FormatVersionManager` - New utility class for format version detection  
                                                                                
                                
     - `V3DeltaTaskWriter` - New writer class                                   
                                                                 
                                                                                
                                                                                
                                
     When V3 tables are used, delete files will use Puffin format (`.puffin`) 
instead of traditional position delete files, which is the standard Iceberg V3 
format.                            
   
     ### Tests  
   
   Unit tests 


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