From: Peter Kjellerstedt Date: Sat, 11 Jan 2020 03:28:43 +0000 (+0100) Subject: sstate.bbclass: Only show sstate mirror progress bar for >= 100 objects X-Git-Tag: uninative-2.8~435 X-Git-Url: https://code.ossystems.io/gitweb?a=commitdiff_plain;h=114340e8d393cf60d0a596cb0800cf1b7fd198df;p=openembedded-core.git sstate.bbclass: Only show sstate mirror progress bar for >= 100 objects With the introduction of the hash equivalence server, the progress bar for "Checking sstate mirror object availability" is shown repeatedly. Most of the times the number of objects scanned is very low and the progress bar completes almost immediately. To avoid all these unnecessary progress bars, set the minimum number of objects to 100 before the progress bar is shown. Signed-off-by: Peter Kjellerstedt Signed-off-by: Ross Burton --- diff --git a/meta/classes/sstate.bbclass b/meta/classes/sstate.bbclass index b4ffffcd98..faa6470450 100644 --- a/meta/classes/sstate.bbclass +++ b/meta/classes/sstate.bbclass @@ -934,9 +934,11 @@ def sstate_checkhashes(sq_data, d, siginfo=False, currentcount=0, summary=True, missed.add(tid) bb.debug(2, "SState: Unsuccessful fetch test for %s" % srcuri) pass - bb.event.fire(bb.event.ProcessProgress(msg, len(tasklist) - thread_worker.tasks.qsize()), d) + if len(tasklist) >= min_tasks: + bb.event.fire(bb.event.ProcessProgress(msg, len(tasklist) - thread_worker.tasks.qsize()), d) tasklist = [] + min_tasks = 100 for tid in sq_data['hash']: if tid in found: continue @@ -945,8 +947,9 @@ def sstate_checkhashes(sq_data, d, siginfo=False, currentcount=0, summary=True, tasklist.append((tid, sstatefile)) if tasklist: - msg = "Checking sstate mirror object availability" - bb.event.fire(bb.event.ProcessStarted(msg, len(tasklist)), d) + if len(tasklist) >= min_tasks: + msg = "Checking sstate mirror object availability" + bb.event.fire(bb.event.ProcessStarted(msg, len(tasklist)), d) import multiprocessing nproc = min(multiprocessing.cpu_count(), len(tasklist)) @@ -960,7 +963,8 @@ def sstate_checkhashes(sq_data, d, siginfo=False, currentcount=0, summary=True, pool.wait_completion() bb.event.disable_threadlock() - bb.event.fire(bb.event.ProcessFinished(msg), d) + if len(tasklist) >= min_tasks: + bb.event.fire(bb.event.ProcessFinished(msg), d) # Likely checking an individual task hash again for multiconfig sharing of sstate tasks so skip reporting if len(sq_data['hash']) == 1: