[Compiler download] Allow multiple parallel downloads of different compilers#7946
[Compiler download] Allow multiple parallel downloads of different compilers#7946ChristopherDedominici merged 2 commits intomainfrom
Conversation
|
schaable
left a comment
There was a problem hiding this comment.
LGTM. The mutex logic already has its own test in v-next/hardhat/test/internal/builtin-plugins/solidity/build-system/compiler/downloader.ts, which should cover this change.
|
This has been released as part of |
Previously,
downloadCompiler()used a single sharedMultiProcessMutex("compiler-download"), a file-based lock at, for example,/tmp/compiler-download.txt. This meant that across all parallel test workers, only one could download or even check if a compiler exists at a time. Workers needing different compiler versions would still block each other.The fix makes the mutex version-specific
(compiler-download-${version}), so workers downloading different versions proceed in parallel. Same-version downloads are still correctly serialized.