You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I'm not sure there is any correlation to #60, but for GitPython-2.0.7 I got:
Traceback (most recent call last):
File "/home/emc/auto/repository/trt.py", line 105, in run
self._update_test_repository()
File "/home/emc/auto/repository/trt.py", line 368, in _update_test_repository
update_repository(self.repository)
File "/home/emc/auto/repository/utils/repository.py", line 29, in update_repository
if repo.check_repository_type(repository_type=repo_type) and repo.is_repo_clean():
File "/home/emc/auto/repository/gitrepository.py", line 112, in is_repo_clean
dirty = self.repo.is_dirty()
File "/home/emc/virtualenvs/emc/lib/python2.7/site-packages/git/repo/base.py", line 606, in is_dirty
len(self.git.diff('--cached', *default_args)):
File "/home/emc/virtualenvs/emc/lib/python2.7/site-packages/git/cmd.py", line 463, in <lambda>
return lambda *args, **kwargs: self._call_process(name, *args, **kwargs)
File "/home/emc/virtualenvs/emc/lib/python2.7/site-packages/git/cmd.py", line 929, in _call_process
return self.execute(make_call(), **_kwargs)
File "/home/emc/virtualenvs/emc/lib/python2.7/site-packages/git/cmd.py", line 625, in execute
raise GitCommandNotFound(str(err))
GitCommandNotFound: [Errno 24] Too many open files
The text was updated successfully, but these errors were encountered:
There are two issues here, even though I think only one could be approached. Firstly, the git command could not be spawned as the system appears be out of resources. As GitPython spawns a process, it should have it's own limit of open files, so it appears to be the OS being unable to open any more files for the current user. This is something entirely out of GitPython's control.
However, GitPython just assumes that probably the git command was not found, and throws a GitCommandNotFound exception, which is wrong in this case. I believe this was implemented assuming it would be correct most of the time. Changing the name of said exception would be breaking, so I would rather not want to do it.
I got your point, I will try to monitor system resources, but it just happen first time and I use GitPython (in my project) heavily since ~1 year, so you can close the issue as you wish.
Thanks for your feedback, please let me know if you find anything else. Generally, freeing system resources is somewhat broken in GitPython as it relies on destructors for the most part, which are highly non-deterministic these days.
I'm not sure there is any correlation to #60, but for GitPython-2.0.7 I got:
The text was updated successfully, but these errors were encountered: