-
Notifications
You must be signed in to change notification settings - Fork 217
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Fix YamlHelper for thread safety in multi-threaded environments. #2163
base: main
Are you sure you want to change the base?
Fix YamlHelper for thread safety in multi-threaded environments. #2163
Conversation
for more information, see https://pre-commit.ci
…ps://github.com/NiklasA/soda-core into feature/soda-xxx-fix-issue-with-multi-threading
…x-issue-with-multi-threading
Quality Gate passedIssues Measures |
Quality Gate passedIssues Measures |
hi @NiklasA, thanks for looking into this and thanks for your patience! I am thinking that opening a thread for this is a bit of an overkill. I looked into it myself and it seems to me that all that needs to happen is to have a new yaml instance instead of reusing the same one like this #2188 - my local testing confirms it working, so I merged it to unblock a release, please test it and get back to me. We can definitely revisit your proposal for the fix if it still does not fix the issue |
Hi @m1n0 , thank you for your detailed response! We’ve tested your approach and compared it to our existing implementation. While your solution works well, we’ve observed that its performance is approximately 10% slower than our current approach (within our existing load tests). For context, we are using the We appreciate your input and are happy to discuss potential optimizations or alternative approaches that might bridge this gap. Let us know your thoughts! Best regards |
FYI: @pascalrosenberger, @ManbirP and @SebastianHirsch |
Overview
This pull request addresses the thread safety issue with YamlHelper as reported in Issue #2064. The modifications ensure that YamlHelper can be safely used in multi-threaded environments, preventing potential data races and concurrency errors.
@m1n0 Can you please review the changes and provide feedback or approve the merge if everything looks in order. Thank you!