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

[7.0] WASM Linux failure in DllImportSearchPathsTest: parameter 'path1' value is null #84724

Closed
carlossanlop opened this issue Apr 12, 2023 · 6 comments
Labels
arch-wasm WebAssembly architecture area-VM-meta-mono 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 os-linux Linux OS (any supported distro) runtime-mono specific to the Mono runtime

Comments

@carlossanlop
Copy link
Member

carlossanlop commented Apr 12, 2023

Error Blob

{
  "ErrorMessage": "System.ArgumentNullException: Value cannot be null. (Parameter 'path1')",
  "BuildRetry": false,
  "ErrorPattern": "",
  "ExcludeConsoleLog": false
}

Reproduction Steps

Found in a dependency flow PR for 7.0.

Note: This test failed in the same queue where other tests failed with the Nuget-Migrations error, but this one in particular did not show that message in the output at all. Just wanted to mention it in case it could be indirectly related.

  Discovering: Interop.DllImportSearchPaths.XUnitWrapper (method display = ClassAndMethod, method display options = None)
  Discovered:  Interop.DllImportSearchPaths.XUnitWrapper (found 1 test case)
  Starting:    Interop.DllImportSearchPaths.XUnitWrapper (parallel test collections = on, max threads = 2)
    Interop/DllImportSearchPaths/DllImportSearchPathsTest/DllImportSearchPathsTest.sh [FAIL]
      {"name":"ExitStatus","message":"Program terminated with exit(101)","status":101}
      
      Return code:      1
      Raw output file:      /datadisks/disk1/work/BB920A0A/w/A622093F/uploads/Reports/Interop.DllImportSearchPaths/DllImportSearchPathsTest/DllImportSearchPathsTest.output.txt
      Raw output:
      BEGIN EXECUTION
      
      Welcome to .NET 7.0!
      ---------------------
      SDK Version: 7.0.104
      
      ----------------
      Installed an ASP.NET Core HTTPS development certificate.
      To trust the certificate run 'dotnet dev-certs https --trust' (Windows and macOS only).
      Learn about HTTPS: https://aka.ms/dotnet-https
      ----------------
      Write your first app: https://aka.ms/dotnet-hello-world
      Find out what's new: https://aka.ms/dotnet-whats-new
      Explore documentation: https://aka.ms/dotnet-docs
      Report issues and find source on GitHub: https://github.com/dotnet/core
      Use 'dotnet --help' to see available commands or visit: https://aka.ms/dotnet-cli
      --------------------------------------------------------------------------------------
      MSBuild version 17.4.1+2eac9157a for .NET
        AppDir: /datadisks/disk1/work/BB920A0A/w/A622093F/e/Interop/DllImportSearchPaths/DllImportSearchPathsTest/WasmApp/
        TestBinDir: /datadisks/disk1/work/BB920A0A/w/A622093F/e/Interop/DllImportSearchPaths/DllImportSearchPathsTest
        ArtifactsBinDir: 
        Generated app bundle at /datadisks/disk1/work/BB920A0A/w/A622093F/e/Interop/DllImportSearchPaths/DllImportSearchPathsTest/WasmApp/
      Incoming arguments: --run DllImportSearchPathsTest.dll
      Application arguments: --run DllImportSearchPathsTest.dll
      console.debug: mono_wasm_runtime_ready fe00e07a-5519-4dfe-b35a-f867dbaf2e28
      console.info: Initializing.....
      System.ArgumentNullException: Value cannot be null. (Parameter 'path1')
         at System.ArgumentNullException.Throw(String paramName)
         at System.ArgumentNullException.ThrowIfNull(Object argument, String paramName)
         at System.IO.Path.Combine(String path1, String path2)
         at DllImportSearchPathsTest.get_Subdirectory()
         at DllImportSearchPathsTest.AssemblyDirectory_Found()
         at Program.<Main>$(String[] args)
      WASM EXIT 101
      Expected: 100
      Actual: 101
      END EXECUTION - FAILED
      Test Harness Exitcode is : 1
      To run the test:
      > set CORE_ROOT=/datadisks/disk1/work/BB920A0A/p
      > /datadisks/disk1/work/BB920A0A/w/A622093F/e/Interop/DllImportSearchPaths/DllImportSearchPathsTest/DllImportSearchPathsTest.sh
      Expected: True
      Actual:   False
      Stack Trace:
           at Interop_DllImportSearchPaths._DllImportSearchPathsTest_DllImportSearchPathsTest_._DllImportSearchPathsTest_DllImportSearchPathsTest_sh()
           at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor)
           at System.Reflection.MethodInvoker.Invoke(Object obj, IntPtr* args, BindingFlags invokeAttr)
      Output:
        {"name":"ExitStatus","message":"Program terminated with exit(101)","status":101}
        
        Return code:      1
        Raw output file:      /datadisks/disk1/work/BB920A0A/w/A622093F/uploads/Reports/Interop.DllImportSearchPaths/DllImportSearchPathsTest/DllImportSearchPathsTest.output.txt
        Raw output:
        BEGIN EXECUTION
        
        Welcome to .NET 7.0!
        ---------------------
        SDK Version: 7.0.104
        
        ----------------
        Installed an ASP.NET Core HTTPS development certificate.
        To trust the certificate run 'dotnet dev-certs https --trust' (Windows and macOS only).
        Learn about HTTPS: https://aka.ms/dotnet-https
        ----------------
        Write your first app: https://aka.ms/dotnet-hello-world
        Find out what's new: https://aka.ms/dotnet-whats-new
        Explore documentation: https://aka.ms/dotnet-docs
        Report issues and find source on GitHub: https://github.com/dotnet/core
        Use 'dotnet --help' to see available commands or visit: https://aka.ms/dotnet-cli
        --------------------------------------------------------------------------------------
        MSBuild version 17.4.1+2eac9157a for .NET
          AppDir: /datadisks/disk1/work/BB920A0A/w/A622093F/e/Interop/DllImportSearchPaths/DllImportSearchPathsTest/WasmApp/
          TestBinDir: /datadisks/disk1/work/BB920A0A/w/A622093F/e/Interop/DllImportSearchPaths/DllImportSearchPathsTest
          ArtifactsBinDir: 
          Generated app bundle at /datadisks/disk1/work/BB920A0A/w/A622093F/e/Interop/DllImportSearchPaths/DllImportSearchPathsTest/WasmApp/
        Incoming arguments: --run DllImportSearchPathsTest.dll
        Application arguments: --run DllImportSearchPathsTest.dll
        console.debug: mono_wasm_runtime_ready fe00e07a-5519-4dfe-b35a-f867dbaf2e28
        console.info: Initializing.....
        System.ArgumentNullException: Value cannot be null. (Parameter 'path1')
           at System.ArgumentNullException.Throw(String paramName)
           at System.ArgumentNullException.ThrowIfNull(Object argument, String paramName)
           at System.IO.Path.Combine(String path1, String path2)
           at DllImportSearchPathsTest.get_Subdirectory()
           at DllImportSearchPathsTest.AssemblyDirectory_Found()
           at Program.<Main>$(String[] args)
        WASM EXIT 101
        Expected: 100
        Actual: 101
        END EXECUTION - FAILED
        Test Harness Exitcode is : 1
        To run the test:
        > set CORE_ROOT=/datadisks/disk1/work/BB920A0A/p
        > /datadisks/disk1/work/BB920A0A/w/A622093F/e/Interop/DllImportSearchPaths/DllImportSearchPathsTest/DllImportSearchPathsTest.sh
  Finished:    Interop.DllImportSearchPaths.XUnitWrapper
  Discovering: Interop.DisabledRuntimeMarshalling.XUnitWrapper (method display = ClassAndMethod, method display options = None)
  Discovered:  Interop.DisabledRuntimeMarshalling.XUnitWrapper (found 0 test cases)
  Discovering: Interop.UnmanagedCallersOnly.XUnitWrapper (method display = ClassAndMethod, method display options = None)
  Discovered:  Interop.UnmanagedCallersOnly.XUnitWrapper (found 0 test cases)
  Discovering: Interop.MonoAPI.XUnitWrapper (method display = ClassAndMethod, method display options = None)
  Discovered:  Interop.MonoAPI.XUnitWrapper (found 0 test cases)
  Discovering: Interop.ICustomMarshaler.XUnitWrapper (method display = ClassAndMethod, method display options = None)
  Discovered:  Interop.ICustomMarshaler.XUnitWrapper (found 0 test cases)
  Discovering: Interop.StringMarshalling.XUnitWrapper (method display = ClassAndMethod, method display options = None)
  Discovered:  Interop.StringMarshalling.XUnitWrapper (found 0 test cases)
  Discovering: Interop.StructPacking.XUnitWrapper (method display = ClassAndMethod, method display options = None)
  Discovered:  Interop.StructPacking.XUnitWrapper (found 0 test cases)
=== TEST EXECUTION SUMMARY ===
   Interop.DisabledRuntimeMarshalling.XUnitWrapper.dll  Total: 0
   Interop.DllImportAttribute.XUnitWrapper.dll          Total: 0
   Interop.DllImportSearchPaths.XUnitWrapper            Total: 1, Errors: 0, Failed: 1, Skipped: 0, Time: 1.885s
   Interop.ICustomMarshaler.XUnitWrapper.dll            Total: 0
   Interop.LayoutClass.XUnitWrapper.dll                 Total: 0
   Interop.MarshalAPI.XUnitWrapper.dll                  Total: 0
   Interop.MonoAPI.XUnitWrapper.dll                     Total: 0
   Interop.NativeLibrary.XUnitWrapper.dll               Total: 0
   Interop.PInvoke.XUnitWrapper.dll                     Total: 0
   Interop.StringMarshalling.XUnitWrapper.dll           Total: 0
   Interop.StructMarshalling.XUnitWrapper.dll           Total: 0
   Interop.StructPacking.XUnitWrapper.dll               Total: 0
   Interop.SuppressGCTransition.XUnitWrapper.dll        Total: 0
   Interop.UnmanagedCallConv.XUnitWrapper.dll           Total: 0
   Interop.UnmanagedCallersOnly.XUnitWrapper.dll        Total: 0
   Interop.UnmanagedCallersOnlyBasic.XUnitWrapper.dll   Total: 0
                                                               -          -          -           -        ------
                                                  GRAND TOTAL: 1          0          1           0        1.885s (2.069s)

