-
Notifications
You must be signed in to change notification settings - Fork 216
[Explicit Module Builds] Use the new batch scanning mode for versioned PCM clang modele re-scan #236
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
Conversation
|
I haven't been able to reproduce the |
|
Does not seem that the CI failure is a code-interaction issue, it just seems to intermittently happen. |
|
Ah. The bug seems to be test-specific. Across different tests, instances of |
…d PCM clang modele re-scan swiftlang/swift#33569 introduced a batch dependency scanning mode to save up on the overhead of clang instance creation. This patch switches `swift-driver` over to using the new batch mode instead of generating individual `-scan-clang-dependencies` jobs for each re-scan.
705f7c6 to
b1b1d62
Compare
|
@swift-ci please test |
1 similar comment
|
@swift-ci please test |
That's some impressive debugging 😄 . Could this cause a problem for SPM builds with multiple targets as well, since it creates multiple drivers? Maybe each driver should create its own subdirectory for temporary files. |
Yeah, I thought about this case as well, but I do not think we can run into this scenario with SPM because it does not allow targets with the same name, and we use the target name to create this file. Furthermore, we would need to be using these Driver instances concurrently to run into trouble. Still, I think it might be a good idea to have each driver instance have its own temporary subdirectory, yeah. |
|
@swift-ci please test |
Another attempt at landing #225.
----------- Original Description -----------
swiftlang/swift#33569 introduced a batch dependency scanning mode to save up on the overhead of clang instance creation.
This patch switches
swift-driverover to using the new batch mode instead of generating individual-scan-clang-dependenciesjobs for each re-scan.