Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 889224

Summary: sys-apps/portage: add a toggle for "load average" output
Product: Portage Development Reporter: Michael Jones <gentoo>
Component: Core - Interface (emerge)Assignee: Portage team <dev-portage>
Status: UNCONFIRMED ---    
Severity: enhancement    
Priority: Normal    
Version: unspecified   
Hardware: All   
OS: Linux   
See Also: https://bugs.gentoo.org/show_bug.cgi?id=865841
Whiteboard:
Package list:
Runtime testing required: ---

Description Michael Jones 2022-12-31 21:08:19 UTC
If --nospinner is not the intended option for turning that output off, can an option to prevent printing "Load avg: 3.00, 4.02, 4.84" be provided?

I want all of the other output that I currently have, i just want to turn off the load average output.

This behavior change would make emerge much easier to use with tools like jenkins that try to display the console output in a webbrowser.

Reproducible: Always
Comment 1 John Helmert III archtester Gentoo Infrastructure gentoo-dev Security 2022-12-31 21:11:59 UTC
       --nospinner
              Disables the spinner for the session.  The spinner is active when the terminal device is determined to be a TTY.  This flag disables it regardless.

Not sure why that would be related to the load average output? See also bug 865841.
Comment 2 Michael Jones 2022-12-31 22:28:07 UTC
Because it generates output that looks like:

Load avg: 0.96, 2.62, 3.30
>>> Jobs: 174 of 264 complete, 1 running            Load avg: 0.96, 2.62, 3.30
>>> Jobs: 174 of 264 complete, 1 running            Load avg: 0.96, 2.59, 3.29
>>> Jobs: 174 of 264 complete, 1 running            Load avg: 0.96, 2.59, 3.29
>>> Jobs: 174 of 264 complete, 1 running            Load avg: 1.04, 2.58, 3.28
>>> Jobs: 174 of 264 complete, 1 running            Load avg: 1.04, 2.55, 3.27
>>> Jobs: 174 of 264 complete, 1 running            Load avg: 1.04, 2.55, 3.27
>>> Jobs: 174 of 264 complete, 1 running            Load avg: 1.04, 2.53, 3.25
>>> Jobs: 174 of 264 complete, 1 running            Load avg: 1.04, 2.53, 3.25
>>> Jobs: 174 of 264 complete, 1 running            Load avg: 1.03, 2.50, 3.24
>>> Jobs: 174 of 264 complete, 1 running            Load avg: 1.03, 2.48, 3.23
>>> Jobs: 174 of 264 complete, 1 running            Load avg: 1.03, 2.48, 3.23
>>> Jobs: 174 of 264 complete, 1 running            Load avg: 1.03, 2.45, 3.22
>>> Jobs: 174 of 264 complete, 1 running            Load avg: 1.03, 2.45, 3.22
>>> Jobs: 174 of 264 complete, 1 running            Load avg: 1.02, 2.43, 3.20
>>> Jobs: 174 of 264 complete, 1 running            Load avg: 1.02, 2.40, 3.19
>>> Jobs: 174 of 264 complete, 1 running            Load avg: 1.02, 2.40, 3.19
>>> Jobs: 174 of 264 complete, 1 running            Load avg: 1.02, 2.38, 3.18
>>> Jobs: 174 of 264 complete, 1 running            Load avg: 1.02, 2.38, 3.18
>>> Jobs: 174 of 264 complete, 1 running            Load avg: 1.02, 2.36, 3.17
>>> Jobs: 174 of 264 complete, 1 running            Load avg: 1.02, 2.33, 3.16
>>> Jobs: 174 of 264 complete, 1 running            Load avg: 1.02, 2.33, 3.16
>>> Jobs: 174 of 264 complete, 1 running            Load avg: 1.02, 2.31, 3.14
>>> Jobs: 174 of 264 complete, 1 running            Load avg: 1.02, 2.31, 3.14
>>> Jobs: 174 of 264 complete, 1 running            Load avg: 1.01, 2.29, 3.13
>>> Jobs: 174 of 264 complete, 1 running            Load avg: 1.01, 2.27, 3.12
>>> Jobs: 174 of 264 complete, 1 running            Load avg: 1.01, 2.27, 3.12
>>> Jobs: 174 of 264 complete, 1 running            Load avg: 1.01, 2.25, 3.11
>>> Jobs: 174 of 264 complete, 1 running            Load avg: 1.01, 2.25, 3.11
>>> Jobs: 174 of 264 complete, 1 running            Load avg: 0.93, 2.21, 3.09
>>> Jobs: 174 of 264 complete, 1 running            Load avg: 0.94, 2.19, 3.08
>>> Jobs: 174 of 264 complete, 1 running            Load avg: 0.94, 2.19, 3.08
>>> Jobs: 174 of 264 complete, 1 running            Load avg: 0.94, 2.17, 3.07
>>> Jobs: 174 of 264 complete, 1 running            Load avg: 0.94, 2.17, 3.07
>>> Jobs: 174 of 264 complete, 1 running            Load avg: 0.95, 2.15, 3.06
>>> Jobs: 174 of 264 complete, 1 running            Load avg: 1.19, 2.18, 3.06
>>> Jobs: 174 of 264 complete, 1 running            Load avg: 1.19, 2.18, 3.06
>>> Jobs: 174 of 264 complete, 1 running            Load avg: 1.17, 2.16, 3.05
>>> Jobs: 174 of 264 complete, 1 running            Load avg: 1.17, 2.16, 3.05
>>> Jobs: 174 of 264 complete, 1 running            Load avg: 1.16, 2.14, 3.04
>>> Jobs: 174 of 264 complete, 1 running            Load avg: 1.15, 2.12, 3.03
>>> Jobs: 174 of 264 complete, 1 running            Load avg: 1.15, 2.12, 3.03
>>> Jobs: 174 of 264 complete, 1 running            Load avg: 1.06, 2.09, 3.01
>>> Jobs: 174 of 264 complete, 1 running            Load avg: 1.06, 2.09, 3.01
>>> Jobs: 174 of 264 complete, 1 running            Load avg: 1.05, 2.07, 3.00
>>> Jobs: 174 of 264 complete, 1 running            Load avg: 1.05, 2.05, 2.99
>>> Jobs: 174 of 264 complete, 1 running            Load avg: 1.05, 2.05, 2.99
>>> Jobs: 174 of 264 complete, 1 running            Load avg: 1.04, 2.03, 2.98
>>> Jobs: 174 of 264 complete, 1 running            Load avg: 1.04, 2.03, 2.98
>>> Jobs: 174 of 264 complete, 1 running            Load avg: 1.12, 2.03, 2.97
>>> Jobs: 174 of 264 complete, 1 running            Load avg: 1.11, 2.01, 2.96
>>> Jobs: 174 of 264 complete, 1 running            Load avg: 1.11, 2.01, 2.96
>>> Jobs: 174 of 264 complete, 1 running            Load avg: 1.10, 2.00, 2.95
>>> Jobs: 174 of 264 complete, 1 running            Load avg: 1.10, 2.00, 2.95
>>> Jobs: 174 of 264 complete, 1 running            Load avg: 1.09, 1.98, 2.94
>>> Jobs: 174 of 264 complete, 1 running            Load avg: 1.08, 1.96, 2.93
>>> Jobs: 174 of 264 complete, 1 running            Load avg: 1.08, 1.96, 2.93
>>> Jobs: 174 of 264 complete, 1 running            Load avg: 1.08, 1.95, 2.92
>>> Jobs: 174 of 264 complete, 1 running            Load avg: 1.08, 1.95, 2.92
>>> Jobs: 174 of 264 complete, 1 running            Load avg: 1.07, 1.93, 2.91
>>> Jobs: 174 of 264 complete, 1 running            Load avg: 1.07, 1.92, 2.90
>>> Jobs: 174 of 264 complete, 1 running            Load avg: 1.07, 1.92, 2.90
>>> Jobs: 174 of 264 complete, 1 running            Load avg: 1.06, 1.90, 2.89
>>> Jobs: 174 of 264 complete, 1 running            Load avg: 1.06, 1.90, 2.89
>>> Jobs: 174 of 264 complete, 1 running            Load avg: 1.06, 1.88, 2.88
>>> Jobs: 174 of 264 complete, 1 running            Load avg: 2.25, 2.12, 2.95
>>> Jobs: 174 of 264 complete, 1 running            Load avg: 2.25, 2.12, 2.95
>>> Jobs: 174 of 264 complete, 1 running            Load avg: 2.15, 2.10, 2.94
>>> Jobs: 174 of 264 complete, 1 running            Load avg: 2.15, 2.10, 2.94
>>> Jobs: 174 of 264 complete, 1 running            Load avg: 2.06, 2.08, 2.93
>>> Jobs: 174 of 264 complete, 1 running            Load avg: 3.34, 2.35, 3.01
>>> Jobs: 174 of 264 complete, 1 running            Load avg: 3.34, 2.35, 3.01
>>> Jobs: 174 of 264 complete, 1 running
Comment 3 Michael Jones 2022-12-31 22:29:00 UTC
I'm specifically looking for a way to *only* turn off the load average output. I want everything else.
Comment 4 John Helmert III archtester Gentoo Infrastructure gentoo-dev Security 2023-01-09 23:16:54 UTC
(In reply to Michael Jones from comment #3)
> I'm specifically looking for a way to *only* turn off the load average
> output. I want everything else.

Hm, digging further it seems like the JobStatusDisplay *does* respect --quiet=y in that it doesn't output load average in that case, but it seems like it doesn't do it effectively in all cases.
Comment 5 John L. Poole 2023-08-19 16:55:23 UTC
(In reply to John Helmert III from comment #4)
> (In reply to Michael Jones from comment #3)
> > I'm specifically looking for a way to *only* turn off the load average
> > output. I want everything else.
> 
> Hm, digging further it seems like the JobStatusDisplay *does* respect
> --quiet=y in that it doesn't output load average in that case, but it seems
> like it doesn't do it effectively in all cases.

Just to be precise, assuming Helmert's conclusion is referring to lines 167-8

~/portage/portage/lib/_emerge $ cat JobStatusDisplay.py |nl

   161      def display(self):
   162          """
   163          Display status on stdout, but only if something has
   164          changed since the last call. This always returns True,
   165          for continuous scheduling via timeout_add.
   166          """
       
   167          if self.quiet:
   168              return True