Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Precondition failure: File has not had execution verified #79439

Closed
MichalStrehovsky opened this issue Dec 9, 2022 · 10 comments · Fixed by #79964
Closed

Precondition failure: File has not had execution verified #79439

MichalStrehovsky opened this issue Dec 9, 2022 · 10 comments · Fixed by #79964
Labels
area-Interop-coreclr blocking-clean-ci Blocking PR or rolling runs of 'runtime' or 'runtime-extra-platforms' blocking-clean-ci-optional Blocking optional rolling runs Known Build Error Use this to report build issues in the .NET Helix tab

Comments

@MichalStrehovsky
Copy link
Member

MichalStrehovsky commented Dec 9, 2022

Build Information

Build: https://dev.azure.com/dnceng-public/cbb18261-c48f-4abb-8651-8cdcb5474649/_build/results?buildId=106998
Build error leg or test failing: ComInterfaceGenerator.Unit.Tests.WorkItemExecution
Pull request: #79433

Error Message

Fill the error message using known issues guidance.

{
  "ErrorMessage": "Precondition failure: File has not had execution verified",
  "BuildRetry": false
}

Report

Build Definition Test Pull Request
119709 dotnet/runtime ComInterfaceGenerator.Unit.Tests.WorkItemExecution
119660 dotnet/runtime ComInterfaceGenerator.Unit.Tests.WorkItemExecution
119528 dotnet/runtime ComInterfaceGenerator.Unit.Tests.WorkItemExecution #79953
119502 dotnet/runtime ComInterfaceGenerator.Unit.Tests.WorkItemExecution #79952
119458 dotnet/runtime ComInterfaceGenerator.Unit.Tests.WorkItemExecution
119442 dotnet/runtime ComInterfaceGenerator.Unit.Tests.WorkItemExecution #79949
119422 dotnet/runtime ComInterfaceGenerator.Unit.Tests.WorkItemExecution #79334
112529 dotnet/runtime ComInterfaceGenerator.Unit.Tests.WorkItemExecution #79671
119087 dotnet/runtime ComInterfaceGenerator.Unit.Tests.WorkItemExecution
119064 dotnet/runtime ComInterfaceGenerator.Unit.Tests.WorkItemExecution #79334
118652 dotnet/runtime ComInterfaceGenerator.Unit.Tests.WorkItemExecution #79685
118593 dotnet/runtime ComInterfaceGenerator.Unit.Tests.WorkItemExecution #79448
118405 dotnet/runtime ComInterfaceGenerator.Unit.Tests.WorkItemExecution
118161 dotnet/runtime ComInterfaceGenerator.Unit.Tests.WorkItemExecution #79720
118290 dotnet/runtime ComInterfaceGenerator.Unit.Tests.WorkItemExecution #79894
118274 dotnet/runtime ComInterfaceGenerator.Unit.Tests.WorkItemExecution #79845
117916 dotnet/runtime ComInterfaceGenerator.Unit.Tests.WorkItemExecution #79853
117730 dotnet/runtime ComInterfaceGenerator.Unit.Tests.WorkItemExecution #79853
117718 dotnet/runtime ComInterfaceGenerator.Unit.Tests.WorkItemExecution #79046
117638 dotnet/runtime ComInterfaceGenerator.Unit.Tests.WorkItemExecution #79384
116270 dotnet/runtime ComInterfaceGenerator.Unit.Tests.WorkItemExecution #79821
117602 dotnet/runtime ComInterfaceGenerator.Unit.Tests.WorkItemExecution
117536 dotnet/runtime ComInterfaceGenerator.Unit.Tests.WorkItemExecution #77764
117415 dotnet/runtime ComInterfaceGenerator.Unit.Tests.WorkItemExecution #78544
117411 dotnet/runtime ComInterfaceGenerator.Unit.Tests.WorkItemExecution #79721
117252 dotnet/runtime ComInterfaceGenerator.Unit.Tests.WorkItemExecution #79685
117202 dotnet/runtime ComInterfaceGenerator.Unit.Tests.WorkItemExecution #77304
117154 dotnet/runtime ComInterfaceGenerator.Unit.Tests.WorkItemExecution #79853
117084 dotnet/runtime ComInterfaceGenerator.Unit.Tests.WorkItemExecution #79046
116795 dotnet/runtime ComInterfaceGenerator.Unit.Tests.WorkItemExecution #77597
116758 dotnet/runtime ComInterfaceGenerator.Unit.Tests.WorkItemExecution #77764
116753 dotnet/runtime ComInterfaceGenerator.Unit.Tests.WorkItemExecution #79845
116738 dotnet/runtime ComInterfaceGenerator.Unit.Tests.WorkItemExecution #79334
116736 dotnet/runtime ComInterfaceGenerator.Unit.Tests.WorkItemExecution
116725 dotnet/runtime ComInterfaceGenerator.Unit.Tests.WorkItemExecution #79844
116679 dotnet/runtime ComInterfaceGenerator.Unit.Tests.WorkItemExecution #79835
116550 dotnet/runtime ComInterfaceGenerator.Unit.Tests.WorkItemExecution #79721
116505 dotnet/runtime ComInterfaceGenerator.Unit.Tests.WorkItemExecution #79835
116496 dotnet/runtime ComInterfaceGenerator.Unit.Tests.WorkItemExecution #79169
116397 dotnet/runtime ComInterfaceGenerator.Unit.Tests.WorkItemExecution
107546 dotnet/runtime ComInterfaceGenerator.Unit.Tests.WorkItemExecution #79424
116347 dotnet/runtime ComInterfaceGenerator.Unit.Tests.WorkItemExecution #76642
116308 dotnet/runtime ComInterfaceGenerator.Unit.Tests.WorkItemExecution #79824
116280 dotnet/runtime ComInterfaceGenerator.Unit.Tests.WorkItemExecution #79685
116000 dotnet/runtime ComInterfaceGenerator.Unit.Tests.WorkItemExecution #79448
115922 dotnet/runtime ComInterfaceGenerator.Unit.Tests.WorkItemExecution #79813
115916 dotnet/runtime ComInterfaceGenerator.Unit.Tests.WorkItemExecution #79772
115927 dotnet/runtime ComInterfaceGenerator.Unit.Tests.WorkItemExecution #79813
115775 dotnet/runtime ComInterfaceGenerator.Unit.Tests.WorkItemExecution #79806
115765 dotnet/runtime ComInterfaceGenerator.Unit.Tests.WorkItemExecution #79803
115761 dotnet/runtime ComInterfaceGenerator.Unit.Tests.WorkItemExecution #79805
115769 dotnet/runtime ComInterfaceGenerator.Unit.Tests.WorkItemExecution
115747 dotnet/runtime ComInterfaceGenerator.Unit.Tests.WorkItemExecution #79804
115632 dotnet/runtime ComInterfaceGenerator.Unit.Tests.WorkItemExecution #79346
115630 dotnet/runtime ComInterfaceGenerator.Unit.Tests.WorkItemExecution
115598 dotnet/runtime ComInterfaceGenerator.Unit.Tests.WorkItemExecution #79790
115569 dotnet/runtime ComInterfaceGenerator.Unit.Tests.WorkItemExecution
115554 dotnet/runtime ComInterfaceGenerator.Unit.Tests.WorkItemExecution #79775
115553 dotnet/runtime ComInterfaceGenerator.Unit.Tests.WorkItemExecution
115512 dotnet/runtime ComInterfaceGenerator.Unit.Tests.WorkItemExecution #79787
115484 dotnet/runtime ComInterfaceGenerator.Unit.Tests.WorkItemExecution
115452 dotnet/runtime ComInterfaceGenerator.Unit.Tests.WorkItemExecution #79790
115437 dotnet/runtime ComInterfaceGenerator.Unit.Tests.WorkItemExecution
115422 dotnet/runtime ComInterfaceGenerator.Unit.Tests.WorkItemExecution #79760
115372 dotnet/runtime ComInterfaceGenerator.Unit.Tests.WorkItemExecution #79685
115338 dotnet/runtime ComInterfaceGenerator.Unit.Tests.WorkItemExecution #79772
115310 dotnet/runtime ComInterfaceGenerator.Unit.Tests.WorkItemExecution #79787
115295 dotnet/runtime ComInterfaceGenerator.Unit.Tests.WorkItemExecution #78279
115246 dotnet/runtime ComInterfaceGenerator.Unit.Tests.WorkItemExecution
115237 dotnet/runtime ComInterfaceGenerator.Unit.Tests.WorkItemExecution #79775
115224 dotnet/runtime ComInterfaceGenerator.Unit.Tests.WorkItemExecution #79783
115217 dotnet/runtime ComInterfaceGenerator.Unit.Tests.WorkItemExecution
115164 dotnet/runtime ComInterfaceGenerator.Unit.Tests.WorkItemExecution #79779
115097 dotnet/runtime ComInterfaceGenerator.Unit.Tests.WorkItemExecution #79775
114878 dotnet/runtime ComInterfaceGenerator.Unit.Tests.WorkItemExecution
115057 dotnet/runtime ComInterfaceGenerator.Unit.Tests.WorkItemExecution #78861
115050 dotnet/runtime ComInterfaceGenerator.Unit.Tests.WorkItemExecution #79169
114868 dotnet/runtime ComInterfaceGenerator.Unit.Tests.WorkItemExecution #79720
115020 dotnet/runtime ComInterfaceGenerator.Unit.Tests.WorkItemExecution #79721
114983 dotnet/runtime ComInterfaceGenerator.Unit.Tests.WorkItemExecution #79544
112533 dotnet/runtime ComInterfaceGenerator.Unit.Tests.WorkItemExecution #79630
114952 dotnet/runtime ComInterfaceGenerator.Unit.Tests.WorkItemExecution #79760
114914 dotnet/runtime ComInterfaceGenerator.Unit.Tests.WorkItemExecution #79771
114908 dotnet/runtime ComInterfaceGenerator.Unit.Tests.WorkItemExecution #79772
114826 dotnet/runtime ComInterfaceGenerator.Unit.Tests.WorkItemExecution #79676
114801 dotnet/runtime ComInterfaceGenerator.Unit.Tests.WorkItemExecution #79346
114812 dotnet/runtime ComInterfaceGenerator.Unit.Tests.WorkItemExecution #79021
114773 dotnet/runtime ComInterfaceGenerator.Unit.Tests.WorkItemExecution #79505
114664 dotnet/runtime ComInterfaceGenerator.Unit.Tests.WorkItemExecution #79747
113082 dotnet/runtime ComInterfaceGenerator.Unit.Tests.WorkItemExecution #79363
114347 dotnet/runtime ComInterfaceGenerator.Unit.Tests.WorkItemExecution #79613
114569 dotnet/runtime ComInterfaceGenerator.Unit.Tests.WorkItemExecution #79046
114507 dotnet/runtime ComInterfaceGenerator.Unit.Tests.WorkItemExecution #79685
114490 dotnet/runtime ComInterfaceGenerator.Unit.Tests.WorkItemExecution #79753
114428 dotnet/runtime ComInterfaceGenerator.Unit.Tests.WorkItemExecution #79448
114399 dotnet/runtime ComInterfaceGenerator.Unit.Tests.WorkItemExecution #79751
114391 dotnet/runtime ComInterfaceGenerator.Unit.Tests.WorkItemExecution #77540
114368 dotnet/runtime ComInterfaceGenerator.Unit.Tests.WorkItemExecution #79748
114362 dotnet/runtime ComInterfaceGenerator.Unit.Tests.WorkItemExecution #79747
114263 dotnet/runtime ComInterfaceGenerator.Unit.Tests.WorkItemExecution #79738
Displaying 100 of 230 results

Summary

24-Hour Hit Count 7-Day Hit Count 1-Month Count
2 53 230
@MichalStrehovsky MichalStrehovsky added blocking-clean-ci Blocking PR or rolling runs of 'runtime' or 'runtime-extra-platforms' Known Build Error Use this to report build issues in the .NET Helix tab labels Dec 9, 2022
@dotnet-issue-labeler
Copy link

I couldn't figure out the best area label to add to this issue. If you have write-permissions please help me learn by adding exactly one area label.

@ghost ghost added the untriaged New issue has not been triaged by the area owner label Dec 9, 2022
@MichalStrehovsky
Copy link
Member Author

MichalStrehovsky commented Dec 9, 2022

C:\h\w\A84C08F1\w\AA7B0916\e>"C:\h\w\A84C08F1\p\dotnet.exe" exec --runtimeconfig ComInterfaceGenerator.Unit.Tests.runtimeconfig.json --depsfile ComInterfaceGenerator.Unit.Tests.deps.json xunit.console.dll ComInterfaceGenerator.Unit.Tests.dll -xml testResults.xml -nologo -nocolor -notrait category=IgnoreForCI -notrait category=OuterLoop -notrait category=failing  
  Discovering: ComInterfaceGenerator.Unit.Tests (method display = ClassAndMethod, method display options = None)
  Discovered:  ComInterfaceGenerator.Unit.Tests (found 11 test cases)
  Starting:    ComInterfaceGenerator.Unit.Tests (parallel test collections = on, max threads = 4)

Assert failure(PID 8336 [0x00002090], Thread: 9616 [0x2590]): Precondition failure: File has not had execution verifiedFAILED: m_bDisableActivationCheck || CheckLoadLevel(FILE_ACTIVE)
	 FAILED: pDomainAssembly->CheckActivated()
		D:\a\_work\1\s\src\coreclr\vm\ceeload.cpp, line: 5088
	 FAILED: pModule->CheckActivated()
		D:\a\_work\1\s\src\coreclr\vm\methodtable.cpp, line: 7804
	 FAILED: pMT->CheckInstanceActivated()
		D:\a\_work\1\s\src\coreclr\vm\gchelpers.cpp, line: 953

CORECLR! GetCLRRuntimeHost + 0x6CD6E6 (0x00007ffc`c3791bb6)
CORECLR! GetCLRRuntimeHost + 0x2F5A28 (0x00007ffc`c33b9ef8)
CORECLR! GetCLRRuntimeHost + 0x35D18E (0x00007ffc`c342165e)
<no module>! <no symbol> + 0x0 (0x00007ffc`6abe462b)
<no module>! <no symbol> + 0x0 (0x00007ffc`699a1688)
<no module>! <no symbol> + 0x0 (0x000000fe`5247b1d0)
<no module>! <no symbol> + 0x0 (0x000000fe`5247b448)
<no module>! <no symbol> + 0x0 (0x00007ffc`6aee7c28)
<no module>! <no symbol> + 0x0 (0x00000000`0000001c)
    File: D:\a\_work\1\s\src\coreclr\vm\domainassembly.cpp Line: 291
    Image: C:\h\w\A84C08F1\p\dotnet.exe

@MichalStrehovsky
Copy link
Member Author

@elinor-fung could this be Fusion's revenge for #79380?

@elinor-fung
Copy link
Member

I think it is #79341 - @jakobbotsch
Test hitting this added in #77130 (PR build was before #79341 went in) - cc @jkoritzinsky

KERNELBASE!RaiseFailFastException+0xae [d:\rs1\minkernel\kernelbase\xcpt.c @ 1106] 
coreclr!_DbgBreakCheck+0x2e5 [D:\a\_work\1\s\src\coreclr\utilcode\debug.cpp @ 288] 
coreclr!_DbgBreakCheckNoThrow+0x55 [D:\a\_work\1\s\src\coreclr\utilcode\debug.cpp @ 307] 
coreclr!DbgAssertDialog+0x1af [D:\a\_work\1\s\src\coreclr\utilcode\debug.cpp @ 459] 
coreclr!CHECK::Trigger+0x1e6 [D:\a\_work\1\s\src\coreclr\utilcode\check.cpp @ 136] 
coreclr!AllocateObject+0x2e8 [D:\a\_work\1\s\src\coreclr\vm\gchelpers.cpp @ 953] 
coreclr!JIT_New+0x2ae [D:\a\_work\1\s\src\coreclr\vm\jithelpers.cpp @ 2310] 
System.Enum.TryFormatUnconstrained[[Microsoft.Interop.MarshalDirection, Microsoft.Interop.SourceGeneration]](Microsoft.Interop.MarshalDirection, System.Span`1, Int32 ByRef, System.ReadOnlySpan`1) [/_/src/libraries/System.Private.CoreLib/src/System/Enum.cs @ 1842]
System.Runtime.CompilerServices.DefaultInterpolatedStringHandler.AppendFormatted[[Microsoft.Interop.MarshalDirection, Microsoft.Interop.SourceGeneration]](Microsoft.Interop.MarshalDirection) [/_/src/libraries/System.Private.CoreLib/src/System/Runtime/CompilerServices/DefaultInterpolatedStringHandler.cs @ 312]
ComInterfaceGenerator.Unit.Tests.IVirtualMethodIndexSignatureProvider`1[[System.__Canon, System.Private.CoreLib]].Microsoft.Interop.UnitTests.ICustomMarshallingSignatureTestProvider.BasicParametersAndModifiers(System.String, System.String)
Microsoft.Interop.UnitTests.CustomStructMarshallingCodeSnippets`1+Stateful[[System.__Canon, System.Private.CoreLib]]..cctor()
[HelperMethodFrame: 0000009e97c3c6b8] 
ComInterfaceGenerator.Unit.Tests.Compiles+d__1.MoveNext()

@jakobbotsch
Copy link
Member

@elinor-fung Why do you think it is related to #79341? It doesn't immediately strike me as being related.

The failing configuration is release libraries with checked coreclr on win-x64. It looks like that configuration was skipped in the CI run for #77130 which might explain it.

@elinor-fung
Copy link
Member

Ah, sorry, my bad. I checked that it wasn't #79380 and just skimmed through recent changes - thought it stopped happening without #79341, but I must have been confused (just looked again). Totally missed that that leg was skipped in #77130.

@jkoritzinsky
Copy link
Member

#78580 might also be related as the lowest managed frame was added in #78580 and that was merged recently as well.

@BruceForstall
Copy link
Member

@elinor-fung @dotnet/interop-contrib Any progress on this one? I've seen this fail in a lot of pipelines today.

@danmoseley
Copy link
Member

Cc @stephentoub

@jkotas
Copy link
Member

jkotas commented Dec 24, 2022

Standalone repro:

Program.cs

using System;

for (int i = 0; i < 10_000; i++) {
    Test<Provider>();
}

static void Test<T>() where T:IProvider
{
    string s = $@">>> {T.Value} <<<";
    GC.KeepAlive(s);
}

interface IProvider
{
   public static abstract MyEnum Value { get; }
}

class Provider : IProvider
{
    public static MyEnum Value => default;
}

MyEnum.cs - compile into separate .dll

public enum MyEnum
{
}

jkotas added a commit to jkotas/runtime that referenced this issue Dec 25, 2022
Token scanning was left-over from appdomains. It is not needed and it has subtle bugs that libraries tests started hitting recently.

Fixes dotnet#79439
@ghost ghost added the in-pr There is an active PR which will close this issue when it is merged label Dec 25, 2022
jkotas added a commit that referenced this issue Dec 25, 2022
Token scanning was left-over from appdomains. It is not needed and it has subtle bugs that libraries tests started hitting recently.

Fixes #79439
@ghost ghost removed in-pr There is an active PR which will close this issue when it is merged untriaged New issue has not been triaged by the area owner labels Dec 25, 2022
@ghost ghost locked as resolved and limited conversation to collaborators Jan 25, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
area-Interop-coreclr blocking-clean-ci Blocking PR or rolling runs of 'runtime' or 'runtime-extra-platforms' blocking-clean-ci-optional Blocking optional rolling runs Known Build Error Use this to report build issues in the .NET Helix tab
Projects
None yet
Development

Successfully merging a pull request may close this issue.

8 participants