Skip to content

fix: prevent WebsocketSyncDataService from shutting down shared timer (#6785) - #6982

Merged
Aias00 merged 3 commits into
apache:masterfrom
yykaue:fix-6785-preserve-shared-timer
Aug 26, 2026
Merged

fix: prevent WebsocketSyncDataService from shutting down shared timer (#6785)#6982
Aias00 merged 3 commits into
apache:masterfrom
yykaue:fix-6785-preserve-shared-timer

Conversation

@yykaue

@yykaue yykaue commented Aug 24, 2026

Copy link
Copy Markdown
Contributor

What this PR does

  • Use a private wheel timer for WebsocketSyncDataService.
  • Shut down only the service-owned timer during service closure.
  • Cancel WebSocket client timer tasks and stop pending reconnect attempts.
  • Ensure HierarchicalWheelTimer terminates its worker thread correctly on shutdown.
  • Add regression tests covering timer isolation and WebSocket lifecycle management.

Why

WebsocketSyncDataService.close() previously shut down the shared timer obtained from WheelTimerFactory.getSharedTimer(). This could break other components using the same timer, such as FailbackRegistryRepository.

Closes #6785.

@Aias00, could you please help review this PR? Thank you!

@Aias00 Aias00 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.

Reviewed the changes and did not find blocking issues.

@Aias00
Aias00 merged commit 58dd5a5 into apache:master Aug 26, 2026
40 checks passed
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.

[BUG] WebsocketSyncDataService.close() shuts down the shared WheelTimerFactory timer, breaking FailbackRegistryRepository

2 participants