Skip to content

Antalya 26.8: Do not reuse a server constant built in another scope. - #2515

Open
zvonand wants to merge 2 commits into
antalya-26.8from
feature/antalya-26.8/pr-2471
Open

zvonand wants to merge 2 commits into
antalya-26.8from
feature/antalya-26.8/pr-2471

Conversation

@zvonand

@zvonand zvonand commented Oct 8, 2026

Copy link
Copy Markdown
Member

Changelog category (leave one):

  • Bug Fix (user-visible misbehavior in an official stable release)

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

Fix UNION of a local query and cluster() (or another cluster function) throwing NUMBER_OF_COLUMNS_DOESNT_MATCH or THERE_IS_NO_COLUMN on GROUP BY hostName. A server constant built on the local branch was reused for the cluster branch and folded to the initiator value. Each scope now builds its own value, so shards report their own hostName, serverUUID, tcpPort, and the other server constants (#2471 by @ianton-ru).

CI/CD Options

Exclude tests:

  • Fast test
  • Integration Tests
  • Stateless tests
  • Stateful tests
  • Performance tests
  • All with ASAN
  • All with TSAN
  • All with MSAN
  • All with UBSAN
  • All with Coverage
  • All with Aarch64
  • 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)
  • Parquet (1.5h)
  • RBAC (1.5h)
  • SSL Server (1h)
  • S3 (2h)
  • S3 Export (2h)
  • Swarms (30m)
  • Tiered Storage (2h)

Cherry-picked from #2471.


hostName captured Context::isDistributed from the first UNION branch and was then folded on a cluster branch, so the GROUP BY headers no longer matched.

Solved #1181

Documentation entry for user-facing changes

...

…next commit)

---
Original cherry-pick message follows:

Merge pull request #2471 from Altinity/bugfix/antalya-26.6/fix-union-hostname-server-constant

Do not reuse a server constant built in another scope.
# Conflicts:
#	src/Analyzer/Resolve/resolveFunction.cpp
Kept the antalya-26.8 cache condition (`isStateful` / `isDeterministicInScopeOfQuery`), which replaced the hardcoded `getSetting` / `rowNumberInAllBlocks` name checks, and added the PR's `isServerConstant` exclusion and comment on top of it.
@zvonand zvonand added releasy Created/managed by RelEasy antalya-26.8 Session label (releasy session config) forwardport This is a frontport of code that existed in previous Antalya versions ai-resolved Port conflict auto-resolved by Claude labels Oct 8, 2026
@github-actions

github-actions Bot commented Oct 8, 2026

Copy link
Copy Markdown

Workflow [PR], commit [9951eed]

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

ai-resolved Port conflict auto-resolved by Claude antalya-26.8 Session label (releasy session config) forwardport This is a frontport of code that existed in previous Antalya versions releasy Created/managed by RelEasy

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant