Skip to content

create changestream with timeout#4166

Merged
jgao54 merged 1 commit intomainfrom
fix-changestream-creation-timeout
Apr 13, 2026
Merged

create changestream with timeout#4166
jgao54 merged 1 commit intomainfrom
fix-changestream-creation-timeout

Conversation

@jgao54
Copy link
Copy Markdown
Contributor

@jgao54 jgao54 commented Apr 11, 2026

Calls client.Watch with a 5 minute context deadline so the driver sends maxTimeMS over the wire which is honored by the server. Otherwise server-side default maxTimeMS is used which can sometimes be too short for the initial aggregation.

Also added better logging for when change stream is recreated.

Fixes: https://linear.app/clickhouse/issue/DBI-672

@jgao54 jgao54 force-pushed the fix-changestream-creation-timeout branch from 9032c5b to 6db0da7 Compare April 13, 2026 20:22
@jgao54 jgao54 marked this pull request as ready for review April 13, 2026 20:25
@github-actions
Copy link
Copy Markdown
Contributor

🔄 Flaky Test Detected

Analysis: The e2e test suite hit the 900s timeout exactly (ran 900.557s), indicating the tests were killed by the deadline rather than failing with a specific assertion — a classic flaky timeout pattern in integration/e2e suites.
Confidence: 0.88

✅ Automatically retrying the workflow

View workflow run

@jgao54 jgao54 force-pushed the fix-changestream-creation-timeout branch from 97e58c2 to c23eac3 Compare April 13, 2026 20:58
@codecov
Copy link
Copy Markdown

codecov bot commented Apr 13, 2026

❌ 2 Tests Failed:

Tests completed Failed Passed Skipped
2165 2 2163 183
View the top 2 failed test(s) by shortest run time
github.com/PeerDB-io/peerdb/flow/e2e::TestPeerFlowE2ETestSuiteMySQL_CH
Stack Traces | 0.01s run time
=== RUN   TestPeerFlowE2ETestSuiteMySQL_CH
=== PAUSE TestPeerFlowE2ETestSuiteMySQL_CH
=== CONT  TestPeerFlowE2ETestSuiteMySQL_CH
--- FAIL: TestPeerFlowE2ETestSuiteMySQL_CH (0.01s)
github.com/PeerDB-io/peerdb/flow/e2e::TestPeerFlowE2ETestSuiteMySQL_CH/Test_Column_Exclusion
Stack Traces | 5.02s run time
=== RUN   TestPeerFlowE2ETestSuiteMySQL_CH/Test_Column_Exclusion
=== PAUSE TestPeerFlowE2ETestSuiteMySQL_CH/Test_Column_Exclusion
=== CONT  TestPeerFlowE2ETestSuiteMySQL_CH/Test_Column_Exclusion
2026/04/13 21:09:17 INFO Received AWS credentials from peer for connector: ci x-peerdb-additional-metadata={Operation:FLOW_OPERATION_UNKNOWN}
2026/04/13 21:09:17 INFO Received AWS credentials from peer for connector: clickhouse x-peerdb-additional-metadata={Operation:FLOW_OPERATION_UNKNOWN}
    clickhouse_test.go:1859: Failed to connect temporal client: failed reaching server: context deadline exceeded
--- FAIL: TestPeerFlowE2ETestSuiteMySQL_CH/Test_Column_Exclusion (5.02s)

To view more test analytics, go to the Test Analytics Dashboard
📋 Got 3 mins? Take this short survey to help us improve Test Analytics.

@github-actions
Copy link
Copy Markdown
Contributor

🔄 Flaky Test Detected

Analysis: Infrastructure instability during the test run — the PostgreSQL catalog was terminated mid-run (SQLSTATE 57P01) and the Temporal server became unreachable (context deadline exceeded), causing cascading test failures unrelated to any code change.
Confidence: 0.95

✅ Automatically retrying the workflow

View workflow run

@github-actions
Copy link
Copy Markdown
Contributor

🔄 Flaky Test Detected

Analysis: The test TestPeerFlowE2ETestSuiteMySQL_CH/Test_Column_Exclusion failed with a context deadline exceeded error when connecting to the Temporal server, indicating a transient infrastructure/network timeout rather than a real code regression.
Confidence: 0.92

✅ Automatically retrying the workflow

View workflow run

@jgao54 jgao54 enabled auto-merge (squash) April 13, 2026 21:19
@jgao54 jgao54 merged commit 7473628 into main Apr 13, 2026
16 of 17 checks passed
@jgao54 jgao54 deleted the fix-changestream-creation-timeout branch April 13, 2026 21:35
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.

2 participants