You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@subversion.apache.org by Joseph Barillari <jo...@barillari.org> on 2003/12/27 08:27:24 UTC

SVN hangs on commit with select() timeout

Hi.

I've noticed that SVN hangs when I ask it to commit changes to my
repository. If I monitor what it's doing with strace, the last lines
are:

(using the command strace svn commit -m "foo" > ~/llog 2>&1)

       <snip>
stat64("/home/jdb-vc/homedir/db/representations", {st_mode=S_IFREG|0644, st_size=163840, ...}) = 0
open("/home/jdb-vc/homedir/db/representations", O_RDWR|O_LARGEFILE) = 10
fcntl64(10, F_SETFD, FD_CLOEXEC)        = 0
fstat64(10, {st_mode=S_IFREG|0644, st_size=163840, ...}) = 0
time(NULL)                              = 1072512975
_llseek(5, 653579, [653579], SEEK_SET)  = 0
write(5, "\347\370\t\0\\\0\0\0J\221\24\335\2\0\0\0~}\0\200\0\0\0"..., 128) = 128
fsync(5)                                = 0
stat64("/home/jdb-vc/homedir/db/strings", {st_mode=S_IFREG|0644, st_size=419500032, ...}) = 0
stat64("/home/jdb-vc/homedir/db/strings", {st_mode=S_IFREG|0644, st_size=419500032, ...}) = 0
open("/home/jdb-vc/homedir/db/strings", O_RDWR|O_LARGEFILE) = 11
fcntl64(11, F_SETFD, FD_CLOEXEC)        = 0
read(11, "\243\1\0\0{+\t\0\0\0\0\0b1\5\0\t\0\0\0\0\20\0\0\0\t\0\0"..., 512) = 512
close(11)                               = 0
stat64("/home/jdb-vc/homedir/db/strings", {st_mode=S_IFREG|0644, st_size=419500032, ...}) = 0
open("/home/jdb-vc/homedir/db/strings", O_RDWR|O_LARGEFILE) = 11
fcntl64(11, F_SETFD, FD_CLOEXEC)        = 0
fstat64(11, {st_mode=S_IFREG|0644, st_size=419500032, ...}) = 0
select(0, NULL, NULL, NULL, {0, 1000})  = 0 (Timeout)
select(0, NULL, NULL, NULL, {0, 2000})  = 0 (Timeout)
select(0, NULL, NULL, NULL, {0, 4000})  = 0 (Timeout)
select(0, NULL, NULL, NULL, {0, 8000})  = 0 (Timeout)
select(0, NULL, NULL, NULL, {0, 16000}) = 0 (Timeout)
select(0, NULL, NULL, NULL, {0, 32000}) = 0 (Timeout)
select(0, NULL, NULL, NULL, {0, 64000}) = 0 (Timeout)
select(0, NULL, NULL, NULL, {0, 128000}) = 0 (Timeout)
select(0, NULL, NULL, NULL, {0, 256000}) = 0 (Timeout)
select(0, NULL, NULL, NULL, {0, 512000}) = 0 (Timeout)
select(0, NULL, NULL, NULL, {1, 0})     = 0 (Timeout)
          ... last line repeats until I kill the process.

I apologize in advance for the paucity of  debugging details -- I'm more
than willing to supply them, but I wasn't sure what would be relavent.

Please do cc: me on replies; I've not yet subscribed to the mailing list.

Best,

--Joe
-- 
Joseph Barillari -- http://barillari.org

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

Re: SVN hangs on commit with select() timeout

Posted by Erik Huelsmann <e....@gmx.net>.
> > I expect it to work with version 0.33.x too. You could
> >upgrade instead of downgrade if you want to.
> Subversion will compile with any 4.0, 4.1 or 4.2 version, but you can't
> just swap the BDB shared libraries.

Oops! Sorry about that. Noted now.

bye,

Erik.

-- 
+++ GMX - die erste Adresse für Mail, Message, More +++
Neu: Preissenkung für MMS und FreeMMS! http://www.gmx.net



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

Re: SVN hangs on commit with select() timeout

Posted by Branko Čibej <br...@xbc.nu>.
Erik Huelsmann wrote:

>Currently 4.2.52 is the recommended version to use. Since all 4.x versions
>are API compatible,
>
That's wrong; BDB 4.x versions are _not_ API compatible. There was an
incompatible change going from 4.0 to 4.1 (and possibly 4.1 to 4.2 too,
but not in those parts that affect us). Subversion handles that at the
source level.

> I expect it to work with version 0.33.x too. You could
>upgrade instead of downgrade if you want to.
>  
>
Subversion will compile with any 4.0, 4.1 or 4.2 version, but you can't
just swap the BDB shared libraries.

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

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

Re: SVN hangs on commit with select() timeout

Posted by Erik Huelsmann <e....@gmx.net>.
>     EH> I think that at the time of release of 0.33, the recommended
>     EH> version for BDB on Linux was 4.0.14. Only for systems where
>     EH> that version is not available (MacOS) or causing problems
>     EH> (Win32) using 4.1.25 was acceptable.
> 
> Hm. I can poke around and see if I can debian to downgrade that
> gracefully.

Currently 4.2.52 is the recommended version to use. Since all 4.x versions
are API compatible, I expect it to work with version 0.33.x too. You could
upgrade instead of downgrade if you want to.

>     EH> Have you tried running 'svnadmin recover /path/to/repository'?
>     EH> It could fix problems which don't show up immediately on just
>     EH> any use case.
> That fixed it! After running svnadmin recover, committs no longer
> hung.
Well, no need to {up,down}grade anymore then :-) Never change a working
config?

bye,

Erik.

-- 
+++ GMX - die erste Adresse für Mail, Message, More +++
Neu: Preissenkung für MMS und FreeMMS! http://www.gmx.net



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

Re: SVN hangs on commit with select() timeout

Posted by Joseph Barillari <jo...@barillari.org>.
>>>>> "EH" == Erik Huelsmann <e....@gmx.net> writes:

    EH> - What's the output of 'svn --version'?
    >> jdb@bigbox:~$ svn --version svn, version 0.33.0 (r7737)

    EH> You *do* know there has been a bugfix release 0.33.1? I it
    EH> would be applicable only if you ever use a client/server setup
    EH> though - not for file:///

Thanks for letting me know. I didn't know that (I just use whatever
Debian has packaged), but if it doesn't affect file:///, it's probably
not an issue here.

    EH> [ snip ]

    >> I use file://

    EH> [ on: ]
    >> i686 Debian Linux (unstable)

    EH> [ with BDB: ]
    >> Version 4.1:

    EH> I think that at the time of release of 0.33, the recommended
    EH> version for BDB on Linux was 4.0.14. Only for systems where
    EH> that version is not available (MacOS) or causing problems
    EH> (Win32) using 4.1.25 was acceptable.

Hm. I can poke around and see if I can debian to downgrade that gracefully.

    EH> Have you tried running 'svnadmin recover /path/to/repository'?
    EH> It could fix problems which don't show up immediately on just
    EH> any use case.

That fixed it! After running svnadmin recover, committs no longer
hung.

Thanks for your help!

Best,

--Joe

-- 
Joseph Barillari -- http://barillari.org

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

Re: SVN hangs on commit with select() timeout

Posted by Erik Huelsmann <e....@gmx.net>.
>     EH> - What's the output of 'svn --version'?  
> jdb@bigbox:~$ svn --version
> svn, version 0.33.0 (r7737)

You *do* know there has been a bugfix release 0.33.1? I it would be
applicable only if you ever use a client/server setup though - not for file:///

[ snip ]

> I use file://

[ on: ]
> i686 Debian Linux (unstable)

[ with BDB: ]
> Version 4.1:

I think that at the time of release of 0.33, the recommended version for BDB
on Linux was 4.0.14. Only for systems where that version is not available
(MacOS) or causing problems (Win32) using 4.1.25 was acceptable.

Have you tried running 'svnadmin recover /path/to/repository'? It could fix
problems which don't show up immediately on just any use case.

Also, please check that your *.log files in the db/ directory of your
repository are accessible to the user you are running your svn command with.

If that does not work: 
- Are you sharing the repository via file:///?
- Is your repository located on an NFS mount?

bye,


Erik.

-- 
+++ GMX - die erste Adresse für Mail, Message, More +++
Neu: Preissenkung für MMS und FreeMMS! http://www.gmx.net



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

Re: SVN hangs on commit with select() timeout

Posted by Joseph Barillari <jb...@princeton.edu>.
>>>>> "EH" == Erik Huelsmann <e....@gmx.net> writes:

    EH> Hi Joseph, Could you provide some more detail please?

By all means. 

    EH> - What's the output of 'svn --version'?  

jdb@bigbox:~$ svn --version
svn, version 0.33.0 (r7737)
   compiled Nov 16 2003, 15:55:24
 
Copyright (C) 2000-2003 CollabNet.
Subversion is open source software, see http://subversion.tigris.org/
 
The following repository access (RA) modules are available:
 
* ra_dav : Module for accessing a repository via WebDAV (DeltaV)
  protocol.
  - handles 'http' schema
  - handles 'https' schema
* ra_local : Module for accessing a repository on local disk.
  - handles 'file' schema
* ra_svn : Module for accessing a repository using the svn network
  protocol.
  - handles 'svn' schema
 
    EH> - Do you use file:///
    EH> or another protocol? If server: what version? 

I use file://
    
    EH> - Which OS do you run on?

i686 Debian Linux (unstable)

    EH> - Which version of Berkeley DB do you use?

Version 4.1:

jdb@bigbox:~$ ldd /usr/bin/svn|grep db
        libdb-4.1.so => /usr/lib/libdb-4.1.so (0x40163000)

I'll be happy to supply further info.

Thanks in advance,

--Joe

-- 
Joseph Barillari -- http://barillari.org

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

Re: SVN hangs on commit with select() timeout

Posted by Erik Huelsmann <e....@gmx.net>.
Hi Joseph,

Could you provide some more detail please?

- What's the output of 'svn --version'?
- Do you use file:/// or another protocol? If server: what version?
- Which OS do you run on?
- Which version of Berkeley DB do you use?

bye,

Erik.

> Hi.
> 
> I've noticed that SVN hangs when I ask it to commit changes to my
> repository. If I monitor what it's doing with strace, the last lines
> are:
> 
> (using the command strace svn commit -m "foo" > ~/llog 2>&1)
> 
>        <snip>
> stat64("/home/jdb-vc/homedir/db/representations", {st_mode=S_IFREG|0644,
> st_size=163840, ...}) = 0
> open("/home/jdb-vc/homedir/db/representations", O_RDWR|O_LARGEFILE) = 10
> fcntl64(10, F_SETFD, FD_CLOEXEC)        = 0
> fstat64(10, {st_mode=S_IFREG|0644, st_size=163840, ...}) = 0
> time(NULL)                              = 1072512975
> _llseek(5, 653579, [653579], SEEK_SET)  = 0
> write(5, "\347\370\t\0\\\0\0\0J\221\24\335\2\0\0\0~}\0\200\0\0\0"..., 128)
> = 128
> fsync(5)                                = 0
> stat64("/home/jdb-vc/homedir/db/strings", {st_mode=S_IFREG|0644,
> st_size=419500032, ...}) = 0
> stat64("/home/jdb-vc/homedir/db/strings", {st_mode=S_IFREG|0644,
> st_size=419500032, ...}) = 0
> open("/home/jdb-vc/homedir/db/strings", O_RDWR|O_LARGEFILE) = 11
> fcntl64(11, F_SETFD, FD_CLOEXEC)        = 0
> read(11, "\243\1\0\0{+\t\0\0\0\0\0b1\5\0\t\0\0\0\0\20\0\0\0\t\0\0"...,
> 512) = 512
> close(11)                               = 0
> stat64("/home/jdb-vc/homedir/db/strings", {st_mode=S_IFREG|0644,
> st_size=419500032, ...}) = 0
> open("/home/jdb-vc/homedir/db/strings", O_RDWR|O_LARGEFILE) = 11
> fcntl64(11, F_SETFD, FD_CLOEXEC)        = 0
> fstat64(11, {st_mode=S_IFREG|0644, st_size=419500032, ...}) = 0
> select(0, NULL, NULL, NULL, {0, 1000})  = 0 (Timeout)
> select(0, NULL, NULL, NULL, {0, 2000})  = 0 (Timeout)
> select(0, NULL, NULL, NULL, {0, 4000})  = 0 (Timeout)
> select(0, NULL, NULL, NULL, {0, 8000})  = 0 (Timeout)
> select(0, NULL, NULL, NULL, {0, 16000}) = 0 (Timeout)
> select(0, NULL, NULL, NULL, {0, 32000}) = 0 (Timeout)
> select(0, NULL, NULL, NULL, {0, 64000}) = 0 (Timeout)
> select(0, NULL, NULL, NULL, {0, 128000}) = 0 (Timeout)
> select(0, NULL, NULL, NULL, {0, 256000}) = 0 (Timeout)
> select(0, NULL, NULL, NULL, {0, 512000}) = 0 (Timeout)
> select(0, NULL, NULL, NULL, {1, 0})     = 0 (Timeout)
>           ... last line repeats until I kill the process.
> 
> I apologize in advance for the paucity of  debugging details -- I'm more
> than willing to supply them, but I wasn't sure what would be relavent.
> 
> Please do cc: me on replies; I've not yet subscribed to the mailing list.
> 
> Best,
> 
> --Joe
> -- 
> Joseph Barillari -- http://barillari.org
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
> For additional commands, e-mail: users-help@subversion.tigris.org
> 

-- 
+++ GMX - die erste Adresse für Mail, Message, More +++
Neu: Preissenkung für MMS und FreeMMS! http://www.gmx.net



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