-
Notifications
You must be signed in to change notification settings - Fork 22
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
Each GAP.jl session uses fresh dir for mutable GAP root #1079
base: master
Are you sure you want to change the base?
Conversation
cbcc0db
to
de7bed9
Compare
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## master #1079 +/- ##
==========================================
+ Coverage 74.54% 74.57% +0.02%
==========================================
Files 55 55
Lines 4588 4593 +5
==========================================
+ Hits 3420 3425 +5
Misses 1168 1168
|
I compared de7bed9 (tip of this PR) to 0412fa6 (the master commit this branch is based on) w.r.t. The only thing I am a little bit worried about is that some OSs may clear the |
Oh, good point about stuff in So how about instead we keep the scratch space and create the temp dirs in it ( |
I don't understand what you would want to use mktempdir for? Shouldn't we let Scratch.jl create these directories using `get_scratch!`? This way, Scratch.jl would take care of garbage collecting old unused folders.
…On December 11, 2024 9:27:45 PM GMT+01:00, Max Horn ***@***.***> wrote:
Oh, good point about stuff in `/tmp` or `/var/tmp` potentially being deleted by cron jobs. That's indeed a thing.
So how about instead we keep the scratch space and create the temp dirs in it (`mktempdir` has an option for that). The scratch space name then could stay relatively fixed. The tempdir names could consist of the current date&time in ISO8601 format followed by a random string (I am suggesting to put in time because that way it's trivial to spot any such dirs that should have been deleted but were not e.g. due to a crash. It might also help recognize the dirs for the "long running" jobs).
--
Reply to this email directly or view it on GitHub:
#1079 (comment)
You are receiving this because you commented.
Message ID: ***@***.***>
|
I want a different directory for each julia process loading GAP.jl. Scratchspaces alone do not provide for that. |
No, it does. If you call |
de7bed9
to
d8459a9
Compare
d8459a9
to
830e8c1
Compare
@lgoettgens updated now as discussed on #1083 |
Why did you drop the changes in https://github.com/oscar-system/GAP.jl/compare/de7bed9931a62d2bcd003442268379f59359d274..d8459a9b7730af2650c491fe0b1e709f6b756d1c#diff-68a57defa4eef4087b4707a47026264bd208020e98af8639ab658853d0f1f35d (packages.jl)? It seems to me that this could be related to the failures here |
Nope the failure is caused by the use of our Gotta think a bit about it... |
Resolves #993 -- I measured that it is not slower than the current approach which fully regenerates the GAP root each time anyway.
Specifically on my test machines it takes about 0.09 - 0.11 seconds. Which is not nothing, but still relatively little.
An alternative would be to keep using a scratch space but be more aggressive in switching to a new one when anything changes, i.e. incorporating a hash value into its name that involves more components, such as
setup.jl