-
Notifications
You must be signed in to change notification settings - Fork 1.4k
Open
Description
It seems there is a race condition in TypeLoader class
"C:\Users\alinama\work\testRepos\many-projects\many-projects.sln" (rebuild target) (1) ->
"C:\Users\alinama\work\testRepos\many-projects\ClassLibrary2\ClassLibrary2.csproj" (Rebuild target) (3) ->
MSBUILD : error : This is an unhandled exception in MSBuild -- PLEASE UPVOTE AN EXISTING ISSUE OR FILE A NEW ONE A
T https://aka.ms/msbuild/unhandled [C:\Users\alinama\work\testRepos\many-projects\ClassLibrary2\ClassLibrary2.csproj
]
MSBUILD : error : System.ObjectDisposedException: This object is no longer valid because the MetadataLoadContext
that created it has been disposed. [C:\Users\alinama\work\testRepos\many-projects\ClassLibrary2\ClassLibrary2.cspro
j]
MSBUILD : error : at System.Reflection.MetadataLoadContext.DisposeCheck() [C:\Users\alinama\work\testRepos\many-p
rojects\ClassLibrary2\ClassLibrary2.csproj]
MSBUILD : error : at System.Reflection.TypeLoading.Ecma.EcmaProperty.ComputeName() [C:\Users\alinama\work\testRep
os\many-projects\ClassLibrary2\ClassLibrary2.csproj]
MSBUILD : error : at System.Reflection.TypeLoading.RoProperty.get_Name() [C:\Users\alinama\work\testRepos\many-pr
ojects\ClassLibrary2\ClassLibrary2.csproj]
MSBUILD : error : at Microsoft.Build.Execution.ReflectableTaskPropertyInfo..ctor(PropertyInfo propertyInfo, Boole
an output, Boolean required, Boolean isAssignableToITaskItemType) in C:\Users\alinama\work\msbuild\src\Build\Instanc
e\ReflectableTaskPropertyInfo.cs:line 61 [C:\Users\alinama\work\testRepos\many-projects\ClassLibrary2\ClassLibrary2.
csproj]
MSBUILD : error : at Microsoft.Build.Shared.LoadedType..ctor(Type type, AssemblyLoadInfo assemblyLoadInfo, Assemb
ly loadedAssembly, Type iTaskItemType, Boolean loadedViaMetadataLoadContext) in C:\Users\alinama\work\msbuild\src\Sh
ared\LoadedType.cs:line 131 [C:\Users\alinama\work\testRepos\many-projects\ClassLibrary2\ClassLibrary2.csproj]
MSBUILD : error : at Microsoft.Build.Shared.TypeLoader.AssemblyInfoToLoadedTypes.<GetLoadedTypeFromTypeNameUsingM
etadataLoadContext>b__10_0(String typeName) in C:\Users\alinama\work\msbuild\src\Shared\TypeLoader.cs:line 427 [C:\U
sers\alinama\work\testRepos\many-projects\ClassLibrary2\ClassLibrary2.csproj]
MSBUILD : error : at System.Collections.Concurrent.ConcurrentDictionary`2.GetOrAdd(TKey key, Func`2 valueFactory)
[C:\Users\alinama\work\testRepos\many-projects\ClassLibrary2\ClassLibrary2.csproj]
MSBUILD : error : at Microsoft.Build.Shared.TypeLoader.AssemblyInfoToLoadedTypes.GetLoadedTypeFromTypeNameUsingMe
tadataLoadContext(String typeName) in C:\Users\alinama\work\msbuild\src\Shared\TypeLoader.cs:line 384 [C:\Users\alin
ama\work\testRepos\many-projects\ClassLibrary2\ClassLibrary2.csproj]
MSBUILD : error : at Microsoft.Build.Shared.TypeLoader.AssemblyInfoToLoadedTypes.GetLoadedTypeByTypeName(String t
ypeName, Boolean useTaskHost) in C:\Users\alinama\work\msbuild\src\Shared\TypeLoader.cs:line 330 [C:\Users\alinama\w
ork\testRepos\many-projects\ClassLibrary2\ClassLibrary2.csproj]
MSBUILD : error : at Microsoft.Build.Shared.TypeLoader.GetLoadedType(ConcurrentDictionary`2 cache, String typeNam
e, AssemblyLoadInfo assembly, Boolean useTaskHost) in C:\Users\alinama\work\msbuild\src\Shared\TypeLoader.cs:line 25
4 [C:\Users\alinama\work\testRepos\many-projects\ClassLibrary2\ClassLibrary2.csproj]
MSBUILD : error : at Microsoft.Build.Shared.TypeLoader.Load(String typeName, AssemblyLoadInfo assembly, Boolean u
seTaskHost) in C:\Users\alinama\work\msbuild\src\Shared\TypeLoader.cs:line 222 [C:\Users\alinama\work\testRepos\many
-projects\ClassLibrary2\ClassLibrary2.csproj]
MSBUILD : error : at Microsoft.Build.BackEnd.AssemblyTaskFactory.InitializeFactory(AssemblyLoadInfo loadInfo, Str
ing taskName, IDictionary`2 taskParameters, String taskElementContents, IDictionary`2 taskFactoryIdentityParameters,
Boolean taskHostExplicitlyRequested, TargetLoggingContext targetLoggingContext, ElementLocation elementLocation, St
ring taskProjectFile) in C:\Users\alinama\work\msbuild\src\Build\Instance\TaskFactories\AssemblyTaskFactory.cs:line
296 [C:\Users\alinama\work\testRepos\many-projects\ClassLibrary2\ClassLibrary2.csproj]
MSBUILD : error : at Microsoft.Build.Execution.TaskRegistry.RegisteredTaskRecord.GetTaskFactory(TargetLoggingCont
ext targetLoggingContext, ElementLocation elementLocation, String taskProjectFile, Boolean isMultiThreadedBuild) in
C:\Users\alinama\work\msbuild\src\Build\Instance\TaskRegistry.cs:line 1515 [C:\Users\alinama\work\testRepos\many-pro
jects\ClassLibrary2\ClassLibrary2.csproj]
MSBUILD : error : at Microsoft.Build.Execution.TaskRegistry.RegisteredTaskRecord.CanTaskBeCreatedByFactory(String
taskName, String taskProjectFile, IDictionary`2 taskIdentityParameters, TargetLoggingContext targetLoggingContext,
ElementLocation elementLocation, Boolean isMultiThreadedBuild) in C:\Users\alinama\work\msbuild\src\Build\Instance\T
askRegistry.cs:line 1395 [C:\Users\alinama\work\testRepos\many-projects\ClassLibrary2\ClassLibrary2.csproj]
MSBUILD : error : at Microsoft.Build.Execution.TaskRegistry.<>c__DisplayClass40_0.<GetMatchingRegistration>b__0(R
egisteredTaskRecord r) in C:\Users\alinama\work\msbuild\src\Build\Instance\TaskRegistry.cs:line 776 [C:\Users\alinam
a\work\testRepos\many-projects\ClassLibrary2\ClassLibrary2.csproj]
MSBUILD : error : at System.Linq.Enumerable.FirstOrDefault[TSource](IEnumerable`1 source, Func`2 predicate) [C:\U
sers\alinama\work\testRepos\many-projects\ClassLibrary2\ClassLibrary2.csproj]
MSBUILD : error : at Microsoft.Build.Execution.TaskRegistry.GetMatchingRegistration(String taskName, IEnumerable`
1 taskRecords, String taskProjectFile, IDictionary`2 taskIdentityParameters, TargetLoggingContext targetLoggingConte
xt, ElementLocation elementLocation, Boolean isMultiThreadedBuild) in C:\Users\alinama\work\msbuild\src\Build\Instan
ce\TaskRegistry.cs:line 775 [C:\Users\alinama\work\testRepos\many-projects\ClassLibrary2\ClassLibrary2.csproj]
MSBUILD : error : at Microsoft.Build.Execution.TaskRegistry.GetTaskRegistrationRecord(String taskName, String tas
kProjectFile, IDictionary`2 taskIdentityParameters, Boolean exactMatchRequired, TargetLoggingContext targetLoggingCo
ntext, ElementLocation elementLocation, Boolean& retrievedFromCache, Boolean isMultiThreadedBuild) in C:\Users\alina
ma\work\msbuild\src\Build\Instance\TaskRegistry.cs:line 603 [C:\Users\alinama\work\testRepos\many-projects\ClassLibr
ary2\ClassLibrary2.csproj]
MSBUILD : error : at Microsoft.Build.Execution.TaskRegistry.GetRegisteredTask(String taskName, String taskProject
File, IDictionary`2 taskIdentityParameters, Boolean exactMatchRequired, TargetLoggingContext targetLoggingContext, E
lementLocation elementLocation, Boolean isMultiThreadedBuild) in C:\Users\alinama\work\msbuild\src\Build\Instance\Ta
skRegistry.cs:line 473 [C:\Users\alinama\work\testRepos\many-projects\ClassLibrary2\ClassLibrary2.csproj]
MSBUILD : error : at Microsoft.Build.BackEnd.TaskExecutionHost.FindTaskInRegistry(IDictionary`2 taskIdentityParam
eters) in C:\Users\alinama\work\msbuild\src\Build\BackEnd\TaskExecutionHost\TaskExecutionHost.cs:line 904 [C:\Users\
alinama\work\testRepos\many-projects\ClassLibrary2\ClassLibrary2.csproj]
MSBUILD : error : at Microsoft.Build.BackEnd.TaskExecutionHost.FindTask(IDictionary`2 taskIdentityParameters) in
C:\Users\alinama\work\msbuild\src\Build\BackEnd\TaskExecutionHost\TaskExecutionHost.cs:line 281 [C:\Users\alinama\wo
rk\testRepos\many-projects\ClassLibrary2\ClassLibrary2.csproj]
MSBUILD : error : at Microsoft.Build.BackEnd.TaskBuilder.<ExecuteBucket>d__20.MoveNext() in C:\Users\alinama\work
\msbuild\src\Build\BackEnd\Components\RequestBuilder\TaskBuilder.cs:line 447 [C:\Users\alinama\work\testRepos\many-p
rojects\ClassLibrary2\ClassLibrary2.csproj]
MSBUILD : error : --- End of stack trace from previous location where exception was thrown --- [C:\Users\alinama\wor
k\testRepos\many-projects\ClassLibrary2\ClassLibrary2.csproj]
MSBUILD : error : at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) [C:\Users\alinama\
work\testRepos\many-projects\ClassLibrary2\ClassLibrary2.csproj]
MSBUILD : error : at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task tas
k) [C:\Users\alinama\work\testRepos\many-projects\ClassLibrary2\ClassLibrary2.csproj]
MSBUILD : error : at System.Runtime.CompilerServices.ValueTaskAwaiter`1.GetResult() [C:\Users\alinama\work\testRe
pos\many-projects\ClassLibrary2\ClassLibrary2.csproj]
MSBUILD : error : at Microsoft.Build.BackEnd.TaskBuilder.<ExecuteTask>d__19.MoveNext() in C:\Users\alinama\work\m
sbuild\src\Build\BackEnd\Components\RequestBuilder\TaskBuilder.cs:line 347 [C:\Users\alinama\work\testRepos\many-pro
jects\ClassLibrary2\ClassLibrary2.csproj]
MSBUILD : error : --- End of stack trace from previous location where exception was thrown --- [C:\Users\alinama\wor
k\testRepos\many-projects\ClassLibrary2\ClassLibrary2.csproj]
MSBUILD : error : at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) [C:\Users\alinama\
work\testRepos\many-projects\ClassLibrary2\ClassLibrary2.csproj]
MSBUILD : error : at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task tas
k) [C:\Users\alinama\work\testRepos\many-projects\ClassLibrary2\ClassLibrary2.csproj]
MSBUILD : error : at System.Runtime.CompilerServices.ValueTaskAwaiter`1.GetResult() [C:\Users\alinama\work\testRe
pos\many-projects\ClassLibrary2\ClassLibrary2.csproj]
MSBUILD : error : at Microsoft.Build.BackEnd.TaskBuilder.<ExecuteTask>d__14.MoveNext() in C:\Users\alinama\work\m
sbuild\src\Build\BackEnd\Components\RequestBuilder\TaskBuilder.cs:line 201 [C:\Users\alinama\work\testRepos\many-pro
jects\ClassLibrary2\ClassLibrary2.csproj]
MSBUILD : error : --- End of stack trace from previous location where exception was thrown --- [C:\Users\alinama\wor
k\testRepos\many-projects\ClassLibrary2\ClassLibrary2.csproj]
MSBUILD : error : at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) [C:\Users\alinama\
work\testRepos\many-projects\ClassLibrary2\ClassLibrary2.csproj]
MSBUILD : error : at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task tas
k) [C:\Users\alinama\work\testRepos\many-projects\ClassLibrary2\ClassLibrary2.csproj]
MSBUILD : error : at System.Runtime.CompilerServices.TaskAwaiter`1.GetResult() [C:\Users\alinama\work\testRepos\m
any-projects\ClassLibrary2\ClassLibrary2.csproj]
MSBUILD : error : at Microsoft.Build.BackEnd.TargetEntry.<ProcessBucket>d__50.MoveNext() in C:\Users\alinama\work
\msbuild\src\Build\BackEnd\Components\RequestBuilder\TargetEntry.cs:line 826 [C:\Users\alinama\work\testRepos\many-p
rojects\ClassLibrary2\ClassLibrary2.csproj]
MSBUILD : error : --- End of stack trace from previous location where exception was thrown --- [C:\Users\alinama\wor
k\testRepos\many-projects\ClassLibrary2\ClassLibrary2.csproj]
MSBUILD : error : at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) [C:\Users\alinama\
work\testRepos\many-projects\ClassLibrary2\ClassLibrary2.csproj]
MSBUILD : error : at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task tas
k) [C:\Users\alinama\work\testRepos\many-projects\ClassLibrary2\ClassLibrary2.csproj]
MSBUILD : error : at System.Runtime.CompilerServices.ValueTaskAwaiter`1.GetResult() [C:\Users\alinama\work\testRe
pos\many-projects\ClassLibrary2\ClassLibrary2.csproj]
MSBUILD : error : at Microsoft.Build.BackEnd.TargetEntry.<ExecuteTarget>d__43.MoveNext() in C:\Users\alinama\work
\msbuild\src\Build\BackEnd\Components\RequestBuilder\TargetEntry.cs:line 524 [C:\Users\alinama\work\testRepos\many-p
rojects\ClassLibrary2\ClassLibrary2.csproj]
MSBUILD : error : --- End of stack trace from previous location where exception was thrown --- [C:\Users\alinama\wor
k\testRepos\many-projects\ClassLibrary2\ClassLibrary2.csproj]
MSBUILD : error : at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) [C:\Users\alinama\
work\testRepos\many-projects\ClassLibrary2\ClassLibrary2.csproj]
MSBUILD : error : at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task tas
k) [C:\Users\alinama\work\testRepos\many-projects\ClassLibrary2\ClassLibrary2.csproj]
MSBUILD : error : at System.Runtime.CompilerServices.TaskAwaiter.GetResult() [C:\Users\alinama\work\testRepos\man
y-projects\ClassLibrary2\ClassLibrary2.csproj]
MSBUILD : error : at Microsoft.Build.BackEnd.TargetBuilder.<ProcessTargetStack>d__24.MoveNext() in C:\Users\alina
ma\work\msbuild\src\Build\BackEnd\Components\RequestBuilder\TargetBuilder.cs:line 512 [C:\Users\alinama\work\testRep
os\many-projects\ClassLibrary2\ClassLibrary2.csproj]
MSBUILD : error : --- End of stack trace from previous location where exception was thrown --- [C:\Users\alinama\wor
k\testRepos\many-projects\ClassLibrary2\ClassLibrary2.csproj]
MSBUILD : error : at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) [C:\Users\alinama\
work\testRepos\many-projects\ClassLibrary2\ClassLibrary2.csproj]
MSBUILD : error : at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task tas
k) [C:\Users\alinama\work\testRepos\many-projects\ClassLibrary2\ClassLibrary2.csproj]
MSBUILD : error : at System.Runtime.CompilerServices.TaskAwaiter.GetResult() [C:\Users\alinama\work\testRepos\man
y-projects\ClassLibrary2\ClassLibrary2.csproj]
MSBUILD : error : at Microsoft.Build.BackEnd.TargetBuilder.<BuildTargets>d__11.MoveNext() in C:\Users\alinama\wor
k\msbuild\src\Build\BackEnd\Components\RequestBuilder\TargetBuilder.cs:line 178 [C:\Users\alinama\work\testRepos\man
y-projects\ClassLibrary2\ClassLibrary2.csproj]
MSBUILD : error : --- End of stack trace from previous location where exception was thrown --- [C:\Users\alinama\wor
k\testRepos\many-projects\ClassLibrary2\ClassLibrary2.csproj]
MSBUILD : error : at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) [C:\Users\alinama\
work\testRepos\many-projects\ClassLibrary2\ClassLibrary2.csproj]
MSBUILD : error : at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task tas
k) [C:\Users\alinama\work\testRepos\many-projects\ClassLibrary2\ClassLibrary2.csproj]
MSBUILD : error : at System.Runtime.CompilerServices.TaskAwaiter`1.GetResult() [C:\Users\alinama\work\testRepos\m
any-projects\ClassLibrary2\ClassLibrary2.csproj]
MSBUILD : error : at Microsoft.Build.BackEnd.RequestBuilder.<BuildProject>d__67.MoveNext() in C:\Users\alinama\wo
rk\msbuild\src\Build\BackEnd\Components\RequestBuilder\RequestBuilder.cs:line 1231 [C:\Users\alinama\work\testRepos\
many-projects\ClassLibrary2\ClassLibrary2.csproj]
MSBUILD : error : --- End of stack trace from previous location where exception was thrown --- [C:\Users\alinama\wor
k\testRepos\many-projects\ClassLibrary2\ClassLibrary2.csproj]
MSBUILD : error : at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) [C:\Users\alinama\
work\testRepos\many-projects\ClassLibrary2\ClassLibrary2.csproj]
MSBUILD : error : at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task tas
k) [C:\Users\alinama\work\testRepos\many-projects\ClassLibrary2\ClassLibrary2.csproj]
MSBUILD : error : at System.Runtime.CompilerServices.TaskAwaiter`1.GetResult() [C:\Users\alinama\work\testRepos\m
any-projects\ClassLibrary2\ClassLibrary2.csproj]
MSBUILD : error : at Microsoft.Build.BackEnd.RequestBuilder.<RequestThreadProc>d__58.MoveNext() in C:\Users\alina
ma\work\msbuild\src\Build\BackEnd\Components\RequestBuilder\RequestBuilder.cs:line 784 [C:\Users\alinama\work\testRe
pos\many-projects\ClassLibrary2\ClassLibrary2.csproj]
Repro steps:
- create a solution with more than one project
- Set
$env:MSBUILDFORCEALLTASKSOUTOFPROC=1 - build the solution with
/mt /m
Metadata
Metadata
Assignees
Labels
No labels