Mercurial case-folding BIG BUG
Dustin Sallings
dustin at spy.net
Sun Feb 3 22:26:32 CST 2008
On Feb 3, 2008, at 10:10, Guo Tang wrote:
> I am using Windows at work. So I had tried to figure out a solution
> for
> hg. The idea I had was using os.walk() to get the case sensitive file
> names from NTFS. Then before hg asking the status of a file, it first
> check against os.walk() result to make sure the file is really there.
> But when I checked the performance of os.walk(), it is not good. For
> my
> clearcase source codes, I have 53,000 files. It took os.walk() 53
> seconds
> to finish. The performance hit is just too big to make the fix useful.
> I would say if we can find a way to do this faster (like less than 1
> second for 50k files), it might be useful to add a flag to turn it on.
>
> It might be interesting for TortoiseHg to solve this problem. I know
> TortoiseSVN has some way of "caching" file status (maybe also case
> sensitive file name?). Or any notification hook from OS to user land
> application that something has changed inside this folder? Then we
> once
> pay this price once.
If your source tree relies on files whose names your filesystem can't
represent for whatever reason, I don't see why it would be the job of
the revision control system to come in and solve this for you. The
build system will still fail, right?
--
Dustin Sallings
More information about the Mercurial
mailing list