Report

Summary

24-Hour Hit Count 7-Day Hit Count 1-Month Count
0 0 0

Known issue validation

Build: 🔎
Result validation: ⚠️ Validation could not be done without an Azure DevOps build URL on the issue. Please add it to the "Build: 🔎" line.

@carlossanlop carlossanlop added arch-wasm WebAssembly architecture os-linux Linux OS (any supported distro) blocking-clean-ci Blocking PR or rolling runs of 'runtime' or 'runtime-extra-platforms' area-VM-meta-mono runtime-mono specific to the Mono runtime Known Build Error Use this to report build issues in the .NET Helix tab labels Apr 12, 2023
@ghost ghost added the untriaged New issue has not been triaged by the area owner label Apr 12, 2023
@ghost
Copy link

ghost commented Apr 12, 2023

Tagging subscribers to 'arch-wasm': @lewing
See info in area-owners.md if you want to be subscribed.

Issue Details

Error Blob

{
  "ErrorMessage": "System.ArgumentNullException: Value cannot be null. (Parameter 'path1')",
  "BuildRetry": false,
  "ErrorPattern": "",
  "ExcludeConsoleLog": false
}

Reproduction Steps

Found in a dependency flow PR for 7.0.

Note: This test failed in the same queue where other tests failed with the Nuget-Migrations error, but this one in particular did not show that message in the output at all. Just wanted to mention it in case it could be indirectly related.

  Discovering: Interop.DllImportSearchPaths.XUnitWrapper (method display = ClassAndMethod, method display options = None)
  Discovered:  Interop.DllImportSearchPaths.XUnitWrapper (found 1 test case)
  Starting:    Interop.DllImportSearchPaths.XUnitWrapper (parallel test collections = on, max threads = 2)
    Interop/DllImportSearchPaths/DllImportSearchPathsTest/DllImportSearchPathsTest.sh [FAIL]
      {"name":"ExitStatus","message":"Program terminated with exit(101)","status":101}
      
      Return code:      1
      Raw output file:      /datadisks/disk1/work/BB920A0A/w/A622093F/uploads/Reports/Interop.DllImportSearchPaths/DllImportSearchPathsTest/DllImportSearchPathsTest.output.txt
      Raw output:
      BEGIN EXECUTION
      
      Welcome to .NET 7.0!
      ---------------------
      SDK Version: 7.0.104
      
      ----------------
      Installed an ASP.NET Core HTTPS development certificate.
      To trust the certificate run 'dotnet dev-certs https --trust' (Windows and macOS only).
      Learn about HTTPS: https://aka.ms/dotnet-https
      ----------------
      Write your first app: https://aka.ms/dotnet-hello-world
      Find out what's new: https://aka.ms/dotnet-whats-new
      Explore documentation: https://aka.ms/dotnet-docs
      Report issues and find source on GitHub: https://github.com/dotnet/core
      Use 'dotnet --help' to see available commands or visit: https://aka.ms/dotnet-cli
      --------------------------------------------------------------------------------------
      MSBuild version 17.4.1+2eac9157a for .NET
        AppDir: /datadisks/disk1/work/BB920A0A/w/A622093F/e/Interop/DllImportSearchPaths/DllImportSearchPathsTest/WasmApp/
        TestBinDir: /datadisks/disk1/work/BB920A0A/w/A622093F/e/Interop/DllImportSearchPaths/DllImportSearchPathsTest
        ArtifactsBinDir: 
        Generated app bundle at /datadisks/disk1/work/BB920A0A/w/A622093F/e/Interop/DllImportSearchPaths/DllImportSearchPathsTest/WasmApp/
      Incoming arguments: --run DllImportSearchPathsTest.dll
      Application arguments: --run DllImportSearchPathsTest.dll
      console.debug: mono_wasm_runtime_ready fe00e07a-5519-4dfe-b35a-f867dbaf2e28
      console.info: Initializing.....
      System.ArgumentNullException: Value cannot be null. (Parameter 'path1')
         at System.ArgumentNullException.Throw(String paramName)
         at System.ArgumentNullException.ThrowIfNull(Object argument, String paramName)
         at System.IO.Path.Combine(String path1, String path2)
         at DllImportSearchPathsTest.get_Subdirectory()
         at DllImportSearchPathsTest.AssemblyDirectory_Found()
         at Program.<Main>$(String[] args)
      WASM EXIT 101
      Expected: 100
      Actual: 101
      END EXECUTION - FAILED
      Test Harness Exitcode is : 1
      To run the test:
      > set CORE_ROOT=/datadisks/disk1/work/BB920A0A/p
      > /datadisks/disk1/work/BB920A0A/w/A622093F/e/Interop/DllImportSearchPaths/DllImportSearchPathsTest/DllImportSearchPathsTest.sh
      Expected: True
      Actual:   False
      Stack Trace:
           at Interop_DllImportSearchPaths._DllImportSearchPathsTest_DllImportSearchPathsTest_._DllImportSearchPathsTest_DllImportSearchPathsTest_sh()
           at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor)
           at System.Reflection.MethodInvoker.Invoke(Object obj, IntPtr* args, BindingFlags invokeAttr)
      Output:
        {"name":"ExitStatus","message":"Program terminated with exit(101)","status":101}
        
        Return code:      1
        Raw output file:      /datadisks/disk1/work/BB920A0A/w/A622093F/uploads/Reports/Interop.DllImportSearchPaths/DllImportSearchPathsTest/DllImportSearchPathsTest.output.txt
        Raw output:
        BEGIN EXECUTION
        
        Welcome to .NET 7.0!
        ---------------------
        SDK Version: 7.0.104
        
        ----------------
        Installed an ASP.NET Core HTTPS development certificate.
        To trust the certificate run 'dotnet dev-certs https --trust' (Windows and macOS only).
        Learn about HTTPS: https://aka.ms/dotnet-https
        ----------------
        Write your first app: https://aka.ms/dotnet-hello-world
        Find out what's new: https://aka.ms/dotnet-whats-new
        Explore documentation: https://aka.ms/dotnet-docs
        Report issues and find source on GitHub: https://github.com/dotnet/core
        Use 'dotnet --help' to see available commands or visit: https://aka.ms/dotnet-cli
        --------------------------------------------------------------------------------------
        MSBuild version 17.4.1+2eac9157a for .NET
          AppDir: /datadisks/disk1/work/BB920A0A/w/A622093F/e/Interop/DllImportSearchPaths/DllImportSearchPathsTest/WasmApp/
          TestBinDir: /datadisks/disk1/work/BB920A0A/w/A622093F/e/Interop/DllImportSearchPaths/DllImportSearchPathsTest
          ArtifactsBinDir: 
          Generated app bundle at /datadisks/disk1/work/BB920A0A/w/A622093F/e/Interop/DllImportSearchPaths/DllImportSearchPathsTest/WasmApp/
        Incoming arguments: --run DllImportSearchPathsTest.dll
        Application arguments: --run DllImportSearchPathsTest.dll
        console.debug: mono_wasm_runtime_ready fe00e07a-5519-4dfe-b35a-f867dbaf2e28
        console.info: Initializing.....
        System.ArgumentNullException: Value cannot be null. (Parameter 'path1')
           at System.ArgumentNullException.Throw(String paramName)
           at System.ArgumentNullException.ThrowIfNull(Object argument, String paramName)
           at System.IO.Path.Combine(String path1, String path2)
           at DllImportSearchPathsTest.get_Subdirectory()
           at DllImportSearchPathsTest.AssemblyDirectory_Found()
           at Program.<Main>$(String[] args)
        WASM EXIT 101
        Expected: 100
        Actual: 101
        END EXECUTION - FAILED
        Test Harness Exitcode is : 1
        To run the test:
        > set CORE_ROOT=/datadisks/disk1/work/BB920A0A/p
        > /datadisks/disk1/work/BB920A0A/w/A622093F/e/Interop/DllImportSearchPaths/DllImportSearchPathsTest/DllImportSearchPathsTest.sh
  Finished:    Interop.DllImportSearchPaths.XUnitWrapper
  Discovering: Interop.DisabledRuntimeMarshalling.XUnitWrapper (method display = ClassAndMethod, method display options = None)
  Discovered:  Interop.DisabledRuntimeMarshalling.XUnitWrapper (found 0 test cases)
  Discovering: Interop.UnmanagedCallersOnly.XUnitWrapper (method display = ClassAndMethod, method display options = None)
  Discovered:  Interop.UnmanagedCallersOnly.XUnitWrapper (found 0 test cases)
  Discovering: Interop.MonoAPI.XUnitWrapper (method display = ClassAndMethod, method display options = None)
  Discovered:  Interop.MonoAPI.XUnitWrapper (found 0 test cases)
  Discovering: Interop.ICustomMarshaler.XUnitWrapper (method display = ClassAndMethod, method display options = None)
  Discovered:  Interop.ICustomMarshaler.XUnitWrapper (found 0 test cases)
  Discovering: Interop.StringMarshalling.XUnitWrapper (method display = ClassAndMethod, method display options = None)
  Discovered:  Interop.StringMarshalling.XUnitWrapper (found 0 test cases)
  Discovering: Interop.StructPacking.XUnitWrapper (method display = ClassAndMethod, method display options = None)
  Discovered:  Interop.StructPacking.XUnitWrapper (found 0 test cases)
