Tajemnica zablokowania nieaktywnych procesów msbuild.exe, zablokowanie Stylecop.dll, Nuget AccessViolationException i CI buduje konflikty między sobą
Obserwacje:
Na naszym serwerze kompilacji Jenkins widzieliśmy wiele procesów msbuild.exe (~ 100), które kręciły się po zakończeniu pracy, z wykorzystaniem około 20 MB pamięci i 0% aktywności procesora.
Budowano przy użyciu różnych wersji stylecopsporadycznie w braku:
workspace\packages\StyleCop.MSBuild.4.7.41.0\tools\StyleCop.targets(109,7): error MSB4131: The "ViolationCount" parameter is not supported by the "StyleCopTask" task. Verify the parameter exists on the task, and it is a gettable public instance property.
Nuget.exe byłsporadycznie wyjście z następującym błędem naruszenia dostępu (0x0000005):
.\workspace\.nuget\nuget install .\workspace\packages.config -o .\workspace\packages" exited with code -1073741819.
MsBuild został uruchomiony w następujący sposób za pomocą zadania Jenkins Matrix, z włączoną opcją „BuildInParallel”:
`msbuild /t:%Targets% /m
/p:Client=%Client%;LOCAL_BUILD=%LOCAL_BUILD%;BUILD_NUMBER=%BUILD_NUMBER%;
JOB_NAME=%JOB_NAME%;Env=%Env%;Configuration=%Configuration%;Platform=%Platform%;
Clean=%Clean%; %~dp0\_Jenkins\Build.proj`