Skip to content

Backport #8935: Parallelize cluster node health checks (release-12.1) - #8937

Merged
Volkan Cetin (vlkncetin) merged 1 commit into
release-12.1from
backport-8935-release-12.1
Oct 20, 2026
Merged

Volkan Cetin (vlkncetin) merged 1 commit into
release-12.1from
backport-8935-release-12.1

Conversation

@vlkncetin

Copy link
Copy Markdown
Collaborator

Backports #8935 (fadced9).

Adapts four loops to release-12.1’s foreach_ptr macro. Preserves the merged behavior and regression tests.

Adapt list iteration to release-12.1 foreach_ptr; retain the merged concurrency and cancellation regression coverage.

(cherry picked from commit fadced9)

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
@vlkncetin
Volkan Cetin (vlkncetin) merged commit c7b4f4e into release-12.1 Oct 20, 2026
122 checks passed
@vlkncetin
Volkan Cetin (vlkncetin) deleted the backport-8935-release-12.1 branch October 20, 2026 13:58

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟡 Changes recommended

The cancellation test has a synchronization race that can cause intermittent assertion failures.

1 open issue
What changed in this PR

Backports parallel cluster health checks to release-12.1 while preserving result ordering and connectivity semantics.

Changes:

  • Establishes source connections concurrently and runs probes in parallel across sources.
  • Adapts loops to release-12.1’s foreach_ptr macro.
  • Adds concurrency and cancellation regression tests.
File Description
src/​test/​regress/​citus_tests/​test/​test_cluster_node_health.py Tests parallel probes, results, and cancellation.
src/​backend/​distributed/​operations/​health_check.c Parallelizes connectivity checks while retaining source-major output.

Review effort: Balanced

def cancel_when_checks_are_in_flight():
try:
deadline = time.monotonic() + 30
while not checks_are_in_flight():
@codecov

codecov Bot commented Oct 20, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 89.66%. Comparing base (377c1f2) to head (1aaa17e).
⚠️ Report is 21 commits behind head on release-12.1.

Additional details and impacted files
@@              Coverage Diff               @@
##           release-12.1    #8937    +/-   ##
==============================================
  Coverage         89.65%   89.66%            
==============================================
  Files               276      276            
  Lines             59790    59988   +198     
  Branches           7471     7499    +28     
==============================================
+ Hits              53605    53786   +181     
- Misses             4041     4050     +9     
- Partials           2144     2152     +8     
🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants