commit: 528bec60c4c7b32c2545d91ba4ee91e543b0d5c9
Author: Zac Medico <zmedico <AT> gentoo <DOT> org>
AuthorDate: Thu Aug 2 18:32:58 2018 +0000
Commit: Zac Medico <zmedico <AT> gentoo <DOT> org>
CommitDate: Thu Aug 2 18:43:58 2018 +0000
URL: https://gitweb.gentoo.org/proj/portage.git/commit/?id=528bec60
Scheduler: cancel job delay timeout after main loop (bug 662668)
This fixes the following error during emerge --keep-going
dependency calculation:
Exception in callback PollScheduler._schedule()
handle: <TimerHandle when=44692.1015056609 PollScheduler._schedule()>
Traceback (most recent call last):
File "/usr/lib64/python3.6/asyncio/events.py", line 145, in _run
self._callback(*self._args)
File "/usr/lib64/python3.6/site-packages/_emerge/PollScheduler.py", line 154,
in _schedule
self._schedule_tasks()
File "/usr/lib64/python3.6/site-packages/_emerge/Scheduler.py", line 1605, in
_schedule_tasks
self._keep_scheduling() or self._main_exit.done()):
AttributeError: 'NoneType' object has no attribute 'done'
Reported-by: Rick Farina <zerochaos <AT> gentoo.org>
Bug: https://bugs.gentoo.org/662668
lib/_emerge/Scheduler.py | 3 +++
1 file changed, 3 insertions(+)
diff --git a/lib/_emerge/Scheduler.py b/lib/_emerge/Scheduler.py
index 422308184..49b376281 100644
--- a/lib/_emerge/Scheduler.py
+++ b/lib/_emerge/Scheduler.py
@@ -1436,6 +1436,9 @@ class Scheduler(PollScheduler):
if self._main_loadavg_handle is not None:
self._main_loadavg_handle.cancel()
self._main_loadavg_handle = None
+ if self._job_delay_timeout_id is not None:
+ self._job_delay_timeout_id.cancel()
+ self._job_delay_timeout_id = None
def _choose_pkg(self):
"""