Skip to content

Antalya 26.8: Do not read empty namespaces from catalog - #2368

Merged
zvonand merged 2 commits into
antalya-26.8from
feature/antalya-26.8/pr-2124
Sep 23, 2026
Merged

zvonand merged 2 commits into
antalya-26.8from
feature/antalya-26.8/pr-2124

Conversation

@zvonand

@zvonand zvonand commented Sep 15, 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 infinite recursion with empty namespace in Iceberg catalog (#1762 by @ianton-ru) (#2124 by @zvonand).

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 #2124.


Documentation entry for user-facing changes

Solved #1382

Antalya 26.6: Do not read empty namespaces from catalog
@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 labels Sep 15, 2026
@github-actions

github-actions Bot commented Sep 15, 2026

Copy link
Copy Markdown

Workflow [PR], commit [f5ce352]

@zvonand zvonand mentioned this pull request Sep 15, 2026
25 tasks
@zvonand

zvonand commented Sep 23, 2026

Copy link
Copy Markdown
Member Author

@blau-ai

@blau-ai

blau-ai commented Sep 23, 2026

Copy link
Copy Markdown
Collaborator

CI triage — 1 failing check, not caused by this PR

Verdict: 1 failure — 0 PR-caused, 1 flaky/infra. Everything else is green (all builds, Fast test, Stateless amd_debug/arm_binary + s3/distributed-plan, Integration tests arm_binary 1–4, AST fuzzer, BuzzHouse, SQLLogic, SQLStorm, Compatibility, Install packages, Parser memory check).

❌ Stress test (arm_release) — flaky infra, re-run

  • Reported failures: Cannot start clickhouse-serverCheck failed with exit code 1 (job).
  • What actually happened: the stress harness's server-startup health check timed out on the aarch64 runner. There is no crash and no application errorfatal.log and application_errors.txt are both 0 bytes, and clickhouse-server.err.log contains only warnings (Listen [::]:… DNS error: EAI: Address family for hostname not supported — IPv6 disabled on the runner, plus CgroupsReader: Cannot find 'kernel' and shutdown-time MergeMutateSelectedEntry was not finalized warnings).
  • Server did come up: on the restart the server (pid 1215) started cleanly — loaded storage policies, metadata and all 16 system tables and began listening. So this is a slow-startup/timeout on a loaded ARM release runner (ThreadFuzzer enabled), not a startup regression.

Why this is not caused by the PR

  • The diff is a single 7-line guard in src/Databases/DataLake/RestCatalog.cpp::getNamespacesRecursive (skip subnamespaces with empty names in the Iceberg REST catalog). That code path only runs when querying a DataLake/Iceberg REST catalog database — it is not on the server-startup path and is not exercised by the stress test.
  • The exact same binary/commit passed Stress test (amd_debug) and Stress test (arm_debug) (0 failures each). Only the arm_release variant tripped, on a startup-timeout — the signature of a flaky/infra failure, not a code defect.
  • No stack trace, sanitizer report, or error referencing catalog/namespace code anywhere in the logs.

Suggested next step

  • Re-run "Stress test (arm_release)" — no code change needed. If it reproduces on a clean re-run, it would point at runner/config (IPv6 <listen_host>::</listen_host> binding on a v4-only host, or an undersized/loaded aarch64 runner), still independent of this PR.

The PR itself looks healthy: minimal, well-scoped defensive change with green functional/integration/stress(debug) coverage.

Head SHA f5ce352. Analysis from the praktika S3 report + server logs; I can't build or run ClickHouse in this container, so final confirmation is the CI re-run.

@zvonand
zvonand merged commit 017662d into antalya-26.8 Sep 23, 2026
318 of 321 checks passed
@zvonand zvonand added verified Approved for release port-antalya PRs to be ported to all new Antalya releases labels Sep 23, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

antalya antalya-26.8 Session label (releasy session config) forwardport This is a frontport of code that existed in previous Antalya versions port-antalya PRs to be ported to all new Antalya releases releasy Created/managed by RelEasy verified Approved for release

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants