A recent "ps axf -o pid,start,args" I got from webops looked like this:
24314 May 01 /srv/turnip/venv/bin/python /srv/turnip/venv/bin/twistd --nodaemon --pidfile= --logfile=/srv/turnip/logs/packbackendserver.log --python=pack
12109 May 03 \_ git receive-pack /srv/turnip/data/repos/28
12116 May 03 | \_ /usr/bin/python hooks/post-receive
12152 May 03 \_ git receive-pack /srv/turnip/data/repos/30
12159 May 03 | \_ /usr/bin/python hooks/post-receive
2582 May 04 \_ git receive-pack /srv/turnip/data/repos/48
2591 May 04 | \_ /usr/bin/python hooks/post-receive
2643 May 04 \_ git receive-pack /srv/turnip/data/repos/48
2652 May 04 | \_ /usr/bin/python hooks/post-receive
10913 May 07 \_ git receive-pack /srv/turnip/data/repos/87
10923 May 07 | \_ /usr/bin/python hooks/post-receive
5296 02:43:30 \_ git receive-pack /srv/turnip/data/repos/95
5306 02:43:33 | \_ /usr/bin/python hooks/post-receive
5472 02:59:19 \_ git receive-pack /srv/turnip/data/repos/95
5479 02:59:19 | \_ /usr/bin/python hooks/post-receive
16000 15:26:36 \_ git receive-pack /srv/turnip/data/repos/9
16005 15:26:54 \_ git index-pack --stdin --pack_header=2,1234441 --keep=receive-pack 16000 on juju-prodstack-lp-git-machine-2 --fix-thin
I'm not sure why that index-pack is taking so long, but as for the others, they could well be deployments that happened to coincide with webapp upgrades or to hang for some other reason. We should have a timeout in HookRPCHandler.notifyPush and cancel the Deferred if it takes too long.