-
Notifications
You must be signed in to change notification settings - Fork 181
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
Add periodic checks with sanitizers #2763
Conversation
54a74fb
to
175bb9f
Compare
After the discussion today, I think it may make sense to wait for this PR to be merged until most issues spotted by the sanitizers have been fixed on dev. |
I think this is mostly ready to be merged. All of issues mentioned in #2772 seems to have fixed apart from #2779. I think that's still waiting a review from @jdtournier. EDIT: never mind, it seems that TSAN has spotted other bugs, so we should fix those too. |
All tests are now passing, so I think this is now mergeable. |
Sanitizers are very valuable tools to detect problems by instrumenting code for runtime bug detection. They have already proven useful for us as demonstrated in #2760, #2761 and #2755.
This PR adds a new GitHub Actions workflow that runs our unit and binary tests compiled with sanitizers provided by LLVM each night. It'd be rather computationally expensive to run these checks on pull requests, but my tests show that they are fast enough to be run once a day (with caching enabled).
Note that this PR must be merged into
master
since scheduled GitHub Actions only run on the default or base branch.