On Wed, Jul 18, 2018 at 11:19:01AM -0700, Junio C Hamano wrote: > > It's also still inconsistent in the daemonize case. The run that yields > > the error won't return a non-zero exit. But the next run will exit with > > "2". > > I do not see this particular "inconsistency" a problem. The run > that first discovers the problem by definition cannot return with > non-zero; not waiting until finding out the outcome is the whole > point of running in the background and giving control back early. I guess I just see it as encouraging a non-robust flow. I can see somebody thinking they should care about "gc --auto" errors, because they can turn up latent repository corruption (because most operations try to only look at the objects they need to, and gc inherently considers every object). But doing so would give a very delayed notification for a repository that is handled infrequently. So finding out about a corruption that we detected might takes weeks or months. I dunno. If your primary motivation is not finding latent problems, but loudly complaining when gc does not make forward progress, I suppose it makes more sense. -Peff