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

   ## What changed
   
   - Generalize `BinaryManifestEntry` and `BinaryDataFileMeta` so projected 
manifest rows can be consumed through the standard manifest entry interfaces.
   - Add a closeable projected scan API to `ManifestFile` and reuse it from row 
ID assignment planning.
   - Make `DataEvolutionRowIdAssignmentPlanner` a one-shot planner that 
directly produces `RowRangeMappingIndex` values, with the manifest passes split 
into focused methods.
   - Extract reusable primitive utilities for byte-array lookup, deleted 
identifiers, triples, and row ranges.
   - Move current row ID entry storage into `CurrentRowIdEntries` and add 
focused tests for the new abstractions.
   
   ## Why
   
   The row ID assignment planner contained format-specific manifest reading, 
schema-specific binary wrappers, identifier encoding, and several primitive 
data structures. This made the planner difficult to follow and duplicated 
functionality that can be shared by other low-memory manifest consumers.
   
   ## Impact
   
   The planner keeps the existing row ID assignment behavior while reducing its 
responsibilities and retaining projected binary data instead of materializing 
full manifest entries. The new manifest scan and primitive range abstractions 
are reusable by other callers.
   
   ## Tests
   
   ```text
   mvn -pl paimon-core -am -DfailIfNoTests=false -DwildcardSuites=none \
     
-Dtest=ByteArrayKeyTest,DeletedIdentifierSetTest,LongTripleArrayListTest,PrimitiveRowRangesTest,BinaryManifestEntryReusableIdentifierTest,CurrentRowIdEntriesTest,ManifestFileTest,BinaryManifestEntryTest,BinaryDataFileMetaTest,RowRangeMappingIndexTest,DataEvolutionRowIdReassignerTest
 test
   ```
   
   Common: 18 tests passed.
   Core: 93 tests passed.
   


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