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

Test failure: tracing\eventpipe\processinfo\processinfo\processinfo.cmd #39935

Closed
BruceForstall opened this issue Jul 26, 2020 · 2 comments
Closed

Comments

@BruceForstall
Copy link
Member

BruceForstall commented Jul 26, 2020

processinfo fails in all ilasm round-trip testing:

https://dev.azure.com/dnceng/public/_build/results?buildId=745874&view=ms.vss-test-web.build-test-results-tab

    tracing\eventpipe\processinfo\processinfo\processinfo.cmd [FAIL]
      Unhandled exception. System.Exception: CommandLine must match current process. Expected: C:\h\w\B82E0A00\p\CoreRun.exe C:\h\w\B82E0A00\w\BC1C09C5\e\tracing\eventpipe\processinfo\processinfo\processinfo.dll, Received: C:\h\w\B82E0A00\p\corerun.exe C:\h\w\B82E0A00\w\BC1C09C5\e\tracing\eventpipe\processinfo\processinfo\processinfo.asm.dll (original: "C:\h\w\B82E0A00\p\corerun.exe"  processinfo.asm.dll )
         at Tracing.Tests.ProcessInfoValidation.ProcessInfoValidation.Main(String[] args) in /Users/runner/work/1/s/src/tests/tracing/eventpipe/processinfo/processinfo.cs:line 75
      
      Return code:      1
      Raw output file:      C:\h\w\B82E0A00\w\BC1C09C5\e\tracing\eventpipe\Reports\tracing.eventpipe\processinfo\processinfo\processinfo.output.txt
      Raw output:
      BEGIN EXECUTION
      C:\h\w\B82E0A00\p\ildasm.exe /raweh /out=processinfo.dasm.il processinfo.dll
      C:\h\w\B82E0A00\p\ilasm.exe /output=processinfo.asm.dll  processinfo.dasm.il
      
      Microsoft (R) .NET IL Assembler.  Version 5.0.0-ci
      Copyright (c) Microsoft Corporation.  All rights reserved.
      Assembling 'processinfo.dasm.il'  to EXE --> 'processinfo.asm.dll'
      Source file is ANSI
      
      Assembled method Tracing.Tests.ProcessInfoValidation.ProcessInfoValidation?<>c::.cctor
      Assembled method Tracing.Tests.ProcessInfoValidation.ProcessInfoValidation?<>c::.ctor
      Assembled method Tracing.Tests.ProcessInfoValidation.ProcessInfoValidation?<>c::<NormalizeCommandLine>b__0_0
      Assembled method Tracing.Tests.ProcessInfoValidation.ProcessInfoValidation?<>c::<NormalizeCommandLine>b__0_1
      Assembled method Tracing.Tests.ProcessInfoValidation.ProcessInfoValidation?<>c::<NormalizeCommandLine>b__0_2
      Assembled method Tracing.Tests.ProcessInfoValidation.ProcessInfoValidation?<>c::<Main>b__1_0
      Assembled method Tracing.Tests.ProcessInfoValidation.ProcessInfoValidation?<>c::<Main>b__1_1
      Assembled method Tracing.Tests.ProcessInfoValidation.ProcessInfoValidation?<>c::<Main>b__1_2
      Assembled method Tracing.Tests.ProcessInfoValidation.ProcessInfoValidation::NormalizeCommandLine
      Assembled method Tracing.Tests.ProcessInfoValidation.ProcessInfoValidation::Main
      Assembled method Tracing.Tests.ProcessInfoValidation.ProcessInfoValidation::.ctor
      Creating PE file
      
      Emitting classes:
      Class 1:Tracing.Tests.ProcessInfoValidation.ProcessInfoValidation
      Class 2:Tracing.Tests.ProcessInfoValidation.ProcessInfoValidation?<>c
      
      Emitting fields and methods:
      Global 
      Class 1Methods: 3;
      Class 2Fields: 7;Methods: 8;
      Resolving local member refs: 27 -> 27 defs, 0 refs, 0 unresolved
      
      Emitting events and properties:
      Global 
      Class 1
      Class 2
      Resolving local member refs: 0 -> 0 defs, 0 refs, 0 unresolved
      Writing PE file
      Operation completed successfully
       "C:\h\w\B82E0A00\p\corerun.exe" processinfo.asm.dll 
        0.0s: Test PID: 14896
        0.4s: Wrote: { Header={ Magic=System.Byte[]; Size=20; CommandSet=4; CommandId=0; Reserved=0 }; }
        0.6s: Received: { Header={ Magic=System.Byte[]; Size=188; CommandSet=255; CommandId=0; Reserved=0 }; Payload=[ 0x30 0x3A 0x00 0x00 0x00 0x00 0x00 0x00 0xEC 0x65 0x06 0x1C 0xE8 0x5B 0xE9 0x46 0x82 0x9B 0x01 0x49 0xF3 0xD3 0x82 0x1A 0x36 0x00 0x00 0x00 0x22 0x00 0x43 0x00 0x3A 0x00 0x5C 0x00 0x68 0x00 0x5C 0x00 0x77 0x00 0x5C 0x00 0x42 0x00 0x38 0x00 0x32 0x00 0x45 0x00 0x30 0x00 0x41 0x00 0x30 0x00 0x30 0x00 0x5C 0x00 0x70 0x00 0x5C 0x00 0x63 0x00 0x6F 0x00 0x72 0x00 0x65 0x00 0x72 0x00 0x75 0x00 0x6E 0x00 0x2E 0x00 0x65 0x00 0x78 0x00 0x65 0x00 0x22 0x00 0x20 0x00 0x20 0x00 0x70 0x00 0x72 0x00 0x6F 0x00 0x63 0x00 0x65 0x00 0x73 0x00 0x73 0x00 0x69 0x00 0x6E 0x00 0x66 0x00 0x6F 0x00 0x2E 0x00 0x61 0x00 0x73 0x00 0x6D 0x00 0x2E 0x00 0x64 0x00 0x6C 0x00 0x6C 0x00 0x20 0x00 0x00 0x00 0x08 0x00 0x00 0x00 0x57 0x00 0x69 0x00 0x6E 0x00 0x64 0x00 0x6F 0x00 0x77 0x00 0x73 0x00 0x00 0x00 0x04 0x00 0x00 0x00 0x78 0x00 0x36 0x00 0x34 0x00 0x00 0x00  ]}
        0.6s: Total size of Payload == 168 b
        0.7s: pid: 14896
        0.7s: runtimeCookie: 1c0665ec-5be8-46e9-829b-0149f3d3821a
        0.7s: commandLineLength: 54
        0.8s: commandLine bytes: [ 22 00 43 00 3A 00 5C 00 68 00 5C 00 77 00 5C 00 42 00 38 00 32 00 45 00 30 00 41 00 30 00 30 00 5C 00 70 00 5C 00 63 00 6F 00 72 00 65 00 72 00 75 00 6E 00 2E 00 65 00 78 00 65 00 22 00 20 00 20 00 70 00 72 00 6F 00 63 00 65 00 73 00 73 00 69 00 6E 00 66 00 6F 00 2E 00 61 00 73 00 6D 00 2E 00 64 00 6C 00 6C 00 20 00 00 00 ]
        0.8s: commandLine: ""C:\h\w\B82E0A00\p\corerun.exe"  processinfo.asm.dll "
      END EXECUTION OF IL{D}ASM BINARY - FAILED -532462766 vs 100
      Test Harness Exitcode is : 1

@josalem

@Dotnet-GitSync-Bot Dotnet-GitSync-Bot added the untriaged New issue has not been triaged by the area owner label Jul 26, 2020
BruceForstall added a commit to BruceForstall/runtime that referenced this issue Jul 26, 2020
@josalem
Copy link
Contributor

josalem commented Jul 26, 2020

I don’t think this is an actual product issue, but rather the test being brittle on the file name being changed. It seems that the ILASM round trip changes the file name such that the runtime perceives the new name when it checks its cmdline, i.e., .asm.dll, while the managed API sees the original name when you query the Assembly’s Location property, i.e., just .dll. I think it’s probably sufficient to just turn the test off for the ilasm roundtrip legs. I’ll double check on Monday to make sure something more nefarious isn’t going on, though.

@tommcdon tommcdon removed the untriaged New issue has not been triaged by the area owner label Jul 29, 2020
@tommcdon tommcdon added this to the 5.0.0 milestone Jul 29, 2020
@tommcdon
Copy link
Member

closing per @josalem's comments

@josalem josalem closed this as completed Jul 29, 2020
Jacksondr5 pushed a commit to Jacksondr5/runtime that referenced this issue Aug 10, 2020
@ghost ghost locked as resolved and limited conversation to collaborators Dec 8, 2020
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

No branches or pull requests

4 participants