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

svnserve in infinite loop opening the same FSFS revision files over and over

From: Matt McHenry <mmchenry_at_carnegielearning.com>
Date: Thu, 4 Dec 2008 16:43:03 -0500

I've noticed over the last couple of days that periodically, my
svn server gets really slow. The cause seems to be a few svnserve
processes that have no remaining open network sockets, but are still
sucking up CPU cycles. These processes do seem to go away eventually
(after tens of minutes at least), but I usually get impatient and kill
them. :) I haven't yet been able to discover what client command is
associated with the creation of these processes.

        I used strace to see what one of them is doing, and it's just
the following pattern of four lines repeating over and over:

open("/srv/svn/repos/db/revs/85073", O_RDONLY|O_LARGEFILE) = 3
_llseek(3, 108568, [108568], SEEK_SET) = 0
read(3, "id: 42-85073.0-84152.r85073/1085"..., 4096) = 4096
close(3) = 0

        Piping the strace output through 'grep revs | cut -d \" -f 2 |
cut -d / -f 7 | sort | uniq -c', I can see that it's looking at the
same revisions over and over again:

      1 74401
      6 84499
      2 84556
      8 85054
      2 85055
      3 85058
      2 85061
      7 85073
      3 85093
     41 85102
     29 85119
     42 85124
      2 85171
      9 85172
      8 85174
     11 85176
     20 85177
     15 85178
     17 85184
      7 85185
     17 85188
      7 85195
     31 85197
      2 85202
     11 85203

        I have no intimate knowledge of the FSFS implementation, but
this pattern did bring to mind
http://svn.collab.net/repos/svn/trunk/notes/skip-deltas, which I read a
while back and only half understood. Does anyone have any ideas about
what might be causing this? If more diagnostic information would be
helpful, just let me know how to gather it.

# svnserve --version
svnserve, version 1.5.2 (r32768)
   compiled Sep 3 2008, 07:53:16

Copyright (C) 2000-2008 CollabNet.
Subversion is open source software, see http://subversion.tigris.org/
This product includes software developed by CollabNet
(http://www.Collab.Net/).

The following repository back-end (FS) modules are available:

* fs_fs : Module for working with a plain file (FSFS) repository.

        I'm not subscribed to the dev list, so please CC me on replies.
Thanks for any help!

Matt McHenry
412-690-2442 x150
Software Developer
Carnegie Learning, Inc.
Learning By Doing (r)
Helping over 500,000 students in 2,600 schools to succeed in math.
http://www.carnegielearning.com

------------------------------------------------------
http://subversion.tigris.org/ds/viewMessage.do?dsForumId=462&dsMessageId=979838
Received on 2008-12-04 22:43:06 CET

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