shuwenwei opened a new pull request, #18454:
URL: https://github.com/apache/iotdb/pull/18454

   ## Description
   
   Backport and complete the aligned TVList partial-column clone optimization 
for dev/1.3, including the review issues raised on the master cherry-pick PR 
(#18409).
   
   ### Changes
   
   1. **Avoid O(N) transient allocations in aligned partial clone** — dev/1.3's 
`prepareMovePlan` allocated two N-wide `new List<?>[columnCount]` arrays 
(`valueColumnsToMove` + `bitmapColumnsToMove`) after memory admission had 
already reserved only the final retained-source size. Wide aligned tables now 
see a protected 2×N transient peak instead of an unprotected one. Also, 
`preparePartialClone` built the new list eagerly allocating an inner 
`ArrayList` per column; the clone constructor now allocates inner lists lazily.
   
   2. **e2e test for the clone-and-swap path** — adds 
`testAlignedTVListPartialColumnCloneEndToEnd` in 
`FragmentInstanceExecutionTest`: one query stays active on an unsorted aligned 
working TVList while a second partial-column query triggers clone-and-swap; 
verifies column ownership transfer, both queries read correct values, reserved 
memory matches `calculateRamSize()`, and cleanup releases the retained source 
while the clone remains the working list. Also adds `@BeforeClass` DataNodeId 
init to avoid `Coordinator.<clinit>` `ExceptionInInitializerError` in the test 
JVM.
   
   3. **cleanup: drop `alignedTVListColumnAccessMap` reference instead of 
`clear()`** — releases the whole map at once in 
`FragmentInstanceContext.cleanup()`.
   
   4. **remove unused `getTvListByColumnIndex` dead code** — the method had no 
callers in main or test.
   
   ### Related
   - Backport of apache/iotdb#18409 (master)
   


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