Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(243)

Issue 4318003: Print status messages in parallel_emerge about jobs that are longer than 2 mins. (Closed)

Created:
10 years, 1 month ago by davidjames
Modified:
9 years, 4 months ago
Reviewers:
kliegs, Nick Sanders, anush
CC:
chromium-os-reviews_chromium.org, Mandeep Singh Baines, sosa
Visibility:
Public.

Description

Print status messages in parallel_emerge about jobs that are longer than 2 mins. Currently, if a build is slow, you only get debug output after an hour. This is to allow for uncluttered output. If output is too cluttered, it's hard to distinguish regular output from errors. The problem with this approach is that it's often hard to debug why the build is slow. Now that Chrome builds by default, it takes over an hour to build, and people see little indication as to why. You can show the output with build_packages --showoutput, but that is often too verbose and clutters the output too much. Here's an example log snippet that is hard to debug: Pending 2, Ready 0, Running 1, Retrying 0, Total 22 [Time 5m20.5s Load 3.69 3.04 2.66] Pending 2, Ready 0, Running 1, Retrying 0, Total 22 [Time 5m25.5s Load 3.40 2.99 2.65] ... yada yada yada ... Pending 2, Ready 0, Running 1, Retrying 0, Total 22 [Time 45m32.9s Load 1.00 1.18 2.95] From the above output, we see that a package is building for a long time, but we don't know what package. We should output the package name every two minutes at least so people know what package is taking so long. That's what this change implements. BUG=chromium-os:8575 TEST=Confirmed new status appear for regular build_packages. Confirmed build_packages --showoutput is unchanged. Change-Id: Ie18b23ac7a8a6e2c24b43ec3691606c7da5e43cb Committed: http://chrome-svn/viewvc/chromeos?view=rev&revision=0addea3

Patch Set 1 #

Patch Set 2 : 80 chars #

Patch Set 3 : s/full outputs/full output/ #

Unified diffs Side-by-side diffs Delta from patch set Stats (+33 lines, -10 lines) Patch
M parallel_emerge View 1 2 3 chunks +33 lines, -10 lines 0 comments Download

Messages

Total messages: 6 (0 generated)
davidjames
10 years, 1 month ago (2010-11-02 20:04:01 UTC) #1
kliegs
I'd say print info for any job more than 10 minutes. An hour is a ...
10 years, 1 month ago (2010-11-02 20:07:58 UTC) #2
Nick Sanders
lgtm
10 years, 1 month ago (2010-11-02 21:37:10 UTC) #3
davidjames
On 2010/11/02 20:07:58, kliegs wrote: > I'd say print info for any job more than ...
10 years, 1 month ago (2010-11-02 21:44:41 UTC) #4
kliegs
Ok - I misread the comments about the intent. Comments withdrawn. On 2010/11/02 21:44:41, davidjames ...
10 years, 1 month ago (2010-11-02 21:48:57 UTC) #5
anush
10 years, 1 month ago (2010-11-02 21:51:52 UTC) #6
LGTM. Please commit to .110.B too. 

On 2010/11/02 21:48:57, kliegs wrote:
> Ok - I misread the comments about the intent.  Comments withdrawn.  
> 
> On 2010/11/02 21:44:41, davidjames wrote:
> > On 2010/11/02 20:07:58, kliegs wrote:
> > > I'd say print info for any job more than 10 minutes.  An hour is a long
time
> > > to wait But only print the job list every 5 minutes
> > > 
> > > Although I expect you'll find many people with their own opinion on the
> > > right intervals :)
> > 
> > So, we're not printing out a whole job list. We're just replacing the
"Pending
> > ..." message with the name of one of the packages that's currently being
> built.
> > And we only print this for packages that take more than 2 minutes to build.
> > Given that the 'Pending... ' message appears every 5 seconds, the names of
> > packages are only going to be printed occasionally. I also, in this case,
> > removed the 'Pending...' message so that you don't get any more output, but
do
> > get more information.
> > 
> > As for printing the full output, that actually can be a lot of output, so we
> > want to restrict that output to when users are using --showoutput unless the
> > build is taking an exceptionally long time and we need the info for
debugging.
> > The intent of the 1hr number was to be big enough such that successful jobs
> > other than Chrome would never print any output, because nobody other than
> Chrome
> > takes longer than an hour to build. Not sure if that's still the right
number,
> > but it can be tweaked if necessary. The disadvantage of making it smaller is
> > that we'll be adding output to the build that doesn't get removed when the
> user
> > specifies --noshowoutput

Powered by Google App Engine
This is Rietveld 408576698