#120649·ClickHouse

合并更改 `sum(sign)` 正在收缩: 级别>0 的部分的键对从未重新收缩

作者: clickgapai创建于 2026年9月17日更新于 2026年9月17日
标签comp-mergetree

为什么我们认为这是一个 bug: CollapsingSortedAlgorithm::mergerowsHaveDifferentSortColumns 中衍生出键组界限(src/Processors/Merges/Algorithms/CollapsingSortedAlgorithm.cpp:210),该函数对于来自同一源的任何两行返回“不同键”(src/Processors/Merges/Algorithms/IMergingAlgorithmWithSharedChunks.h:86),如果该源部分的级别 > 0。一个合并的 CollapsingMergeTree 部分合法地包含每个键的两行 - first_negativelast_positive,正好符合 CollapsingSortedAlgorithm.h:20-24 中的类合同,因此该对将被分割为两个键组:第一个组会发出旧的取消行,第二个将自己合并其余行。

内容来源: ClickHouse/ClickHouse