Files
XuanYang-cnandGitHub 2b5074b98e fix: [2.5] self-heal compaction segment positions and add L0 force-select bypass (#48909)
Compaction inherits StartPosition/DmlPosition from source segments via
getMinPosition without recalculating from actual data. The import
position bug (PR #47276) wrote wrong timestamps on imported segments,
and these wrong positions persist and propagate through compaction. L0
compaction then misses L1/L2 segments due to StartPosition mismatches,
causing zombie L0 segments and silent delete loss.

There is also a latent bug: DmlPosition in mix/clustering compaction
uses getMinPosition, but DmlPosition represents the latest entity
timestamp and should use max.

See also: #46435
pr: #48907

---------

Signed-off-by: yangxuan <xuan.yang@zilliz.com>
2026-04-23 10:29:48 +08:00
..