-
Notifications
You must be signed in to change notification settings - Fork 350
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
feat: lake.lock
file for builds
#2385
Conversation
068334d
to
34629b0
Compare
I am currently stumped. I have no clue why this or #2384 is failing. The do not fail on my machine (in MSY?S2 or WSL), so it likely has to be some difference between how the CI and my local machine handle background processes. |
You made an ABI breaking change to a type in Init, you most likely need to set |
@digama0 That does not appear to be the bug. Looking at the logs, lake is working fine (the lock file is generated and waiting on properly). The test is simply not terminating once the script finishes for some reason. FYI, I think the reason this did not cause ABI breakage is that |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This looks good but I'd also like to hear about potential future plans. Do we believe we'll want to end up with granular locking, e.g. per-module? What would that look like?
Are we sure it's the end of the script and not |
I am not yet, but that is what I plan on testing today. However, my reason for believing it is the end of the script is that Lake background job does successfully resume, acquire the lock and begin building (as can be seen from the |
While theoretically useful, I am incline to avoid this. If the watchdog is merged into Lake, one lock for the server is fine. For the CLI, invoking multiple lake builds in parallel is already a bad idea (as it prevents internal build deduplication and adds Lake workspace overhead). Thus, a single per-Workspace build lock file seems sufficient. |
@Kha Update: It appears the problem is the process substitution. CTest is waiting on it finish before completing the test. |
A feature frequently requested on Zulip (c.f. 1, 2, 3).