=== TEST EXECUTION SUMMARY ===
   Interop.DisabledRuntimeMarshalling.XUnitWrapper.dll  Total: 0
   Interop.DllImportAttribute.XUnitWrapper.dll          Total: 0
   Interop.DllImportSearchPaths.XUnitWrapper            Total: 1, Errors: 0, Failed: 1, Skipped: 0, Time: 1.885s
   Interop.ICustomMarshaler.XUnitWrapper.dll            Total: 0
   Interop.LayoutClass.XUnitWrapper.dll                 Total: 0
   Interop.MarshalAPI.XUnitWrapper.dll                  Total: 0
   Interop.MonoAPI.XUnitWrapper.dll                     Total: 0
   Interop.NativeLibrary.XUnitWrapper.dll               Total: 0
   Interop.PInvoke.XUnitWrapper.dll                     Total: 0
   Interop.StringMarshalling.XUnitWrapper.dll           Total: 0
   Interop.StructMarshalling.XUnitWrapper.dll           Total: 0
   Interop.StructPacking.XUnitWrapper.dll               Total: 0
   Interop.SuppressGCTransition.XUnitWrapper.dll        Total: 0
   Interop.UnmanagedCallConv.XUnitWrapper.dll           Total: 0
   Interop.UnmanagedCallersOnly.XUnitWrapper.dll        Total: 0
   Interop.UnmanagedCallersOnlyBasic.XUnitWrapper.dll   Total: 0
                                                               -          -          -           -        ------
                                                  GRAND TOTAL: 1          0          1           0        1.885s (2.069s)
