-
Notifications
You must be signed in to change notification settings - Fork 2.4k
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
Workers quit before all pending tasks are done #222
Comments
Yeah this is a feature/bug depending on how you look at it. We thought about doing some kind of sleep/retry or even long-polling. However we thought it was easier to just trigger the job repeatedly until it builds. Typically we run all our workflows from cron every minute. If the same workflow is already running, it will just exit. If nothing is running, it will traverse the dependency graph again and try to schedule everything. Sleep/retry should be fairly easy to implement though, but I think it should be configurable. There's a risk you might create a lot of spinning processes. There are also some corner cases like you could end up having 100 processes waiting for |
Break up worker#run into smaller methods and give each a meaningful name so it's easier to figure out what it's doing and allow code reuse. Collapse duplicate if constructs.
Oops forgot to close this. Added a flag to work around this in #225. |
... and as a result some tasks are never run and eventually expired.
Consider the following set of tasks:
Submit
Block
, then in another terminal submitDep
whileBlock
is running.Now visit the scheduler's web UI at http://localhost:8082. We see that
Dep
is still pending, but it never gets run because all workers have exited.I believe this is related to the following comment in
luigi/worker.py
.The text was updated successfully, but these errors were encountered: