-
Notifications
You must be signed in to change notification settings - Fork 36.6k
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
depends cache is not invalidated when the compiler changes #17248
Comments
For example, just one of the bugs I ran into due to this: #17233 (comment) |
How much time penalty we get by removing these two lines? https://github.com/bitcoin/bitcoin/blob/master/.travis.yml#L35:L36 We could also mount the ccache dir to the dockers and install+run ccache in the dockers. |
What would that do? |
even with ccache? |
I don't think ccache really helps that much with building qt. Mind that the qt build first builds a build system (qmake) for the host, then uses that to build the library for the target. |
0c63187 ci: Limit cache size regardless of NO_DEPENDS (Hennadii Stepanov) Pull request description: Close #18666. ACKs for top commit: MarcoFalke: ACK 0c63187 . Depends has ccache disabled anyway and is cached regardless of whether ccache is there or not, see #17248 Tree-SHA512: b1bf98be0f844b4704abd177841b014f3900be8160496f0d12596310db607b4f544547e8c3cbfcf17c086a78afd251653363f3dd467b769ac0062bc19adc8144
0c63187 ci: Limit cache size regardless of NO_DEPENDS (Hennadii Stepanov) Pull request description: Close bitcoin#18666. ACKs for top commit: MarcoFalke: ACK 0c63187 . Depends has ccache disabled anyway and is cached regardless of whether ccache is there or not, see bitcoin#17248 Tree-SHA512: b1bf98be0f844b4704abd177841b014f3900be8160496f0d12596310db607b4f544547e8c3cbfcf17c086a78afd251653363f3dd467b769ac0062bc19adc8144
FYI. On the DrahtBot guix build, I am caching depends under a key that is equal to the hash of the whole guix tree. The same can probably not be done for depends and only to a lesser extent to gitian. |
Following up on this after the merge of #20629 For Guix builds5200929 ensures that the For non-Guix builds4c7d418 adds a lot of toolchain information to the id string in order to trigger cache invalidation should any of it changes. Not as perfect as the situation with Guix, but I believe it's a good enough approximation for most use-cases. |
kewl, thx. Closing for now |
The depends cache has no mechanism of being invalidated when the cpu architecture, the operating system, or even just the compiler changes from down under it.
I think long term we should be moving to proper compiler caches like ccache (#17103) or guix
The text was updated successfully, but these errors were encountered: