All of lore.kernel.org
 help / color / mirror / Atom feed
From: Ian Campbell <ian.campbell@citrix.com>
To: Ian Jackson <ian.jackson@eu.citrix.com>, xen-devel@lists.xenproject.org
Subject: Re: [OSSTEST PATCH 07/11] cri-getconfig: Provide debugging for get_psql_cmd
Date: Mon, 7 Dec 2015 10:00:34 +0000	[thread overview]
Message-ID: <1449482434.29724.32.camel@citrix.com> (raw)
In-Reply-To: <1449257734-26860-8-git-send-email-ian.jackson@eu.citrix.com>

On Fri, 2015-12-04 at 19:35 +0000, Ian Jackson wrote:
> This allows us to execute only the first <some number> SQL
> invocations.  The first non-executed one is dumped, instead, by having
> get_psql_command print a rune involving ./mg-debug-fail (which the
> caller will then execute).
> 
> The locking makes things work roughly-correctly if get_psql_cmd is run
> in multiple processes at once: it is not defined exactly which
> invocations get which counter values, but they will all work properly
> and get exactly one counter value each.
> 
> If set -x is in force, turn it off for get_psql_cmd: our perl rune is
> uninteresting to see repeated ad infinitum in debugging output.

I should probably know this, but what is the scope of the set +x here? Is
it confined to get_psql_cmd or will callers find things going surprisingly
quiet?

Experimentally I think it is the latter, which is a shame. Maybe just wrap
the set+perl in ()s ?

> 
> Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
> ---
>  cri-getconfig |   16 ++++++++++++++++
>  1 file changed, 16 insertions(+)
> 
> diff --git a/cri-getconfig b/cri-getconfig
> index 48528b5..a357d86 100644
> --- a/cri-getconfig
> +++ b/cri-getconfig
> @@ -41,6 +41,22 @@ getrepos() {
>  }
>  
>  get_psql_cmd () {
> +	# To use this:
> +	#  on each test run, rm -f t.psql-counter
> +	#  and set OSSTEST_PSQL_ONLY_DO to an integer
> +	if [ "x$OSSTEST_PSQL_ONLY_DO" != x ]; then
> +		local f=t.psql-counter
> +		psql_counter=$( with-lock-ex -w $f.lock bash -ec '
> +			psql_counter=$(cat '$f' || echo 0)
> +			echo $(( $psql_counter + 1 )) >'$f'.tmp
> +			mv -f '$f'.tmp '$f'
> +			echo $psql_counter' )
> +		if ! [ $psql_counter -lt $OSSTEST_PSQL_ONLY_DO ]; then
> +			printf './mg-debug-fail '
> +		fi
> +	fi
> +
> +	set +x
>  	perl -we '
>  	use Osstest;
>  	use Osstest::Executive;

_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
http://lists.xen.org/xen-devel

  reply	other threads:[~2015-12-07 10:01 UTC|newest]

Thread overview: 33+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-12-04 19:35 [OSSTEST PATCH 00/11] Test database handling Ian Jackson
2015-12-04 19:35 ` [OSSTEST PATCH 01/11] tcl daemons: log host and port number we bind to, at startup Ian Jackson
2015-12-07  9:42   ` Ian Campbell
2015-12-04 19:35 ` [OSSTEST PATCH 02/11] cri-getconfig: Break out exec_resetting_sigint Ian Jackson
2015-12-07  9:43   ` Ian Campbell
2015-12-04 19:35 ` [OSSTEST PATCH 03/11] Configuration: No longer set password=<~/.xen-osstest/db-password> Ian Jackson
2015-12-07  9:52   ` Ian Campbell
2015-12-07 15:05     ` Ian Jackson
2015-12-04 19:35 ` [OSSTEST PATCH 04/11] mg-debug-fail: New utility script for debugging Ian Jackson
2015-12-07  9:55   ` Ian Campbell
2015-12-07 15:10     ` Ian Jackson
2015-12-07 15:40       ` Ian Campbell
2015-12-07 15:41         ` Ian Campbell
2015-12-04 19:35 ` [OSSTEST PATCH 05/11] mg-debug-fail: Catch attempts to read from a tty Ian Jackson
2015-12-07  9:55   ` Ian Campbell
2015-12-04 19:35 ` [OSSTEST PATCH 06/11] cri-getconfig: Provide get_psql_cmd and get_pgdump_cmd Ian Jackson
2015-12-07  9:57   ` Ian Campbell
2015-12-07 14:59     ` Ian Jackson
2015-12-04 19:35 ` [OSSTEST PATCH 07/11] cri-getconfig: Provide debugging for get_psql_cmd Ian Jackson
2015-12-07 10:00   ` Ian Campbell [this message]
2015-12-07 15:02     ` Ian Jackson
2015-12-07 15:38       ` Ian Campbell
2015-12-04 19:35 ` [OSSTEST PATCH 08/11] Osstest.pm: Break out and export globalconfigfiles Ian Jackson
2015-12-07 10:03   ` Ian Campbell
2015-12-04 19:35 ` [OSSTEST PATCH 09/11] mg-schema-test-database: New script Ian Jackson
2015-12-07 10:12   ` Ian Campbell
2015-12-07 15:12     ` Ian Jackson
2015-12-07 15:42       ` Ian Campbell
2015-12-04 19:35 ` [OSSTEST PATCH 10/11] mg-schema-test-database: Move setting of test_cfg_setting to dbname Ian Jackson
2015-12-07 10:12   ` Ian Campbell
2015-12-04 19:35 ` [OSSTEST PATCH 11/11] mg-schema-test-database: Sort out daemons; provide `daemons' subcommand Ian Jackson
2015-12-07 10:18   ` Ian Campbell
2015-12-07 15:16     ` Ian Jackson

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1449482434.29724.32.camel@citrix.com \
    --to=ian.campbell@citrix.com \
    --cc=ian.jackson@eu.citrix.com \
    --cc=xen-devel@lists.xenproject.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.