You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@subversion.apache.org by "D.J. Heap" <dj...@dhiprovo.com> on 2003/06/16 15:37:28 UTC

Tests

I've been experiencing a commit test failure occasionally and was
wondering if anyone else was seeing it.  What's odd is that it doesn't
fail all the time even running against the same binaries.  I can also go
through the steps manually and everything appears to work as far as I
can tell, so I haven't been too concerned.

Has anyone seen this?  Presumably, the first failure causes the next
one.  The relevant part of the test log is attached.

DJ


**********************************************************************
This email and any files transmitted with it are confidential
and intended solely for the use of the individual or entity to
whom they are addressed. If you have received this email
in error please notify the system manager.

This footnote also confirms that this email message has been
swept by MIMEsweeper for the presence of computer viruses.

www.mimesweeper.com
**********************************************************************


RE: Tests

Posted by "D.J. Heap" <dj...@dhiprovo.com>.
From: kfogel@newton.ch.collab.net:
>A failure in one test shouldn't affect a failure in another, usually.
>Each test creates its own repository and working copy, so tests are
>isolated from each other.

Yes, thank you, I should have noticed that.  Oddly, though, these two
failures always seem to come together.  I just reran the tests again on
the same binaries and everything passes.  I will start watching more
carefully and see if I can discern a pattern or something.

DJ



**********************************************************************
This email and any files transmitted with it are confidential
and intended solely for the use of the individual or entity to
whom they are addressed. If you have received this email
in error please notify the system manager.

This footnote also confirms that this email message has been
swept by MIMEsweeper for the presence of computer viruses.

www.mimesweeper.com
**********************************************************************


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org

Re: Tests

Posted by kf...@collab.net.
"D.J. Heap" <dj...@dhiprovo.com> writes:
> I've been experiencing a commit test failure occasionally and was
> wondering if anyone else was seeing it.  What's odd is that it doesn't
> fail all the time even running against the same binaries.  I can also go
> through the steps manually and everything appears to work as far as I
> can tell, so I haven't been too concerned.
> 
> Has anyone seen this?  Presumably, the first failure causes the next
> one.  The relevant part of the test log is attached.

??  Wow, I've never seen that before either.

A failure in one test shouldn't affect a failure in another, usually.
Each test creates its own repository and working copy, so tests are
isolated from each other.

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org

Re: Tests

Posted by Branko Čibej <br...@xbc.nu>.
Philip Martin wrote:

>"D.J. Heap" <dj...@dhiprovo.com> writes:
>
>  
>
>>I've been experiencing a commit test failure occasionally and was
>>wondering if anyone else was seeing it.  What's odd is that it doesn't
>>fail all the time even running against the same binaries.  I can also go
>>through the steps manually and everything appears to work as far as I
>>can tell, so I haven't been too concerned.
>>    
>>
>
>That appears to indicate some sort of race.  Do the two failures
>always occur together?  On Unix it is possible to run a single test
>using
>
>   % <source_dir>/subversion/tests/clients/cmdline/commit_tests.py 21
>
>(add -v for verbose output) can you do the same on Windows?
>
Yes, this is possible, but you have to run the script from the binary
tree, not the source tree.

>If you run the test repeatedly how often does it fail?
>
>There was a testsuite race in past (copying a repository while
>svnserve was still accessing it),
>
I think I'm seeing this ra_svn tests from time to time.

>but I see you are running over
>ra_local and commit test 21 is simple: add a file, commit, update,
>commit. There is not much scope for a testsuite race there. Could this
>be another symptom of the Windows filesystem race?  What do the
>working copy and repository look like after the test fails?
>  
>


-- 
Brane Čibej   <br...@xbc.nu>   http://www.xbc.nu/brane/


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org

RE: Tests

Posted by "D.J. Heap" <dj...@dhiprovo.com>.
From: Philip Martin [mailto:pm@localhost] On Behalf Of Philip Martin
>Oops, I misread your original message.  I see now it's test 22 that
>fails, not test 21.  Hmm, test 22 does
>
>   was_dir = os.getcwd()
>   os.chdir(...)
>   if svntest.actions.run_and_verify_commit(...)
>     os.chdir(was_dir)
>     return 1
>   os.chdir(was_dir)
>
>If the commit raises an exception then the chdir(was_dir) will not
>occur, which in turn will cause the second failure you see and means
>that all the later commit tests will not get run.
>
>This test, and possibly others that use chdir, may need to be
>converted to use try: finally:, or possibly the driver should ensure
>that the current working directory gets reset.


Ah, so that explains why the next test fails when this one does.


>> Yes, it could be another symptom of the filesystem race, I suppose.
I
>> haven't looked closely at the working copy and repo, but status and
log
>> commands work fine and show that the commit seemed to work fine.  It
>> would help if I understood better what the test failure was saying --
is
>> it the working copy that does not match what was expected or is it
the
>> output from stdout or something else?
>
>I think the failure indicates that the commit command output contained
>a full path
>
>  C:\some\path\to\iota
>
>while the test expected the output to have a path like
>
>  iota
>
>I don't understand why the error is intermittent, I would expect it to
>occur every time, or not at all.


