Caideyipi opened a new pull request, #18256: URL: https://github.com/apache/iotdb/pull/18256
## Description Backport of #18249 to `dev/1.3`. ### Changes - Use the compact `BitMap` backing array instead of allocating one byte per TVList slot. - Allocate aligned column bitmaps lazily per TVList block. - Avoid materializing MemTable bitmaps when an input bitmap has no marked bits. - Reserve bitmap object, backing-array, and list-reference memory in pre-write accounting. - Correct accounting for newly added aligned measurements when row, rows, or tablet inserts cross TVList block boundaries. ### dev/1.3 adaptation - Use the legacy `BitMap(int)` constructor, which provides the same compact allocation as the newer upstream helper. - The `dev/1.3` `putAlignedValues` API has no per-row `TSStatus` argument, so the upstream successful-status fast path is not applicable on this branch. ### Tests - `AlignedTVListTest` and `TsFileProcessorTest`: 23 tests passed. - Main sources and 521 test sources compiled successfully. - Spotless passed. - Checkstyle passed with 0 violations. <hr> This PR has: - [x] been self-reviewed. - [x] added comments explaining the intent where it would not be obvious. - [x] added unit tests or modified existing tests to cover new code paths. <hr> ##### Key changed/added classes - `AlignedTVList` - `TsFileProcessor` - `AlignedTVListTest` - `TsFileProcessorTest` -- 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]
