Skip to content
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

Use sanitizers in travis #968

Closed
wants to merge 2 commits into from
Closed

Conversation

reuk
Copy link
Contributor

@reuk reuk commented May 25, 2017

Fixes #832

I don't have a way of testing this locally, please don't review until the CI is showing all green.

@reuk reuk force-pushed the use-sanitizers-in-travis branch 23 times, most recently from 79623b5 to 3e52d0b Compare May 28, 2017 20:00
@reuk reuk force-pushed the use-sanitizers-in-travis branch 2 times, most recently from 22a2ee5 to 0d692b0 Compare May 28, 2017 20:29
@reuk reuk force-pushed the use-sanitizers-in-travis branch from 0d692b0 to ecba3c0 Compare May 28, 2017 21:16
@reuk
Copy link
Contributor Author

reuk commented May 28, 2017

This works now, although it does cause some of the builds to time out. Not sure how to proceed.

@peterschrammel
Copy link
Member

peterschrammel commented Jul 13, 2017

@reuk, I'd suggest to enable it only for one of the builds. Each build taking 60min doesn't look viable.

@reuk
Copy link
Contributor Author

reuk commented Jul 15, 2017

I think the problem is that the failing builds use both the undefined-behaviour and address sanitizers, while the succeeding builds use only the address sanitizer. Because each sanitizer slows down execution a bit, the builds with more sanitizers take longer than 50 minutes, at which point they time-out. However, it's important that we run all the tests with sanitizers on, as sanitizers only find errors in code which is actually run.

Even if all sanitizers are enabled just for a single build, that build will still time-out. Therefore, I suggest either:

  • Find a way to increase the timeout, and enable all sanitizers on a single build, or
  • Run the sanitizers one at a time (that is, add some extra configurations to the build matrix), or
  • Use build-stages to separate the build + test steps, which would hopefully give us 50 mins for each build, and an additional 50 mins for running tests.

@tautschnig tautschnig changed the base branch from test-gen-support to develop August 22, 2017 12:24
@reuk
Copy link
Contributor Author

reuk commented Aug 23, 2017

Still waiting for guidance on this. I think it's really important to use the sanitizers in Travis, but I'm not sure about the best way to proceed.

@tautschnig
Copy link
Collaborator

I'd say build stages should be the way to go, in fact irrespective of the sanitizers. If that solves the timeout issue then that would of course be desirable, else one of the other options you proposed will need to be applied. Would you be able to invest time to implement build stages support?

@reuk
Copy link
Contributor Author

reuk commented Aug 23, 2017

I have this afternoon, but I don't think this will be practical to fix today because Travis is so busy, due to the bug squashing party.

@reuk reuk closed this Nov 12, 2017
@tautschnig
Copy link
Collaborator

This is superseded by #1624.

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.

3 participants