I see, commit prints different output if you commit outside the current
directory -- you get the absolute path.  So, it seems the chdir to the
subdirectory didn't work (I'm not sure how to tell if it fails, should
Python throw an exception?); the commit did work and printed out the
file without the full path info.  Since the directory is created right
above the chdir and it does exist in the working copy (looking at it
posthumously)), it is starting to look like it could be a/the filesystem
race.  Perhaps I will have some luck recreating this one.  I'm so
excited.

DJ



**********************************************************************
This email and any files transmitted with it are confidential
and intended solely for the use of the individual or entity to
whom they are addressed. If you have received this email
in error please notify the system manager.

This footnote also confirms that this email message has been
swept by MIMEsweeper for the presence of computer viruses.

www.mimesweeper.com
**********************************************************************


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org

Re: Tests

Posted by Philip Martin <ph...@codematters.co.uk>.
"D.J. Heap" <dj...@dhiprovo.com> writes:

>>There was a testsuite race in past (copying a repository while
>>svnserve was still accessing it), but I see you are running over
>>ra_local and commit test 21 is simple: add a file, commit, update,
>>commit.

Oops, I misread your original message.  I see now it's test 22 that
fails, not test 21.  Hmm, test 22 does

   was_dir = os.getcwd()
   os.chdir(...)
   if svntest.actions.run_and_verify_commit(...)
     os.chdir(was_dir)
     return 1
   os.chdir(was_dir)

If the commit raises an exception then the chdir(was_dir) will not
occur, which in turn will cause the second failure you see and means
that all the later commit tests will not get run.

This test, and possibly others that use chdir, may need to be
converted to use try: finally:, or possibly the driver should ensure
that the current working directory gets reset.

> Yes, it could be another symptom of the filesystem race, I suppose.  I
> haven't looked closely at the working copy and repo, but status and log
> commands work fine and show that the commit seemed to work fine.  It
> would help if I understood better what the test failure was saying -- is
> it the working copy that does not match what was expected or is it the
> output from stdout or something else?

I think the failure indicates that the commit command output contained
a full path

  C:\some\path\to\iota

while the test expected the output to have a path like

  iota

I don't understand why the error is intermittent, I would expect it to
occur every time, or not at all.

-- 
Philip Martin

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org

RE: Tests

Posted by "D.J. Heap" <dj...@dhiprovo.com>.
From: Philip Martin [mailto:pm@localhost] On Behalf Of Philip Martin
>"D.J. Heap" <dj...@dhiprovo.com> writes:
>
>> I've been experiencing a commit test failure occasionally and was
>> wondering if anyone else was seeing it.  What's odd is that it
doesn't
>> fail all the time even running against the same binaries.  I can also
go
>> through the steps manually and everything appears to work as far as I
>> can tell, so I haven't been too concerned.
>
>That appears to indicate some sort of race.  Do the two failures
>always occur together?  On Unix it is possible to run a single test
>using
>
>   % <source_dir>/subversion/tests/clients/cmdline/commit_tests.py 21
>
>(add -v for verbose output) can you do the same on Windows?  If you
>run the test repeatedly how often does it fail?


I can do the verbose option -- I'll start using it.  It seems to fail
about half the time, and I did not know how to run them singly on
Windows (I think I do now thanks to Brane's email), so I've only run
them a few times a week.


>
>There was a testsuite race in past (copying a repository while
>svnserve was still accessing it), but I see you are running over
>ra_local and commit test 21 is simple: add a file, commit, update,
>commit. There is not much scope for a testsuite race there. Could this
>be another symptom of the Windows filesystem race?  What do the
>working copy and repository look like after the test fails?


Yes, it could be another symptom of the filesystem race, I suppose.  I
haven't looked closely at the working copy and repo, but status and log
commands work fine and show that the commit seemed to work fine.  It
would help if I understood better what the test failure was saying -- is
it the working copy that does not match what was expected or is it the
output from stdout or something else?

DJ



**********************************************************************
This email and any files transmitted with it are confidential
and intended solely for the use of the individual or entity to
whom they are addressed. If you have received this email
in error please notify the system manager.

This footnote also confirms that this email message has been
swept by MIMEsweeper for the presence of computer viruses.

www.mimesweeper.com
**********************************************************************


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org

Re: Tests

Posted by Philip Martin <ph...@codematters.co.uk>.
"D.J. Heap" <dj...@dhiprovo.com> writes:

> I've been experiencing a commit test failure occasionally and was
> wondering if anyone else was seeing it.  What's odd is that it doesn't
> fail all the time even running against the same binaries.  I can also go
> through the steps manually and everything appears to work as far as I
> can tell, so I haven't been too concerned.

That appears to indicate some sort of race.  Do the two failures
always occur together?  On Unix it is possible to run a single test
using

   % <source_dir>/subversion/tests/clients/cmdline/commit_tests.py 21

(add -v for verbose output) can you do the same on Windows?  If you
run the test repeatedly how often does it fail?

There was a testsuite race in past (copying a repository while
svnserve was still accessing it), but I see you are running over
ra_local and commit test 21 is simple: add a file, commit, update,
commit. There is not much scope for a testsuite race there. Could this
be another symptom of the Windows filesystem race?  What do the
working copy and repository look like after the test fails?

-- 
Philip Martin

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org