Thread (13 messages) flat view 13 messages, 6 authors, 2016-06-15

Re: Issue: repack semi-frequently fails on Windows (msysgit) - suspecting file descriptor issues

From: Andreas Mohr <hidden>
Date: 2016-06-15 23:04:27

On Thu, Apr 16, 2015 at 01:42:35PM +0200, Andreas Mohr wrote:
Hi,

On Thu, Apr 16, 2015 at 01:31:02PM +0200, Johannes Schindelin wrote:
quoted
Hi,

On 2015-04-16 13:10, Thomas Braun wrote:
quoted
I've never had this issue. The error message from unlinking the file
means that someone is still accessing the file and thus it can not be
deleted (due to the implicit file locking on windows).
Best guess is that an antivirus is still accessing it. There is a tool called `WhoUses.exe` in msysGit (I do not remember if I included it into Git for Windows 1.x for end users) which could be used to figure out which process accesses a given file still: https://github.com/msysgit/msysgit/blob/master/mingw/bin/WhoUses.exe (maybe that would help you identify the cause of the problem).
Oh my. Botched mail conversation...
I tried to f'up on this messy start ASAP, so I even managed to omit this final *pre-existing* part:
"
Please note that this system is hampered by a crappy virus scanner
dependency (F-Secure),
which could be the culprit for this issue (e.g. by keeping files busy
for longer than expected),
however I really don't think that it takes part in this issue.
"

The reason that I suspect that it's not virus scanner related is:
- standalone git gc --auto works immediately
  (hmm but this might also point at the opposite - namely virus scanner
  still accessing files of a prior operation only in case there *was*
  a prior operation)
- file descriptor scope handling issue in git source code is very easily imaginable
- only a very rebase-heavy workflow of a sufficiently large repo
  is likely to have this issue turn up in a frequently enough manner,
  thus it's quite likely that it's not observed (or reported) all too often
OK, at this point in time it's my turn to actually verify
that indeed it's NOT the virus scanner:
- generate rebase-heavy activity
- update
- hit issue
- unload virus (~ scanner?? I'm unsure on exact terminology to be used ;-)
- update
- profit!?

(and possibly have a try at WhoUses.exe there, too - thanks for the hint!)

Andreas Mohr
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help