Re: making pg_regress less noisy by removing boilerplate - Mailing list pgsql-hackers

From Andres Freund
Subject Re: making pg_regress less noisy by removing boilerplate
Date
Msg-id 20220221173109.yl6dqqu3ud52ripd@alap3.anarazel.de
Whole thread Raw
In response to Re: making pg_regress less noisy by removing boilerplate  (Tom Lane <tgl@sss.pgh.pa.us>)
Responses Re: making pg_regress less noisy by removing boilerplate  (Tom Lane <tgl@sss.pgh.pa.us>)
Re: making pg_regress less noisy by removing boilerplate  (Andrew Dunstan <andrew@dunslane.net>)
List pgsql-hackers
Hi,

On 2022-02-21 12:05:42 -0500, Tom Lane wrote:
> Also, those steps typically run a lot faster than they did then
> (both software speedups, and most people use better hardware).
> We no longer need that output to reassure ourselves that progress
> is being made.

Indeed.


> > It seems we could [ combine printouts ]
>
> How about going further, and just not print *any* of this overhead
> stuff

+1


> except maybe the "running on port 51696 with PID 1156405" line (and I'm not
> too wedded to that)?

We still have a few issues with ports conflicts on windows. We should really
consider just desupporting all windows versions without unix socket
support. But until then it seems useful to be able to figure out random
failures.


> It'd also be a good idea to start using "make -s" by default for the
> preparatory steps.

For the temp-install and checkprep targets, or for something else? That'd
probably just be a few @'s in front of rm, mkdir?

One thing with temp-install that's been bothering me is that it often hides
compilation failures inside install.log, and that it ends up building contrib
with -j1. It'd be a bit of redundant work, but perhaps we should make it
depend on a top-directory world-bin?


This reminds me that a while ago I added the below to my Makefile.custom, to
avoid all the "Nothing to be done for xyz" noise. Not sure if it bothers
others as much as me...

# Targets that don't require building anything cause make to say "make:
# Nothing to be done for 'target'."  That's OK if it happens once at the
# top-level, but distracting for recursive make invocations of targets like
# distprep, generated-headers-symlinks etc.
#
# The message can be silenced by depending on another target that always does
# something. That works better than adding recipes to each of these common
# targets, because in some makefiles they have their own recipses, triggering
# warnings.
#
# To avoid repetition, use foreach/eval/call to create the dependencies, and a prefix
# rule for the recipe.
#
# @ silences, : is the shell do-nothing command.
%.silence:
    @:

define create_silence_target
$(1): | $(1).silence
endef
$(foreach t,$(standard_targets) $(standard_always_targets) generated-header-symlinks,$(eval $(call
create_silence_target,$(t))))

Greetings,

Andres Freund



pgsql-hackers by date:

Previous
From: Nathan Bossart
Date:
Subject: Re: Postgres restart in the middle of exclusive backup and the presence of backup_label file
Next
From: Fujii Masao
Date:
Subject: Re: RFC: Logging plan of the running query