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

Software caused connection abort when committing large files with cygwin/svn

From: Lieven Govaerts <lgo_at_mobsol.be>
Date: 2005-09-05 17:26:48 CEST

Hi,

following the discussion on this list concerning the stability of Subversion
on cygwin, I want to 'attack' the problems I have one by one.

The same problem was already mentioned on the users list end of July by David
Weintraub, but there was no apparent reaction. Therefore this post on the devs
list.

The problem:
Client Platform: Windows 2000 + Cygwin
Subversion client: svn, version 1.2.0 (r14790), compiled Jun 10 2005, 22:10:10
Server Platform: Suse linux
SVN server = Apache 2.0.54 + mod_dav_svn 1.2.0/1.2.3 ( tested with both versions
).

When adding a large file in an empty repository ( >15MB ), the commit will fail
with following error.

$ svn ci lgotest2 -m "test with cygwin svn commit of large files"
Adding (bin) lgotest2/hibernate-3.0.5.zip
Transmitting file data .svn: Commit failed (details follow):
svn: PUT of '/svn/lgotest2/!svn/wrk/e5f2698b-0700-0410-96ce-bec0f85ca017/trunk/h
ibernate-3.0.5.zip': Could not send request body: Software caused connection abo
rt (http://s30361.netpost:19000)

When I do the same thing from a windows dos box:
C:\depost\projects>svn ci lgotest2 -m "large commit, fails on cygwin"
Adding (bin) lgotest2\hibernate-3.0.5.zip
Transmitting file data .
Committed revision 2.

This will always work the first time.

This problem occurs in 100% of my tests here in this LAN environment, I will
check later today if I can simulate it against a server on the net.

Since I can simulate this 100% I can provide all the needed information to
someone willing to solve it. I've made svn run under strace already, the full
log is zipped 1.3MB, the relevant extract is:

   42 45699364 [main] svn 2936 readv: readv (4, 0x22E360, 1) blocking, sigcatche
rs 3
   41 45699405 [main] svn 2936 readv: no need to call ready_for_read
   51 45699456 [main] svn 2936 fhandler_base::read: returning 4096, binary mode
   42 45699498 [main] svn 2936 readv: 4096 = readv (4, 0x22E360, 1), errno 0
   42 45699540 [main] svn 2936 writev: writev (3, 0x22E390, 1)
   88 45699628 [main] svn 2936 writev: 1024 = write (3, 0x22E390, 1), errno 0
   45 45699673 [main] svn 2936 writev: writev (3, 0x22E390, 1)
  132 45699805 [main] svn 2936 writev: 1024 = write (3, 0x22E390, 1), errno 0
   71 45699876 [main] svn 2936 writev: writev (3, 0x22E390, 1)
   65 45699941 [main] svn 2936 __set_errno: void __set_winsock_errno(const char*
, int):289 val 113
   44 45699985 [main] svn 2936 __set_winsock_errno: sendmsg:1371 - winsock error
 10053 -> errno 113
   78 45700063 [main] svn 2936 writev: -1 = write (3, 0x22E390, 1), errno 113
  121 45700184 [main] svn 2936 close: close (3)
  370 45700554 [main] svn 2936 fhandler_socket::close: 0 = fhandler_socket::clos
e()

I probably can make an ethereal log if needed.

Lieven.

----------------------------------------------------------------
This message was sent using IMP, the Internet Messaging Program.

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Mon Sep 5 17:28:01 2005

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

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.