Skip to content

Antalya 25.8 Backport of #2020 - Fix crash merging _part_offset projection on row-combining engines#2080

Merged
zvonand merged 2 commits into
antalya-25.8from
backports/antalya-25.8/2020
Jul 24, 2026
Merged

Antalya 25.8 Backport of #2020 - Fix crash merging _part_offset projection on row-combining engines#2080
zvonand merged 2 commits into
antalya-25.8from
backports/antalya-25.8/2020

Conversation

@mkmkme

@mkmkme mkmkme commented Jul 18, 2026

Copy link
Copy Markdown
Collaborator

25.8: Fix crash merging _part_offset projection on row-combining engines

Same as #2020, but for Antalya 25.8

Changelog category (leave one):

  • Critical Bug Fix (crash, data loss, RBAC)

Changelog entry (a user-readable short description of the changes that goes to CHANGELOG.md):

Fixes a bug where OPTIMIZE FINAL on row-combining engines could crash the server (ClickHouse#106929)

Documentation entry for user-facing changes

...

CI/CD Options

Exclude tests:

  • Fast test
  • Integration Tests
  • Stateless tests
  • Stateful tests
  • Performance tests
  • Aarch64 tests
  • All with ASAN
  • All with TSAN
  • All with MSAN
  • All with UBSAN
  • All with Coverage
  • All Regression
  • Disable CI Cache

Regression jobs to run:

  • Fast suites (mostly <1h)
  • Aggregate Functions (2h)
  • Alter (1.5h)
  • Benchmark (30m)
  • ClickHouse Keeper (1h)
  • Iceberg (2h)
  • LDAP (1h)
  • OAuth (5m)
  • Parquet (1.5h)
  • RBAC (1.5h)
  • SSL Server (1h)
  • S3 (2h)
  • S3 Export (2h)
  • Swarms (30m)
  • Tiered Storage (2h)

25.8: Fix crash merging _part_offset projection on row-combining engines
@github-actions

github-actions Bot commented Jul 18, 2026

Copy link
Copy Markdown

Workflow [PR], commit [a635191]

@mkmkme

mkmkme commented Jul 24, 2026

Copy link
Copy Markdown
Collaborator Author

@blau-ai

@mkmkme mkmkme added the verified Approved for release label Jul 24, 2026
@blau-ai

blau-ai commented Jul 24, 2026

Copy link
Copy Markdown
Collaborator

CI triage — 4 failing checks: 0 PR-caused, 3 infra/flaky, 1 aggregate gate

Short version: none of the red checks are caused by this backport. The diff only flips one boolean in MergeTask.cpp (all non-Ordinary merge modes now rebuild _part_offset projections instead of merging them) and adds a stateless test — it cannot affect builds timing out, ParallelReplicas connectivity, or swarm-cluster node-failure tests. Positive signal: the PR's own regression test passed, and the debug build/BuzzHouse are green (see below). Recommendation: re-run the three failing jobs, no code change needed.

1. Build (amd_release) — infra / timeout, not PR-caused

Report: Job got terminated with an error, exit code [-15] after 2h6m28s (job). Exit -15 = SIGTERM, i.e. the runner killed the job (build-time limit / spot reclaim), not a compile error. A one-line logic change can't make a build hang. The amd_debug build in the same run compiled the identical change fine.
Re-run.

2. Stateless (amd_binary, ParallelReplicas, s3 storage, parallel) — flaky, non-blocking

The single failure is unrelated to this PR:

03156_nullable_number_tips.sql (query 9, line 11: SELECT DISTINCT dumpColumnStructure(*) FROM test;)
Code: 279. DB::Exception: Can't connect to any replica chosen for query execution:
While executing Remote. (ALL_CONNECTION_TRIES_FAILED)

This is a ParallelReplicas connectivity flake in a dumpColumnStructure test — nothing to do with merges/projections. CI itself treats it as non-blocking (NOTE: Failed 1 tests - do not block pipeline, exit with 0) and the GitHub Actions job concluded success (job); only the S3 commit-status is red.
Ignore / re-run.

3. Regression x86 Swarms — flaky, not PR-caused

3 features / 2 scenarios failed (job):

✘ /swarms/feature/node failure/check restart swarm node
✘ /swarms/feature/node failure/swarm out of disk space
✘ /swarms/feature/swarm joins
Code: 394. DB::Exception: ... Query '…' is killed in pending state. (QUERY_WAS_CANCELLED)
  (on a static_swarm_cluster query over a datalake/iceberg table, sleepEachRow(1))

These are object-storage swarm-cluster resilience tests (deliberately killing nodes / filling disk mid-query), reading external tables — no code path overlaps with MergeTree projection merges. QUERY_WAS_CANCELLED during a forced node kill is a known race. Swarms was green on the latest base-branch commit (a6839beRegressionTestsRelease / Swarms / swarms: success), so this is intermittent, not a regression from the diff.
Re-run.

4. PR — aggregate status

Red only because it summarizes the three jobs above. Clears once they pass.


Health check / positive evidence

  • The PR's own regression test passed: 03786_projection_part_offset_reducing_merge: [ OK ] in Stateless tests (amd_debug, parallel) (job).
  • Build (amd_debug) and BuzzHouse (amd_debug) are green.
  • The change is a minimal, well-scoped backport of 25.8: Fix crash merging _part_offset projection on row-combining engines #2020 / upstream fix — one condition (mode != Ordinary) plus a targeted test. No divergence concerns.

Bottom line: safe to re-run the three failing jobs; I'd expect green. No fix required from this PR.

🤖 Generated by @blau-ai · evidence from CI run 30079153187

@zvonand
zvonand merged commit 92958b4 into antalya-25.8 Jul 24, 2026
210 of 216 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants