Skip to content

NullableReferenceTypesTests.NotNullWhenFalse_WithNullLiteral unit test sometimes fails with an assert that might indicate a real product issue #52372

@AlekseyTs

Description

@AlekseyTs

https://dev.azure.com/dnceng/public/_build/results?buildId=1069907&view=ms.vss-test-web.build-test-results-tab&runId=32887608&resultId=202470&paneView=debug

Microsoft.CodeAnalysis.CSharp.UnitTests.Semantics.NullableReferenceTypesTests.NotNullWhenFalse_WithNullLiteral

Result Details
Failed 1h ago
Duration0:00:00.197
Ownernot available
Date started4/2/2021, 9:44:36 AM
Date completed4/2/2021, 9:44:36 AM
Failing since1h ago
Failing since build20210402.15

Debug

Work items

Attachments

History

Helix Test Logs (Beta)

Comments
{ "HelixJobId": "fbb13a8a-0fbe-4e19-a2aa-137b3ffbf1dd", "HelixWorkItemName": "Microsoft.CodeAnalysis.CSharp.Semantic.UnitTests.dll.11" }

Error message
System.AggregateException : One or more errors occurred.
---- System.InvalidOperationException : Assertion failed

Stack trace

   at System.Threading.Tasks.Task.ThrowIfExceptional(Boolean includeTaskCanceledExceptions)
   at System.Threading.Tasks.Task.Wait(Int32 millisecondsTimeout, CancellationToken cancellationToken)
   at System.Threading.Tasks.Task.Wait()
   at System.Threading.Tasks.Parallel.ForWorker[TLocal](Int32 fromInclusive, Int32 toExclusive, ParallelOptions parallelOptions, Action`1 body, Action`2 bodyWithState, Func`4 bodyWithLocal, Func`1 localInit, Action`1 localFinally)
   at System.Threading.Tasks.Parallel.For(Int32 fromInclusive, Int32 toExclusive, ParallelOptions parallelOptions, Action`1 body)
   at Roslyn.Utilities.RoslynParallel.For(Int32 fromInclusive, Int32 toExclusive, Action`1 body, CancellationToken cancellationToken) in /_/src/Compilers/Core/Portable/InternalUtilities/RoslynParallel.cs:line 23
   at Microsoft.CodeAnalysis.CSharp.Symbols.SourceNamespaceSymbol.ForceComplete(SourceLocation locationOpt, CancellationToken cancellationToken) in /_/src/Compilers/CSharp/Portable/Symbols/Source/SourceNamespaceSymbol_Completion.cs:line 56
   at Microsoft.CodeAnalysis.CSharp.Symbols.SourceModuleSymbol.ForceComplete(SourceLocation locationOpt, CancellationToken cancellationToken) in /_/src/Compilers/CSharp/Portable/Symbols/Source/SourceModuleSymbol.cs:line 267
   at Microsoft.CodeAnalysis.CSharp.Symbols.SourceAssemblySymbol.ForceComplete(SourceLocation locationOpt, CancellationToken cancellationToken) in /_/src/Compilers/CSharp/Portable/Symbols/Source/SourceAssemblySymbol.cs:line 913
   at Microsoft.CodeAnalysis.CSharp.CSharpCompilation.GetSourceDeclarationDiagnostics(SyntaxTree syntaxTree, Nullable`1 filterSpanWithinTree, Func`4 locationFilterOpt, CancellationToken cancellationToken) in /_/src/Compilers/CSharp/Portable/Compilation/CSharpCompilation.cs:line 2951
   at Microsoft.CodeAnalysis.CSharp.CSharpCompilation.GetDiagnosticsWithoutFiltering(CompilationStage stage, Boolean includeEarlierStages, BindingDiagnosticBag builder, CancellationToken cancellationToken) in /_/src/Compilers/CSharp/Portable/Compilation/CSharpCompilation.cs:line 2721
   at Microsoft.CodeAnalysis.CSharp.CSharpCompilation.GetDiagnostics(CompilationStage stage, Boolean includeEarlierStages, DiagnosticBag diagnostics, CancellationToken cancellationToken) in /_/src/Compilers/CSharp/Portable/Compilation/CSharpCompilation.cs:line 2647
   at Microsoft.CodeAnalysis.CSharp.CSharpCompilation.GetDiagnostics(CompilationStage stage, Boolean includeEarlierStages, CancellationToken cancellationToken) in /_/src/Compilers/CSharp/Portable/Compilation/CSharpCompilation.cs:line 2639
   at Microsoft.CodeAnalysis.CSharp.CSharpCompilation.GetDiagnostics(CancellationToken cancellationToken) in /_/src/Compilers/CSharp/Portable/Compilation/CSharpCompilation.cs:line 2633
   at Microsoft.CodeAnalysis.DiagnosticExtensions.VerifyDiagnostics[TCompilation](TCompilation c, DiagnosticDescription[] expected) in /_/src/Compilers/Test/Core/Diagnostics/DiagnosticExtensions.cs:line 103
   at Microsoft.CodeAnalysis.CSharp.UnitTests.Semantics.NullableReferenceTypesTests.NotNullWhenFalse_WithNullLiteral() in /_/src/Compilers/CSharp/Test/Semantic/Semantics/NullableReferenceTypesTests.cs:line 35693
----- Inner Stack Trace -----
   at Microsoft.CodeAnalysis.ThrowingTraceListener.Fail(String message, String detailMessage) in /_/src/Compilers/Test/Core/ThrowingTraceListener.cs:line 26
   at System.Diagnostics.TraceListener.Fail(String message)
   at System.Diagnostics.TraceInternal.Fail(String message)
   at System.Diagnostics.Debug.Assert(Boolean condition)
   at Microsoft.CodeAnalysis.CustomAttributesBag`1.get_IsEarlyDecodedWellKnownAttributeDataComputed() in /_/src/Compilers/Core/Portable/Symbols/Attributes/CustomAttributesBag.cs:line 179
   at Microsoft.CodeAnalysis.CSharp.Symbols.SourceNamedTypeSymbol.GetEarlyDecodedWellKnownAttributeData() in /_/src/Compilers/CSharp/Portable/Symbols/Source/SourceNamedTypeSymbol.cs:line 855
   at Microsoft.CodeAnalysis.CSharp.Symbols.SourceNamedTypeSymbol.GetAppliedCon```  


From https://github.com/dotnet/roslyn/blob/MainSnapshot/src/Compilers/Core/Portable/Symbols/Attributes/CustomAttributesBag.cs#L179:

            // If late attributes are complete, early attributes must also be complete
            Debug.Assert(!IsPartComplete(CustomAttributeBagCompletionPart.DecodedWellKnownAttributeData) || earlyComplete);

Metadata

Metadata

Assignees

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions