-
Notifications
You must be signed in to change notification settings - Fork 132
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
[BUG] IO error #402
Comments
You can check the daemon log by running You might have to do some debugging yourself, as I no longer own a Windows machine. I assume that this has something to do with the new way processes are handled in v3.0, but I'm not sure what could have caused this. |
Thanks for the fast reply!
I'm a bit busy the next 2 weeks, but once I find time I'll look into this more. |
The error comes somewhere from inside this function. Though I'm really not sure what the problem is. "The wait operation timed out" seems to be a super generic error for all kinds of windows process problems. Are you by any chance familiar with Rust and Windows systems programming? This probably needs a bit of a deep dive and a proper debugging session by someone with a bit of experience. |
A bit of context: The error we see appears when Over here we check if a child has finished via the The error is then forwarded to the handle_finished_tasks function, where I luckily added some error handling code for this scenario. Since v3.0.0, Pueue no longer uses the stdlib implementation of The custom windows implementation for |
I'm familiar with rust and have used the windows api a decent amount in rust before, so I can give it a shot, but I'm not home for the next few days. |
I checked out the windows docs now too and I think the following has been happening: What I mentioned in my last comment should be correct, This is just what I came up with now, will test in a few days and make a PR if this was indeed the issue. |
Awesome, thanks for the quick follow up! I'll try to tackle the test suite refactoring soon, which will hopefully be a big step for running the tests on all supported platforms :) |
I submitted this PR now to the command-group crate. Pueue seems to work as expected on windows with this change! |
Dependency is bumped and point release is published :) |
Any tasks that aren't completed very quickly throw an io error.
Steps to reproduce the bug
For example running the following as a task
pueue add cargo run
, yields the error for me.Less than 3 seconds doesn't always throw the error, although I've tested other tasks that take less than 3 seconds and still throw the error consistently, for example
Start-Sleep -Seconds 1
in powershell.Expected behavior
No errors.
Logs/Output
The error is described as
some IO error. Check daemon log.
when calling pueue status and the daemon log is[ERROR] Child 1 failed with io::Error: Os { code: 258, kind: TimedOut, message: "The wait operation timed out." }
(not sure if this is the daemon log).Additional context
The text was updated successfully, but these errors were encountered: