Initial cost estimate: 2 days
Initial contacts: @trylek, @jkoritzinsky, @davidwrighton
OS: Windows
Architecture: x86
Configuration: Release
Repro steps (non-deterministic): build clr+libs+libs.tests -a x86 -c Release in two runtime repo clones
Likely the linker opens the PGD file without the sharing flag so that multiple parallel coreclr builds step on each other's toes. This is happening pretty frequently and degrades local developer inner loop experience. While it seems clearly a linker bug (there's no reason for it to request exclusive / write access to the pgd file), it remains to be seen whether asking for a linker fix would be actionable so we may want to consider a workaround like copying the file to a repo location prior to linking even though it's somewhat unfortunate as the file has 36 MB so that it will probably incur a few seconds' perf penalty.
Initial cost estimate: 2 days Initial contacts: @trylek, @jkoritzinsky, @davidwrighton
OS: Windows Architecture: x86 Configuration: Release Repro steps (non-deterministic): build clr+libs+libs.tests -a x86 -c Release in two runtime repo clones
Likely the linker opens the PGD file without the sharing flag so that multiple parallel coreclr builds step on each other's toes. This is happening pretty frequently and degrades local developer inner loop experience. While it seems clearly a linker bug (there's no reason for it to request exclusive / write access to the pgd file), it remains to be seen whether asking for a linker fix would be actionable so we may want to consider a workaround like copying the file to a repo location prior to linking even though it's somewhat unfortunate as the file has 36 MB so that it will probably incur a few seconds' perf penalty.
/cc @dotnet/runtime-infrastructure