From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) by finch.gentoo.org (Postfix) with ESMTP id 1D6E5138010 for ; Mon, 8 Oct 2012 20:44:58 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id 353E1E0330; Mon, 8 Oct 2012 20:44:49 +0000 (UTC) Received: from smtp.gentoo.org (smtp.gentoo.org [140.211.166.183]) by pigeon.gentoo.org (Postfix) with ESMTP id 9936BE0330 for ; Mon, 8 Oct 2012 20:44:48 +0000 (UTC) Received: from hornbill.gentoo.org (hornbill.gentoo.org [94.100.119.163]) (using TLSv1 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTPS id 0106333C878 for ; Mon, 8 Oct 2012 20:44:48 +0000 (UTC) Received: from localhost.localdomain (localhost [127.0.0.1]) by hornbill.gentoo.org (Postfix) with ESMTP id 95410E5436 for ; Mon, 8 Oct 2012 20:44:46 +0000 (UTC) From: "Zac Medico" To: gentoo-commits@lists.gentoo.org Content-Transfer-Encoding: 8bit Content-type: text/plain; charset=UTF-8 Reply-To: gentoo-dev@lists.gentoo.org, "Zac Medico" Message-ID: <1349729062.91b253ba2f249b19d6cc68f51cd6b909a765a715.zmedico@gentoo> Subject: [gentoo-commits] proj/portage:master commit in: pym/portage/util/_async/, pym/_emerge/ X-VCS-Repository: proj/portage X-VCS-Files: pym/_emerge/PollScheduler.py pym/_emerge/Scheduler.py pym/portage/util/_async/AsyncScheduler.py X-VCS-Directories: pym/portage/util/_async/ pym/_emerge/ X-VCS-Committer: zmedico X-VCS-Committer-Name: Zac Medico X-VCS-Revision: 91b253ba2f249b19d6cc68f51cd6b909a765a715 X-VCS-Branch: master Date: Mon, 8 Oct 2012 20:44:46 +0000 (UTC) Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-commits@lists.gentoo.org X-Archives-Salt: c7ae9e6e-4be8-4428-afea-933374d0b201 X-Archives-Hash: ecb8e52c6f71f387a58b83dde262f9cf commit: 91b253ba2f249b19d6cc68f51cd6b909a765a715 Author: Zac Medico gentoo org> AuthorDate: Mon Oct 8 20:44:22 2012 +0000 Commit: Zac Medico gentoo org> CommitDate: Mon Oct 8 20:44:22 2012 +0000 URL: http://git.overlays.gentoo.org/gitweb/?p=proj/portage.git;a=commit;h=91b253ba PollScheduler: disable default _loadavg_latency Move the 30 second default to the Scheduler class, since that's the only place that it's currently needed (all other schedulers have relatively short-running jobs). --- pym/_emerge/PollScheduler.py | 2 +- pym/_emerge/Scheduler.py | 7 ++++++- pym/portage/util/_async/AsyncScheduler.py | 4 +++- 3 files changed, 10 insertions(+), 3 deletions(-) diff --git a/pym/_emerge/PollScheduler.py b/pym/_emerge/PollScheduler.py index 1a81e2d..d02b0da 100644 --- a/pym/_emerge/PollScheduler.py +++ b/pym/_emerge/PollScheduler.py @@ -15,7 +15,7 @@ from _emerge.getloadavg import getloadavg class PollScheduler(object): # max time between loadavg checks (milliseconds) - _loadavg_latency = 30000 + _loadavg_latency = None def __init__(self, main=False, event_loop=None): """ diff --git a/pym/_emerge/Scheduler.py b/pym/_emerge/Scheduler.py index 40033c2..3b55b2b 100644 --- a/pym/_emerge/Scheduler.py +++ b/pym/_emerge/Scheduler.py @@ -66,6 +66,9 @@ if sys.hexversion >= 0x3000000: class Scheduler(PollScheduler): + # max time between loadavg checks (milliseconds) + _loadavg_latency = 30000 + # max time between display status updates (milliseconds) _max_display_latency = 3000 @@ -1339,7 +1342,9 @@ class Scheduler(PollScheduler): def _main_loop(self): term_check_id = self._event_loop.idle_add(self._termination_check) loadavg_check_id = None - if self._max_load is not None: + if self._max_load is not None and \ + self._loadavg_latency is not None and \ + (self._max_jobs is True or self._max_jobs > 1): # We have to schedule periodically, in case the load # average has changed since the last call. loadavg_check_id = self._event_loop.timeout_add( diff --git a/pym/portage/util/_async/AsyncScheduler.py b/pym/portage/util/_async/AsyncScheduler.py index c6a37f5..182e19e 100644 --- a/pym/portage/util/_async/AsyncScheduler.py +++ b/pym/portage/util/_async/AsyncScheduler.py @@ -66,7 +66,9 @@ class AsyncScheduler(AsynchronousTask, PollScheduler): def _start(self): self._term_check_id = self._event_loop.idle_add(self._termination_check) - if self._max_load is not None: + if self._max_load is not None and \ + self._loadavg_latency is not None and \ + (self._max_jobs is True or self._max_jobs > 1): # We have to schedule periodically, in case the load # average has changed since the last call. self._loadavg_check_id = self._event_loop.timeout_add(