---TAW replies below--- -----Original Message----- From: brian m. carlson <sandals@xxxxxxxxxxxxxxxxxxxx> Sent: Tuesday, May 16, 2023 2:31 PM To: Tim Walter (Visual Concepts) <twalter@xxxxxxxxxxxxxxxxxxx> Cc: git@xxxxxxxxxxxxxxx Subject: Re: git hangs with --separate-git-dir On 2023-05-16 at 17:54:41, Tim Walter (Visual Concepts) wrote: > Windows 10 PC > large project > 300GB > 500,000 files > mix of binary and text assets. > > cd /d D:\myproject > git init --separate-git-dir=F:\myproject.git > git add * > > Git runs for a little while then hangs and does some really bad things to the OS as well. > it seems impossible to kill git.exe even with administrator priviledges. > f: drive ends up locked and any other process, such as explorer that > try to look at it also hang you cannot log out without hanging or even > restart This then requires a hard power cycle to fix. > > 100% reproducable. > > running git init without --separate-git-dir and git add * works fine > (takes 3 hours,.. but works) then I can move the .git dir to f: and reinit with --separate-git-dir and that works. > So this seems to only be a problem for the initial init. I don't use Windows so I can't verify this, but I would not expect this problem to occur. Even hashing 500,000 files consuming 300 GB should not hang the computer or take 3 hours. What kind of disk is F:? Is it an external disk (USB or such, and if so, what speed and kind)? Is it a network drive? Is it another local disk in the computer (SSD or HDD)? Are you using an antivirus or firewall other than the default, or any sort of other monitoring software? What I suspect is happening here is that you have an antivirus intercepting Git's operations and scanning the files for viruses, making everything really slow, and then at some point a bug occurs in the antivirus (which may have a kernel driver) and then things hang. This is probably made worse if F: is an external drive or network drive. If you are, can you try to completely uninstall that software and reboot, and then try again? -- brian m. carlson (he/him or they/them) Toronto, Ontario, CA ---TAW--- it's SSD, actually NVme, and the PC is 128GB ram 64 core very fast. ---TAW--- Both drives are local SSD drives, the working directory on D: and the repo on F:. ---TAW--- the 3 hour thing is not a problem as such (it's a little frustrating that git is single threaded, but regardless, this is not the issue I am concerned with) ---TAW--- it's only 3 hours once, on the very first git add when I create the repo ---TAW--- I can live with that, I was just giving context. ---TAW--- ---TAW--- The real issue is that it does a "very bad hang and mess up of the OS" if the repo is separate from the working directory. ---TAW--- In my case it happens to be a separate drive, not sure if that is relevant, I didn't try a separate folder on the same drive. ---TAW--- ---TAW--- There's anti-virus (SentinelOne) but we're very familiar with how that works, I don't think that is the issue, and on-demand scanning is disabled anyway. ---TAW--- no firewall locally, our network obviously has firewall for the entire company network, but the workstations don't have individual firewall enabled. ---TAW--- Again, I'm not complaining about the speed, (that was just for context, and can be discussed as a separate issue if needed) ---TAW--- it's the hang and break the OS in a really nasty way that I am concerned with. ---TAW--- ---TAW--- It's not possible to uninstall the anti-virus SW, company policy and I don't have permissions for that level of configuration. ---TAW--- Our current solution (perforce) manages the same source files and does not have any interaction with the anti-virus ---TAW---We're careful to tell the anti-virus to ignore certain folders, and not to do on-demand scanning on those drives anyway. ---TAW--- That's one of the reasons we have separate drives (c: is protected a lot more than d: which is just the "work folders" for example. ---TAW--- ---TAW--- I expected that other people would have had this issue already, but it sounds like you've never heard of it, so maybe something odd ---TAW--- about our particular configuration? But I don't know what, except that: ---TAW--- : it's a large project ---TAW--- : it contains binary as well as text files ---TAW--- : I am trying to use 2 different local drives ---TAW--- : I am using windows, sorry can't help that, we are forced to develop using windows tools.