[lttng-dev] [PATCH lttng-tools] Fix: mi test: possible race between listing UST events and testapp start

David Goulet dgoulet at efficios.com
Wed Oct 29 14:23:43 EDT 2014

On 26 Oct (21:21:46), Jonathan Rajotte wrote:
> Signed-off-by: Jonathan Rajotte <jonathan.r.julien at gmail.com>
> ---
>  tests/regression/tools/mi/test_mi | 5 +++++
>  1 file changed, 5 insertions(+)
> diff --git a/tests/regression/tools/mi/test_mi b/tests/regression/tools/mi/test_mi
> index fa46b51..7acec18 100755
> --- a/tests/regression/tools/mi/test_mi
> +++ b/tests/regression/tools/mi/test_mi
> @@ -507,6 +507,11 @@ function test_list_ust_event ()
>  	#Begin testing
>  	$TESTAPP_BIN $NR_USEC_WAIT & 2>/dev/null
> +	pid=$!
> +
> +	#Wait for TESTAPP to run
> +	while ! kill -0 $pid 2> /dev/null; do :; done

So of what I understand here, this tests the existance of the PID but
wondering if it really fixes the race. Even if the PID indeed exists,
still it might not have registered to the session daemon.

I think one way to fix that is to have a "lttng list -u | grep $PID"
test and if the output is not empty, the application did registered.
Also, you can use the "create file" option of gen-ust-events. You can
pass a fourth argument to the app, once a tracepoint is hit, it will
create the file you gave with the full path. You can then loop on that.
There are some tests that already uses that, you can check it out.

Finally, that test should actually spawn the application with a long
life time and kill it at the end so we don't race between very long
commands and the application actually quiting gracefully.


> +
>  	list_lttng_with_opts "-u -f"
>  	ok $? "Mi test: list ust event xsd validation"
> -- 
> 1.9.1
> _______________________________________________
> lttng-dev mailing list
> lttng-dev at lists.lttng.org
> http://lists.lttng.org/cgi-bin/mailman/listinfo/lttng-dev
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 603 bytes
Desc: Digital signature
URL: <http://lists.lttng.org/pipermail/lttng-dev/attachments/20141029/4a0d1c16/attachment.sig>

More information about the lttng-dev mailing list