[Build perf] Experiment with CreateHardLink in nsinstall on Win32

NEW
Unassigned

Status

--
enhancement
5 years ago
7 months ago

People

(Reporter: mayhemer, Unassigned)

Tracking

Trunk
All
Windows XP

Firefox Tracking Flags

(Not tracked)

Details

(URL)

(Reporter)

Description

5 years ago
See URL for docs.

"Any directory entry for a file that is created with CreateFile or CreateHardLink is a hard link to an associated file. An additional hard link that is created with the CreateHardLink function allows you to have multiple directory entries for a file, that is, multiple hard links to the same file."

- means that all files are actually already hardlinks to their own single real files :)

"However, all hard links to a file must be on the same volume."

- how do we check this?  I heard some people move the obj dir to a different volume sometimes.

"Use DeleteFile to delete hard links"

- so a standard way to delete.

Minimum supported client
	Windows XP [desktop apps only]

Minimum supported server
	Windows Server 2003 [desktop apps only]

Comment 1

5 years ago
We can detect this at run-time. We already check for whether symlinks are supported and fall back to copy. We can teach this code to be aware of hard links and to react gracefully when they aren't supported.
See also bug 680968. I feel like we experimented with symlinks or hardlinks on Windows in the past with unfortunate consequences. I know we ran into a bug with msys tar not handling them properly.

Updated

7 months ago
Product: Core → Firefox Build System
You need to log in before you can comment on or make changes to this bug.