Re: First Git status takes 40+ minutes, when mounting fileystem/diskimage with 50G GIT repo + 900G of builds articles
- From
Junio C Hamano <gitster@pobox.com>
- Date
- Aug 22, 2019, 19:32 UTC
- Message-ID
- <xmqq4l29ov2k.fsf@gitster-ct.c.googlers.com>
- In-Reply-To
- <b409d16f-c392-7f1f-79a0-e14e70148cad@kdbg.org>
Johannes Sixt <j6t@kdbg.org> writes:
Show 11 quoted lines
> Am 22.08.19 um 20:02 schrieb Saravanan Shanmugham (sarvi): >> We have a diskimage/fileysystem that has a 50G Git repository + 900G >> of binary/build articles and untracked files. When we mount such a >> diskimage, The verify first “git status” command can take as long >> 40-50minutes. Subsequent “git status” finish in under 5-10 seconds.> >> If I had a diskimage of just the 50G source repository, and I mount >> and do a “git status” takes around 15 seconds. > Are you saying that you commonly mount and unmount the filesystem? > > Git tracks a device number in the index. Could it happen that it is > different every time you mount the filesystem?
I read the above to mean that a diskimage file is treated as a virtual block device on which a filesystem image exists, and it is mounted via the lookback device mechanism. In such a case, I do not think stability of i-num would not be an issue (the filesystem image would record them all).
> You may set "git config core.checkStat minimal" to avoid the problem. > But it may come with its own problems (certain kinds of modifications > would not be noticed, although these would be hard to trigger in practice).
Yeah.