[MLton] Slow commits to MLton's SVN repository

Matthew Fluet fluet at tti-c.org
Fri Feb 2 09:52:04 PST 2007

> For the second time I encountered difficulty performing a largish (but not
> that large) commit to MLton's SVN repository.  Looking at ps output, the
> commit ran for at least about 40 minutes before I decided to give up and
> perform multiple small commits instead.  What could be the problem?  Is the
> SVN server very old?  Are precommit scripts taking ages?

I'm running into this as well, trying to commit the merge of some trunk 
revisions into the x86_64 branch (which I do not want to split into 
separate commits).

It's definitely some sort of problem with the pre-commit scripts. 
Logging into mlton.org while my 'svn commit' is going on another 
machine, I see my 'svnserve' process and three 'pre-commit' processes. 
I think the problem was introduced in mid-December when Stephen changed 
the pre-commit to omit the check for tabs when the changed file matches 
a pattern in allow-tabs.

fluet at mlton:~$ ps -U fluet
   PID TTY          TIME CMD
22879 ?        00:00:00 sshd
22880 ?        00:00:02 svnserve
23575 ?        00:00:00 pre-commit
23815 ?        00:00:00 pre-commit
23816 ?        00:00:00 pre-commit
20355 ?        00:00:00 sshd
20356 pts/0    00:00:00 bash
21762 pts/0    00:00:00 ps
fluet at mlton:~$ strace -p 22880
Process 22880 attached - interrupt to quit
waitpid(23575,  <unfinished ...>
Process 22880 detached
fluet at mlton:~$ strace -p 23575
Process 23575 attached - interrupt to quit
waitpid(-1,  <unfinished ...>
Process 23575 detached
fluet at mlton:~$ strace -p 23815
Process 23815 attached - interrupt to quit
write(2, "+ echo mlton/branches/on-2005082"..., 75 <unfinished ...>
Process 23815 detached
fluet at mlton:~$ strace -p 23816
Process 23816 attached - interrupt to quit
write(2, "+ grep -q -f /svnroot/hooks/allo"..., 39 <unfinished ...>
Process 23816 detached

The hooks are not themselves under revision control, so I don't know 
what exactly changed.

More information about the MLton mailing list