[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: Client failing in presence of huge files (> 2GB)

From: David Ripton <dripton_at_ripton.net>
Date: 2005-06-23 02:49:15 CEST

On 2005.06.22 13:12:15 +0000, kfogel@collab.net wrote:
> Pierre-Charles David <pierre-charles.david@wanadoo.fr> writes:
> > The svn client stops working correctly when a huge file is present in
> > the current directory, even if the said file is not managed by svn.
> >
> > Steps to reproduce:
> >
> > ~/tmp$ svnadmin create repo
> > ~/tmp$ svn co file://$PWD/repo t
> > ~/tmp$ cd t
> > ~/tmp/t$ dd if=/dev/zero of=huge count=1 seek=4M
> > ~/tmp/t$ ls -lh
> > -rw-r--r-- 1 pcdavid pcdavid 2,1G 2005-06-22 18:43 huge
> > ~/tmp/t$ svn status -v
> > svn: Can't read directory '.': Partial results are valid but processing
> > is incomplete
> >
> > This happens with:
> > - svn, version 1.1.1 (r11581) [version included in Ubuntu Hoary]
> > - svn, version 1.2.0 (r14790) [locally compiled and installed]
> >
> > Note that it works OK with a 1G file, or if the file is inside a
> > directory which is itself not managed by svn.
> >
> > I don't know if it's relevant, but the underlying filesystem is
> > ReiserFS3 under Linux 2.6.10.
>
> Hmmm, you may have to rebuilt against an APR compiled with largefile
> support ("-DLARGEFILE", maybe? not sure).

Another data point:

1. I can reproduce the problem with svn 1.2.0 on x86 Gentoo Linux, from
the stock ebuild. Different error message:

$ /usr/bin/svn st
svn: Can't check path 'huge': Value too large for defined data type

2. svn 1.2.0 on amd64 Gentoo (with everything compiled 64-bit) works
fine, as you'd expect.

3. I recompiled apr 1.1.1 + apr-util 1.1.2 + svn latest trunk by hand on
the x86 Gentoo box, and it worked. There were lots of -D_LARGEFILE64
args to gcc flying around, even though I did *not* explicitly pass
anything special to ./configure asking for large file support. It
appears that large file support is now the default, and you have to say
--disable-lfs if you don't want it.

So it appears the problem is automatically fixed, if you run a new enough
version of apr.

For older apr versions you probably need to find the magic argument to
apr's ./configure to turn on large file support. The changelog and the
code both recommend not turning this on in 0.9.6, so maybe you're better
off upgrading apr.

-- 
David Ripton    dripton@ripton.net
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org
Received on Thu Jun 23 02:51:27 2005

This is an archived mail posted to the Subversion Users mailing list.