I was dumping ~gigs of files of approximately 3-6megs a pop (my music collection) so I could track the files that I want to listen to when I'm on the go. I had the git watch command running from the assistant branch.
I was getting something along the lines of...
/Users/jtang/annex/.git/annex/tmp/: openTempFile: resource exhausted (Too many open files)
and
git-annex: createPipe: resource exhausted (Too many open files)
I also noticed that I somehow ended up with 256 ssh-agent's running on one of my machines, I'm not sure if the two issues are related or not, I had not noticed this type of behaviour up until recently.
Also this was appearing in the logs
x00:annex jtang$ tail -f .git/annex/daemon.log
(scanning...) Already up-to-date.
kqueue: Too many open files
To be precise, I suspect that the kqueue limit is 256, I had 325 files in the 'queue', I ended up doing a git annex add manually and all was fine.
Yes, this is a known problem with kqueue, it has to keep every directory in the tree open. On inotify I have a note that it may need to fork off extra watcher processes to deal with this. Of course that adds significant complication.
In the meantime, you may be able to increase your system's maximum allowed number of open files per process somehow.
(I doubt that the ssh-agent is related; git-annex does not use ssh-agent directly anyway..)
Doing,
Somewhat works for me, git-annex watch at least starts up and takes a while to scan the directory, but it's not ideal. Also, creating files seems to work okay, when I remove a file the changes don't seem to get pushed across my other repos, running a sync on the remote repo fixes things.