Commits on Source (5)
-
Tristan Van Berkom authored
Fix stack traces discovered with ^C forceful termination. See merge request !1043
-
Tristan Van Berkom authored
This is not used anywhere outside of the Scheduler, currently only the Scheduler itself is allowed to queue a job at this level. If the highlevel business logic for automatic queueing of auxiliary jobs moves to another location, we can make this public again.
-
Tristan Van Berkom authored
When queuing the special cache management related cleanup and cache size jobs, we now treat these jobs as special and do the following: * Avoid queueing a cleanup/cache_size job if one is already queued We just drop redundantly queued jobs here. * Ensure that jobs of this type only run one at a time This could have been done with the Resources mechanics, however as these special jobs have the same properties and are basically owned by the Scheduler, it seemed more straight forward to handle the behaviors of these special jobs together. This fixes issue #753
-
Tristan Van Berkom authored
This changes the deepest callback from when a Job completes to propagate a JobStatus value instead of a simple boolean, and updates all of the effected code paths which used to receive a boolean to now handle the JobStatus values. This further improves the situation for issue #753, as now we avoid queueing cache size jobs for pull jobs which are skipped.
-
Tristan Van Berkom authored
This is redundant now that we report it through the JobStatus.
Showing
- buildstream/_frontend/app.py 3 additions, 3 deletionsbuildstream/_frontend/app.py
- buildstream/_scheduler/__init__.py 1 addition, 1 deletionbuildstream/_scheduler/__init__.py
- buildstream/_scheduler/jobs/__init__.py 1 addition, 0 deletionsbuildstream/_scheduler/jobs/__init__.py
- buildstream/_scheduler/jobs/cachesizejob.py 3 additions, 3 deletionsbuildstream/_scheduler/jobs/cachesizejob.py
- buildstream/_scheduler/jobs/cleanupjob.py 3 additions, 3 deletionsbuildstream/_scheduler/jobs/cleanupjob.py
- buildstream/_scheduler/jobs/elementjob.py 3 additions, 3 deletionsbuildstream/_scheduler/jobs/elementjob.py
- buildstream/_scheduler/jobs/job.py 31 additions, 21 deletionsbuildstream/_scheduler/jobs/job.py
- buildstream/_scheduler/queues/buildqueue.py 3 additions, 3 deletionsbuildstream/_scheduler/queues/buildqueue.py
- buildstream/_scheduler/queues/fetchqueue.py 3 additions, 2 deletionsbuildstream/_scheduler/queues/fetchqueue.py
- buildstream/_scheduler/queues/pullqueue.py 5 additions, 3 deletionsbuildstream/_scheduler/queues/pullqueue.py
- buildstream/_scheduler/queues/queue.py 8 additions, 11 deletionsbuildstream/_scheduler/queues/queue.py
- buildstream/_scheduler/queues/trackqueue.py 3 additions, 2 deletionsbuildstream/_scheduler/queues/trackqueue.py
- buildstream/_scheduler/scheduler.py 66 additions, 27 deletionsbuildstream/_scheduler/scheduler.py