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

Re: ugly problem found while trying to test KDE SVN

From: C. Michael Pilato <cmpilato_at_collab.net>
Date: 2005-02-23 23:36:34 CET

Could this be svnserve doing post-commit deltification or something?
I'm just guessing.

Stephan Kulow <coolo@kde.org> writes:

> Hi!
>
> I did a little test import of KDE CVS to SVN (thanks to #cvs2svn :),
> but found a severe problem when trying to some things at the limit.
>
> You can see the directory I'm commiting to at
> https://svn.kde.org/viewcvs/trunk/kde-i18n/templates/
>
> Mainly I did two test commits. One where I was the only one commiting
> and that worked. But when I asked someone else to commit a little change
> (somewhere in the repository) while I was commiting, I had this output of
> svn:
>
> Sending others/ksetiwatch.pot
> Sending others/kssh.pot
> Sending others/kwebget.pot
> Sending www.kde.org/media.pot
> Transmitting file data .....................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................
 .....................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................svn: Commit failed (details follow):
> svn: Connection closed unexpectedly
> svn: Your commit message was left in a temporary file:
>
> Doing some strace on the server it became obvious, that the server was
> simply running out of memory. Having had some bad experience with cvs,
> we set a ulimit on our server to disallow (unintended) DoS attacks. But 128MB
> are fine to do a commit, no?
>
> Now before the server was aborted due the ulimit, it was acting like this in the
> strace:
>
> open("/home/kde/db/revs/330743", O_RDONLY|O_LARGEFILE) = 4
> _llseek(4, 8452, [8452], SEEK_SET) = 0
> read(4, "id: 1.0.r330743/8452\ntype: dir\np"..., 4096) = 627
> close(4) = 0
> open("/home/kde/db/revs/330742", O_RDONLY|O_LARGEFILE) = 4
> _llseek(4, 7997, [7997], SEEK_SET) = 0
> read(4, "id: 1.0.r330742/7997\ntype: dir\np"..., 4096) = 543
> close(4) = 0
> open("/home/kde/db/revs/330741", O_RDONLY|O_LARGEFILE) = 4
> _llseek(4, 15693, [15693], SEEK_SET) = 0
> read(4, "id: 1.0.r330741/15693\ntype: dir\n"..., 4096) = 636
> close(4) = 0
> open("/home/kde/db/revs/330740", O_RDONLY|O_LARGEFILE) = 4
> _llseek(4, 19708, [19708], SEEK_SET) = 0
> read(4, "id: 1.0.r330740/19708\ntype: dir\n"..., 4096) = 542
> close(4) = 0
> open("/home/kde/db/revs/330739", O_RDONLY|O_LARGEFILE) = 4
> _llseek(4, 7760, [7760], SEEK_SET) = 0
> read(4, "id: 1.0.r330739/7760\ntype: dir\np"..., 4096) = 546
> close(4) = 0
> open("/home/kde/db/revs/330738", O_RDONLY|O_LARGEFILE) = 4
> _llseek(4, 10026, [10026], SEEK_SET) = 0
> read(4, "id: 1.0.r330738/10026\ntype: dir\n"..., 4096) = 638
> close(4) = 0
> open("/home/kde/db/revs/330737", O_RDONLY|O_LARGEFILE) = 4
> _llseek(4, 15292, [15292], SEEK_SET) = 0
> read(4, "id: 1.0.r330737/15292\ntype: dir\n"..., 4096) = 633
> close(4) = 0
> open("/home/kde/db/revs/330736", O_RDONLY|O_LARGEFILE) = 4
> _llseek(4, 80588, [80588], SEEK_SET) = 0
> read(4, "id: 1.0.r330736/80588\ntype: dir\n"..., 4096) = 616
> close(4) = 0
> open("/home/kde/db/revs/330735", O_RDONLY|O_LARGEFILE) = 4
> _llseek(4, 16008, [16008], SEEK_SET) = 0
> read(4, "id: 1.0.r330735/16008\ntype: dir\n"..., 4096) = 696
> close(4) = 0
> open("/home/kde/db/revs/330734", O_RDONLY|O_LARGEFILE) = 4
> _llseek(4, 11384, [11384], SEEK_SET) = 0
> read(4, "id: 1.0.r330734/11384\ntype: dir\n"..., 4096) = 539
> close(4) = 0
> open("/home/kde/db/revs/330733", O_RDONLY|O_LARGEFILE) = 4
> _llseek(4, 13222, [13222], SEEK_SET) = 0
> read(4, "id: 1.0.r330733/13222\ntype: dir\n"..., 4096) = 551
> close(4) = 0
> open("/home/kde/db/revs/330732", O_RDONLY|O_LARGEFILE) = 4
> _llseek(4, 13480, [13480], SEEK_SET) = 0
> read(4, "id: 1.0.r330732/13480\ntype: dir\n"..., 4096) = 551
> close(4) = 0
> open("/home/kde/db/revs/330731", O_RDONLY|O_LARGEFILE) = 4
> _llseek(4, 16106, [16106], SEEK_SET) = 0
> read(4, "id: 1.0.r330731/16106\ntype: dir\n"..., 4096) = 536
> close(4) = 0
> open("/home/kde/db/revs/330730", O_RDONLY|O_LARGEFILE) = 4
> _llseek(4, 26851, [26851], SEEK_SET) = 0
> read(4, "id: 1.0.r330730/26851\ntype: dir\n"..., 4096) = 799
> close(4) = 0
> open("/home/kde/db/revs/330729", O_RDONLY|O_LARGEFILE) = 4
> brk(0) = 0xe805000
> brk(0xe827000) = 0xe827000
>
> Basically it opened all revisions downwards starting from HEAD and seeked
> something in there and (I asumme) puts it in some list eating up memory.
> As you can find out on the viewcvs, it's not the case that every of these revisions
> saw a change to /trunk/kde-i18n/templates, so from what I understood it shouldn't
> open them, e.g. https://svn.kde.org/viewcvs?rev=330730&view=rev is pretty
> unrelated.
>
> Why is svnserve (version 1.1.3 btw) doing that? If this is happening whenever
> two people commit at the same time, then I'm afraid this would make KDE moving
> to subversion impossible ;(
>
> Greetings, Stephan
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
> For additional commands, e-mail: dev-help@subversion.tigris.org

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Wed Feb 23 23:39:30 2005

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