Author: carlossanlop
Assignees: -
Labels:

arch-wasm, os-linux, blocking-clean-ci, area-VM-meta-mono, runtime-mono, Known Build Error

Milestone: -

@elinor-fung
Copy link
Member

Sorry, this was me - that tests loads an assembly from a file and should be disabled. I didn't hit this in my PR, which is weird.

@ghost ghost added the in-pr There is an active PR which will close this issue when it is merged label Apr 12, 2023
@elinor-fung
Copy link
Member

elinor-fung commented Apr 12, 2023

Created #84735. The change isn't in staging yet, so it is targeting release/7.0 - @carlossanlop is that what I should be doing?

Targeting 7.0-staging. Will close/reopen once the failing test makes it there.

@carlossanlop
Copy link
Member Author

carlossanlop commented Apr 12, 2023

Let's target staging, please. The base release branches are currently closed.

Edit: This test fix goes into staging, because the actual test is in the base release branch, but it will reach staging soon.

@carlossanlop
Copy link
Member Author

I'll keep this open for a couple more days just in case, but this should be resolved.

@carlossanlop
Copy link
Member Author

@elinor-fung I see we have a fix for this #84735 targeting the 7.0-staging branch, but the failure was hit in release/6.0 as well: #84939 and we don't have a similar PR in 6.0-staging to disable the tests there. Can you please submit one?

@ghost ghost removed the in-pr There is an active PR which will close this issue when it is merged label Apr 24, 2023
@ghost ghost added in-pr There is an active PR which will close this issue when it is merged and removed in-pr There is an active PR which will close this issue when it is merged labels May 1, 2023
@lewing lewing closed this as completed Jul 21, 2023
@ghost ghost removed the untriaged New issue has not been triaged by the area owner label Jul 21, 2023
@ghost ghost locked as resolved and limited conversation to collaborators Aug 21, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
arch-wasm WebAssembly architecture area-VM-meta-mono 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 os-linux Linux OS (any supported distro) runtime-mono specific to the Mono runtime
Projects
None yet
Development

No branches or pull requests

3 participants