You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@subversion.apache.org by Erik Huelsmann <eh...@gmail.com> on 2005/11/07 11:49:58 UTC

Re: svn trunk r17230: FAIL (win32 ra_local fsfs)

On 11/7/05, svn-builder@shadyvale.net <sv...@shadyvale.net> wrote:
> Last 100 lines of the build log (full log attached):
>
> Running all tests in commit_tests.py...FAILURE
> Running all tests in update_tests.py...success
> Running all tests in switch_tests.py...success
> Running all tests in prop_tests.py...success
> Running all tests in schedule_tests.py...success
> Running all tests in log_tests.py...success
> Running all tests in copy_tests.py...success
> Running all tests in diff_tests.py...FAILURE

svn: Can't get attribute information from file 'nul': Incorrect function.
FAIL:  diff_tests.py 2: add a file

Grr! Seems I'll need to have another look at what's currently done
with the NUL file. Anybody who has an idea why svn would need
attributes from an empty file to diff against?

(BTW: many of the later failing tests were suffering repository copy
failures, presumably because of disc-full problems on the ramdisc?)

bye,

Erik.

Re: svn trunk r17230: FAIL (win32 ra_local fsfs)

Posted by Erik Huelsmann <eh...@gmail.com>.
On 11/7/05, Erik Huelsmann <eh...@gmail.com> wrote:
> On 11/7/05, svn-builder@shadyvale.net <sv...@shadyvale.net> wrote:
> > Last 100 lines of the build log (full log attached):
> >
> > Running all tests in commit_tests.py...FAILURE
> > Running all tests in update_tests.py...success
> > Running all tests in switch_tests.py...success
> > Running all tests in prop_tests.py...success
> > Running all tests in schedule_tests.py...success
> > Running all tests in log_tests.py...success
> > Running all tests in copy_tests.py...success
> > Running all tests in diff_tests.py...FAILURE
>
> svn: Can't get attribute information from file 'nul': Incorrect function.
> FAIL:  diff_tests.py 2: add a file
>
> Grr! Seems I'll need to have another look at what's currently done
> with the NUL file. Anybody who has an idea why svn would need
> attributes from an empty file to diff against?

Ok, found it: diff_file.c uses a call to svn_io_file_info_get to
retrieve file length. There are 2 solutions: reading until we get an
incomplete chunk (without an error) and taking that as an eof()
signal, or, compare check for this specific error and the null device
name and ignore that (on windows)...

bye,


Erik.

Re: svn trunk r17230: FAIL (win32 ra_local fsfs)

Posted by Erik Huelsmann <eh...@gmail.com>.
> >Grr! Seems I'll need to have another look at what's currently done
> >with the NUL file. Anybody who has an idea why svn would need
> >attributes from an empty file to diff against?
>
> I don't know why *we* need that, but this sends a pretty strong signal to
> me. Julian seems to have a good point here. NUL on Windows doesn't seem
> that much like a file as it is on Unix. An external diff program could
> well want file attributes on its input file.
>
> It seems like we should avoids this smallish optimization and just create
> an empty temporary file per diff/merge invocation instead. That's not a
> big deal, and we avoid breaking peoples use of external differs.

You're right there.

> Erik, don't forget to leave a note in the code about why we don't use the
> null device for this purpose.

Heh. ok. Will revert and leave the note.

BTW: There are many other cleanups to be done to libsvn_wc, so no
problem there. Also, our current scheme creates only 1 temp file,
whereas before every dir had one which is already a significant
cleanup.

bye,


Erik.

Re: svn trunk r17230: FAIL (win32 ra_local fsfs)

Posted by "Peter N. Lundblad" <pe...@famlundblad.se>.
On Mon, 7 Nov 2005, Erik Huelsmann wrote:

> On 11/7/05, svn-builder@shadyvale.net <sv...@shadyvale.net> wrote:
> Last 100 lines of the build log (full log attached):
>
> Running all tests in commit_tests.py...FAILURE
> Running all tests in update_tests.py...success
> Running all tests in switch_tests.py...success
> Running all tests in prop_tests.py...success
> Running all tests in schedule_tests.py...success
> Running all tests in log_tests.py...success
> Running all tests in copy_tests.py...success
> Running all tests in diff_tests.py...FAILURE

>svn: Can't get attribute information from file 'nul': Incorrect function.
>FAIL:  diff_tests.py 2: add a file

>Grr! Seems I'll need to have another look at what's currently done
>with the NUL file. Anybody who has an idea why svn would need
>attributes from an empty file to diff against?

I don't know why *we* need that, but this sends a pretty strong signal to
me. Julian seems to have a good point here. NUL on Windows doesn't seem
that much like a file as it is on Unix. An external diff program could
well want file attributes on its input file.

It seems like we should avoids this smallish optimization and just create
an empty temporary file per diff/merge invocation instead. That's not a
big
deal, and we avoid breaking peoples use of external differs.

Erika, don't forget to leave a note in the code about why we don't use the
null device for this purpose.

Thanks,
//Peter

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

Re: svn trunk r17230: FAIL (win32 ra_local fsfs)

Posted by Daniel Berlin <db...@dberlin.org>.
> (BTW: many of the later failing tests were suffering repository copy
> failures, presumably because of disc-full problems on the ramdisc?)
> 

I actually think not.
I've got a new diff test, that is very simple.
Ii've attached it.

If you place it *after* the XFails at the end, you will see it fails
copying the repository.
If you place it before the XFails at the end, this does not happen.

(Note the test will fail without the patch i'm about to submit, so don't
worry about that part. It's *why* it fails that matters.




> bye,
> 
> Erik.

Re: svn trunk r17230: FAIL (win32 ra_local fsfs)

Posted by Malcolm Rowe <ma...@farside.org.uk>.
On Mon, Nov 07, 2005 at 02:10:39PM +0000, Philip Martin wrote:
> Erik Huelsmann <eh...@gmail.com> writes:
> 
> > (BTW: many of the later failing tests were suffering repository copy
> > failures, presumably because of disc-full problems on the ramdisc?)
> 
> It's probably caused by a test that does os.chdir() and then fails to
> chdir() back when the test fails.  I've fixed this sort of problem in
> the past by using try/finally.
> 

It was. I've already fixed it in r17231.

Regards,
Malcolm

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

Re: svn trunk r17230: FAIL (win32 ra_local fsfs)

Posted by Philip Martin <ph...@codematters.co.uk>.
Erik Huelsmann <eh...@gmail.com> writes:

> (BTW: many of the later failing tests were suffering repository copy
> failures, presumably because of disc-full problems on the ramdisc?)

It's probably caused by a test that does os.chdir() and then fails to
chdir() back when the test fails.  I've fixed this sort of problem in
the past by using try/finally.

-- 
Philip Martin

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