Skip to content

Stop ConfigReloader first to avoid data race#43201

Merged
antonio2368 merged 1 commit intomasterfrom
fix-tsan-race-config-reload
Nov 14, 2022
Merged

Stop ConfigReloader first to avoid data race#43201
antonio2368 merged 1 commit intomasterfrom
fix-tsan-race-config-reload

Conversation

@antonio2368
Copy link
Copy Markdown
Member

@antonio2368 antonio2368 commented Nov 13, 2022

Changelog category (leave one):

  • Not for changelog (changelog entry is not required)

TSan caught a race during shutdown: https://s3.amazonaws.com/clickhouse-test-reports/43192/6599016aec6998be11decfb69c5c64802298028c/integration_tests__tsan__%5B2/4%5D.html
During termination, first SCOPE_EXIT started which stops servers. ConfigReloader recreates servers (because of the test) in parallel - it's stopped only in the second SCOPE_EXIT. Because of that, the destructor is called on a server that is not stopped.
I don't think there is anything critical here or a way for user to notice this so I didn't put any changelog.

Information about CI checks: https://clickhouse.com/docs/en/development/continuous-integration/

@antonio2368 antonio2368 merged commit 1635d12 into master Nov 14, 2022
@antonio2368 antonio2368 deleted the fix-tsan-race-config-reload branch November 14, 2022 10:58
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

pr-not-for-changelog This PR should not be mentioned in the changelog

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants