Hi,
Steps to reproduce:
$ git --version
git version 1.9.1
$ wc -l /tmp/1
9090 /tmp/1
$ head /tmp/1
delete refs/pull/1/head
create refs/heads/pull/1 86b715f346e52920ca7c9dfe65424eb9946ebd61
delete refs/pull/1/merge
create refs/merges/1 c0633abdc5311354c9729374e0ba25c97a89f69e
...
$ ulimit -n
1024
$ git update-ref --stdin < /tmp/1
fatal: Unable to create '/home/gitmirror/repositories/Ceph/ceph/refs/heads/pull/1917.lock': Too many open files
$ head -20 /tmp/1 | git update-ref --stdin
$ echo $?
0
The workaround is to increase ulimit -n
git update-ref --stdin should probably close some files.
Cheers
--
Loïc Dachary, Artisan Logiciel Libre