You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@subversion.apache.org by Peter Yamamoto <ya...@page44.com> on 2006/04/03 18:42:30 UTC
python churning on import...
A user accidently imported a few files and folders to the root of our
repository (eg beside trunk,tags,branches instead of under the trunk)...
the thing is that the svnservice had a python process churning on the
rev path for over half an hour. A sampling from filemon is shown below.
The user was using RapidSVN.
I've had checkins take a long time but the checkins were large checkins.
But this was a small "add"... is this file access normal?
Peter
Server is WinXP Pro, P4 3.0GHz 2Gb RAM, new SATA Raid drive (tons of
space free).
14 10:03:00 AM python.exe:2744 READ F:\svndata\repos\db\revs\4 SUCCESS
Offset: 9108563518 Length: 4096
15 10:03:00 AM python.exe:2744 CLOSE F:\svndata\repos\db\revs\4 SUCCESS
16 10:03:00 AM python.exe:2744 OPEN F:\svndata\repos\db\revs\4 SUCCESS
Options: Open Access: All
17 10:03:00 AM python.exe:2744 READ F:\svndata\repos\db\revs\4 SUCCESS
Offset: 9108563584 Length: 4096
18 10:03:00 AM python.exe:2744 CLOSE F:\svndata\repos\db\revs\4 SUCCESS
19 10:03:00 AM python.exe:2744 OPEN
F:\svndata\repos\db\transactions\89-1.txn\props SUCCESS Options: OpenIf
Access: All
20 10:03:00 AM python.exe:2744 READ
F:\svndata\repos\db\transactions\89-1.txn\props SUCCESS Offset: 0
Length: 4096
21 10:03:00 AM python.exe:2744 CLOSE
F:\svndata\repos\db\transactions\89-1.txn\props SUCCESS
22 10:03:00 AM python.exe:2744 OPEN
F:\svndata\repos\db\transactions\89-1.txn\node.0.0 SUCCESS Options: Open
Access: All
23 10:03:00 AM python.exe:2744 READ
F:\svndata\repos\db\transactions\89-1.txn\node.0.0 SUCCESS Offset: 0
Length: 4096
24 10:03:00 AM python.exe:2744 CLOSE
F:\svndata\repos\db\transactions\89-1.txn\node.0.0 SUCCESS
25 10:03:00 AM python.exe:2744 OPEN
F:\svndata\repos\db\transactions\89-1.txn\node.0.0 SUCCESS Options: Open
Access: All
26 10:03:00 AM python.exe:2744 READ
F:\svndata\repos\db\transactions\89-1.txn\node.0.0 SUCCESS Offset: 0
Length: 4096
27 10:03:00 AM python.exe:2744 CLOSE
F:\svndata\repos\db\transactions\89-1.txn\node.0.0 SUCCESS
28 10:03:00 AM python.exe:2744 OPEN F:\svndata\repos\db\revs\4 SUCCESS
Options: Open Access: All
29 10:03:00 AM python.exe:2744 READ F:\svndata\repos\db\revs\4 SUCCESS
Offset: 9109382943 Length: 4096
30 10:03:00 AM python.exe:2744 CLOSE F:\svndata\repos\db\revs\4 SUCCESS
and a "few" minutes later still going...
4056401 10:19:38 AM python.exe:2744 CLOSE
F:\svndata\repos\db\transactions\89-1.txn\node.0.0 SUCCESS
4056402 10:19:38 AM python.exe:2744 OPEN F:\svndata\repos\db\revs\4
SUCCESS Options: Open Access: All
4056403 10:19:38 AM python.exe:2744 READ F:\svndata\repos\db\revs\4
SUCCESS Offset: 9126351356 Length: 4096
4056404 10:19:38 AM python.exe:2744 CLOSE F:\svndata\repos\db\revs\4
SUCCESS
4056405 10:19:38 AM python.exe:2744 OPEN F:\svndata\repos\db\revs\4
SUCCESS Options: Open Access: All
4056406 10:19:38 AM python.exe:2744 READ F:\svndata\repos\db\revs\4
SUCCESS Offset: 9126338877 Length: 4096
4056407 10:19:38 AM python.exe:2744 CLOSE F:\svndata\repos\db\revs\4
SUCCESS
4056408 10:19:38 AM python.exe:2744 OPEN F:\svndata\repos\db\revs\4
SUCCESS Options: Open Access: All
4056409 10:19:38 AM python.exe:2744 READ F:\svndata\repos\db\revs\4
SUCCESS Offset: 9126338811 Length: 4096
4056410 10:19:38 AM python.exe:2744 CLOSE F:\svndata\repos\db\revs\4
SUCCESS
4056411 10:19:38 AM python.exe:2744 OPEN F:\svndata\repos\db\revs\4
SUCCESS Options: Open Access: All
4056412 10:19:38 AM python.exe:2744 READ F:\svndata\repos\db\revs\4
SUCCESS Offset: 9126338877 Length: 4096
4056413 10:19:38 AM python.exe:2744 CLOSE F:\svndata\repos\db\revs\4
SUCCESS
4056414 10:19:38 AM python.exe:2744 OPEN
F:\svndata\repos\db\transactions\89-1.txn\props SUCCESS Options: OpenIf
Access: All
4056415 10:19:38 AM python.exe:2744 READ
F:\svndata\repos\db\transactions\89-1.txn\props SUCCESS Offset: 0
Length: 4096
4056416 10:19:38 AM python.exe:2744 CLOSE
F:\svndata\repos\db\transactions\89-1.txn\props SUCCESS
4056417 10:19:38 AM python.exe:2744 OPEN
F:\svndata\repos\db\transactions\89-1.txn\node.0.0 SUCCESS Options: Open
Access: All
4056418 10:19:38 AM python.exe:2744 READ
F:\svndata\repos\db\transactions\89-1.txn\node.0.0 SUCCESS Offset: 0
Length: 4096
4056419 10:19:38 AM python.exe:2744 CLOSE
F:\svndata\repos\db\transactions\89-1.txn\node.0.0 SUCCESS
4056420 10:19:38 AM python.exe:2744 OPEN
F:\svndata\repos\db\transactions\89-1.txn\node.0.0 SUCCESS Options: Open
Access: All
4056421 10:19:38 AM python.exe:2744 READ
F:\svndata\repos\db\transactions\89-1.txn\node.0.0 SUCCESS Offset: 0
Length: 4096
4056422 10:19:38 AM python.exe:2744 CLOSE
F:\svndata\repos\db\transactions\89-1.txn\node.0.0 SUCCESS
4056423 10:19:38 AM python.exe:2744 OPEN F:\svndata\repos\db\revs\4
Options: Open Access: All
Re: python churning on import...
Posted by Garrett Rooney <ro...@electricjellyfish.net>.
On 4/3/06, Peter Yamamoto <ya...@page44.com> wrote:
>
> A user accidently imported a few files and folders to the root of our
> repository (eg beside trunk,tags,branches instead of under the trunk)... the
> thing is that the svnservice had a python process churning on the rev path
> for over half an hour. A sampling from filemon is shown below. The user was
> using RapidSVN.
>
> I've had checkins take a long time but the checkins were large checkins.
>
> But this was a small "add"... is this file access normal?
Any python process like that would be as part of a separate hook
script you're running on your system, so it's impossible for us to say
if it's normal or not if you don't tell us what the hook scripts are
actually doing.
-garrett
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org
Re: python churning on import...
Posted by Nathan Kidd <na...@spicycrypto.ca>.
Peter Yamamoto wrote:
> A user accidently imported a few files and folders to the root of our
> repository (eg beside trunk,tags,branches instead of under the trunk)...
> the thing is that the svnservice had a python process churning on the
> rev path for over half an hour. A sampling from filemon is shown below.
> The user was using RapidSVN.
>
> I've had checkins take a long time but the checkins were large checkins.
>
> But this was a small "add"... is this file access normal?
If python is running then you must have some custom pre/post commit
hooks enabled. By default Subversion doesn't run any python process.
You need to find out which commit-hook is causing the problem, but based
on the symptoms you described I can give you a pretty good guess that it
is a check-case-insensitive.py related script. There are several
versions floating around that will recursively walk the tree from the
top-most changed path in a commit.
Attached is the case-insensitive.py script I use which has much better
performance because it doesn't do the recursive 'ls'. It is modified
from the file of the same name in the trunk.
-Nathan
P.S. the history is below in case you wonder what I changed.
Revision: 198 Author: nathan.kidd Date: 6:22:44 PM, January 31, 2006
Message:
[svn] case-insensitive.py improvements
* encode output as utf-8 so tortoise can properly display output
(encoding as 'native' meant tortoise showed ????)
* the command line shows _____ regardless.
----
Modified : /trunk/subversion/hooks/case-insensitive.py
Revision: 197 Author: nathan.kidd Date: 6:15:51 PM, January 31, 2006
Message:
[svn] case-insensitive.py improvements
* store directory entries by canonicalized filename hash so we can
later access them directly instead of walking array of all filenames in
directory
* output which filename(s) are (existing) and (new)
* variable/function name clarification
* general cleanup
----
Modified : /trunk/subversion/hooks/case-insensitive.py
Revision: 196 Author: nathan.kidd Date: 4:03:13 PM, January 30, 2006
Message:
case-insensitive.py ported to use old SVN 1.2.3 Python 2.3.5 bindings
* with references from http://www.thehirts.net/blog/?p=8
* and check-case-insensitive.py
* Not using proper core.run_app() and classes. Future TODO. (Code
cleanness/maintainability issue)
----
Modified : /trunk/subversion/hooks/case-insensitive.py
Modified : /trunk/subversion/hooks/pre-commit.cmd