-
-
Notifications
You must be signed in to change notification settings - Fork 269
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
precompile: respect and report cache pidlocking #3519
precompile: respect and report cache pidlocking #3519
Conversation
Is it really the package version that is locked on? It's the filename no (which doesn't include the version) but has a mix of other things like the project, sysimage, etc. |
Specifically it's the sourcepath. |
Okay so that means that two julias with e.g. different sysimage that are precompiling will wait on each other even if they would produce a different precompile file in the end and there wouldn't really be a need for a lock, or? With preferences, I don't think you even know what the end resulting file name will be until the process is done :/ |
Right. I don't think we can be specific to the cachefile because of all that |
I will also raise my earlier point again. We need to make this robust against user-interuption. Or at least make it obvious to the user how to cleanup after interruptions. pacman as an example tells me which file it tried to acquire and if I think the other process was interrupted that I should remove it |
Do you mean in addition to the stale detection stuff that mkpidlock does automatically? |
Turns out that was disabled by accident. Fixed in JuliaLang/julia#50214 |
29281d0
to
ef17e2b
Compare
3b334a1
to
ca07f97
Compare
ca07f97
to
56e8889
Compare
This has addressed feedback and has tests, and I want to work on Pkg.precompile stuff after this so I'm going to merge and bump the stdlib, and then add the news to base NEWS |
Follow-up to JuliaLang/julia#49052
Depends on
Base.isprecompiled(pkg::PkgId)
julia#50218