[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: cond5.test spurious failure
From: |
Peter Rosin |
Subject: |
Re: cond5.test spurious failure |
Date: |
Fri, 06 Aug 2010 15:56:38 +0200 |
User-agent: |
Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2.7) Gecko/20100713 Thunderbird/3.1.1 |
Den 2010-08-06 15:15 skrev Stefano Lattarini:
To help us pinpoint the problem, could you please try to run the
attached "fake" test scripts multiple times, and post the outputs?
Please forgive me the for the ugliness of such scripts, but I'm just
taking wild guesses here.
For tmp.test, I swapped the order of the sleep and the echo in the
fake automake (and changed the sleep to 4) to better emulate the
real automake, failure and success stories follows:
kill failure:
=== Running test ./tmp.test
++ pwd
/home/peda/automake/git/automake/tests/tmp.dir
+ set -e
+ cat
+ cat
+ sh -c 'echo %aclocal pid: $$; sleep 2'
%aclocal pid: 12252
+ pid=4504
+ sh -c 'echo %automake pid: $$; sleep 4; echo variable OPT_SRC recursively defined
>&2'
+ try=1
+ test 1 -le 30
+ kill -0 4504
./tmp.test: line 54: kill: (4504) - No such process
+ cat stderr
%automake pid: 4504
+ grep 'variable.*OPT_SRC.*recursively defined' stderr
+ exit_status=1
+ set +e
+ cd /home/peda/automake/git/automake/tests
+ case $exit_status,$keep_testdirs in
+ test 0 '!=' 0
+ echo 'tmp: exit 1'
tmp: exit 1
+ exit 1
kill success:
=== Running test ./tmp.test
++ pwd
/home/peda/automake/git/automake/tests/tmp.dir
+ set -e
+ cat
+ cat
+ sh -c 'echo %aclocal pid: $$; sleep 2'
%aclocal pid: 12228
+ pid=13504
+ sh -c 'echo %automake pid: $$; sleep 4; echo variable OPT_SRC recursively defined
>&2'
+ try=1
+ test 1 -le 30
+ kill -0 13504
+ : process 13504 is still alive, wait and retry
+ sleep 1
%automake pid: 13504
++ expr 1 + 1
+ try=2
+ test 2 -le 30
+ kill -0 13504
+ : process 13504 is still alive, wait and retry
+ sleep 1
++ expr 2 + 1
+ try=3
+ test 3 -le 30
+ kill -0 13504
+ : process 13504 is still alive, wait and retry
+ sleep 1
++ expr 3 + 1
+ try=4
+ test 4 -le 30
+ kill -0 13504
+ : process 13504 is still alive, wait and retry
+ sleep 1
++ expr 4 + 1
+ try=5
+ test 5 -le 30
+ kill -0 13504
./tmp.test: line 54: kill: (13504) - No such process
+ cat stderr
variable OPT_SRC recursively defined
+ grep 'variable.*OPT_SRC.*recursively defined' stderr
variable OPT_SRC recursively defined
+ Exit 0
+ set +e
+ exit 0
+ exit 0
+ exit_status=0
+ set +e
+ cd /home/peda/automake/git/automake/tests
+ case $exit_status,$keep_testdirs in
+ find tmp.dir -type d '!' -perm -200 -exec chmod u+w '{}' ';'
+ rm -rf tmp.dir
+ test 0 '!=' 0
+ echo 'tmp: exit 0'
tmp: exit 0
+ exit 0
For tmp2.test, my MSYS install does not have sync, so that's a nono...
tmp3.test "always" works, but takes different branches depending
on if kill worked or not.
kill failure:
=== Running test ./tmp3.test
++ pwd
/c/cygwin/home/peda/automake/git/automake/tests/tmp3.dir
+ set -e
+ cat
+ cat
+ aclocal-1.11 -Werror
+ pid=10128
+ try=1
+ automake-1.11 --foreign -Werror -Wall
+ test 1 -le 30
+ kill -0 10128
./tmp3.test: line 54: kill: (10128) - No such process
+ cat stderr
+ grep 'variable.*OPT_SRC.*recursively defined' stderr
+ sleep 20
+ cat stderr
Makefile.am:8: variable `OPT_SRC' recursively defined
+ grep 'variable.*OPT_SRC.*recursively defined' stderr
Makefile.am:8: variable `OPT_SRC' recursively defined
+ Exit 0
+ set +e
+ exit 0
+ exit 0
+ exit_status=0
+ set +e
+ cd /c/cygwin/home/peda/automake/git/automake/tests
+ case $exit_status,$keep_testdirs in
+ find tmp3.dir -type d '!' -perm -200 -exec chmod u+w '{}' ';'
+ rm -rf tmp3.dir
+ test 0 '!=' 0
+ echo 'tmp3: exit 0'
tmp3: exit 0
+ exit 0
kill success:
=== Running test ./tmp3.test
++ pwd
/home/peda/automake/git/automake/tests/tmp3.dir
+ set -e
+ cat
+ cat
+ aclocal-1.11 -Werror
+ pid=3524
+ automake-1.11 --foreign -Werror -Wall
+ try=1
+ test 1 -le 30
+ kill -0 3524
+ : process 3524 is still alive, wait and retry
+ sleep 10
++ expr 1 + 1
+ try=2
+ test 2 -le 30
+ kill -0 3524
./tmp3.test: line 54: kill: (3524) - No such process
+ cat stderr
Makefile.am:8: variable `OPT_SRC' recursively defined
+ grep 'variable.*OPT_SRC.*recursively defined' stderr
Makefile.am:8: variable `OPT_SRC' recursively defined
+ Exit 0
+ set +e
+ exit 0
+ exit 0
+ exit_status=0
+ set +e
+ cd /home/peda/automake/git/automake/tests
+ case $exit_status,$keep_testdirs in
+ find tmp3.dir -type d '!' -perm -200 -exec chmod u+w '{}' ';'
+ rm -rf tmp3.dir
+ test 0 '!=' 0
+ echo 'tmp3: exit 0'
tmp3: exit 0
+ exit 0
So, nothing unexpected given my previous message...
Cheers,
Peter
- Re: New auxiliary archive script, (continued)
- Re: New auxiliary archive script, Peter Rosin, 2010/08/05
- Re: New auxiliary archive script, Ralf Wildenhues, 2010/08/05
- Re: New auxiliary archive script, Peter Rosin, 2010/08/05
- Re: New auxiliary archive script, Ralf Wildenhues, 2010/08/06
- Re: New auxiliary archive script, Peter Rosin, 2010/08/06
- cond5.test spurious failure (was: New auxiliary archive script), Stefano Lattarini, 2010/08/06
- Re: cond5.test spurious failure, Peter Rosin, 2010/08/06
- Re: cond5.test spurious failure, Stefano Lattarini, 2010/08/06
- Re: cond5.test spurious failure,
Peter Rosin <=
- Re: cond5.test spurious failure, Peter Rosin, 2010/08/06
- Re: cond5.test spurious failure, Stefano Lattarini, 2010/08/06
- Re: cond5.test spurious failure, Ralf Wildenhues, 2010/08/06
- Re: cond5.test spurious failure, Stefano Lattarini, 2010/08/06
- Re: cond5.test spurious failure, Peter Rosin, 2010/08/06
- Re: cond5.test spurious failure, Stefano Lattarini, 2010/08/06
- [PATCH] Remove a race condition from test cond5.test (was: cond5.test spurious failure), Stefano Lattarini, 2010/08/06
- Re: cond5.test spurious failure, Peter Rosin, 2010/08/06
- Re: cond5.test spurious failure, Peter Rosin, 2010/08/11
- Re: New auxiliary archive script, Peter Rosin, 2010/08/06