Skip to content

[7.0] Linux_bionic arm64 failure in Convert.cs causing FormatException in System.Diagnostics.Process tests #88756

Closed as not planned
@carlossanlop

Description

@carlossanlop

Error Blob

{
  "ErrorMessage": "FormatException : The input is not a valid Base-64 string as it contains a non-base 64 character, more than two padding characters, or an illegal character among the padding characters.",
  "BuildRetry": false,
  "ErrorPattern": "",
  "ExcludeConsoleLog": false
}

Reproduction Steps

Here's where the exception is being thrown in 7.0:

throw new FormatException(SR.Format_BadBase64Char);

[21:02:20] dbug: Exit code: 1
                 Std out:
                   Discovering: System.Diagnostics.Process.Tests (method display = ClassAndMethod, method display options = None)
                   Discovered:  System.Diagnostics.Process.Tests (found 257 of 317 test cases)
                   Starting:    System.Diagnostics.Process.Tests (parallel test collections = on, max threads = 8)
                       System.FormatException : The input is not a valid Base-64 string as it contains a non-base 64 character, more than two padding characters, or an illegal character among the padding characters.
                       Stack Trace:
                         /_/src/libraries/System.Private.CoreLib/src/System/Convert.cs(2906,0): at System.Convert.FromBase64_ComputeResultLength(Char* inputPtr, Int32 inputLength)
                         /_/src/libraries/System.Private.CoreLib/src/System/Convert.cs(2836,0): at System.Convert.FromBase64CharPtr(Char* inputPtr, Int32 inputLength)
                         /_/src/libraries/System.Private.CoreLib/src/System/Convert.cs(2643,0): at System.Convert.FromBase64String(String s)
                         /_/src/libraries/System.Diagnostics.Process/tests/ProcessStartInfoTests.cs(373,0): at System.Diagnostics.Tests.ProcessStartInfoTests.<>c.<ExecuteProcessAndReturnParsedOutput>b__9_0(String s)
                         /_/src/libraries/System.Linq/src/System/Linq/Select.SpeedOpt.cs(83,0): at System.Linq.Enumerable.SelectArrayIterator`2[[System.String, System.Private.CoreLib, Version=7.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.String, System.Private.CoreLib, Version=7.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].ToArray()
                         /_/src/libraries/System.Linq/src/System/Linq/ToCollection.cs(17,0): at System.Linq.Enumerable.ToArray[String](IEnumerable`1 source)
                         /_/src/libraries/System.Diagnostics.Process/tests/ProcessStartInfoTests.cs(373,0): at System.Diagnostics.Tests.ProcessStartInfoTests.ExecuteProcessAndReturnParsedOutput(Dictionary`2 envVars, Func`1 processWork)
                         /_/src/libraries/System.Diagnostics.Process/tests/ProcessStartInfoTests.cs(289,0): at System.Diagnostics.Tests.ProcessStartInfoTests.EnvironmentGetEnvironmentVariablesIsCaseSensitive()
                         /_/src/mono/System.Private.CoreLib/src/System/Reflection/MethodInvoker.Mono.cs(33,0): at System.Reflection.MethodInvoker.InterpretedInvoke(Object obj, Span`1 args, BindingFlags invokeAttr)
                       System.FormatException : The input is not a valid Base-64 string as it contains a non-base 64 character, more than two padding characters, or an illegal character among the padding characters.
                       Stack Trace:
                         /_/src/libraries/System.Private.CoreLib/src/System/Convert.cs(2906,0): at System.Convert.FromBase64_ComputeResultLength(Char* inputPtr, Int32 inputLength)
                         /_/src/libraries/System.Private.CoreLib/src/System/Convert.cs(2836,0): at System.Convert.FromBase64CharPtr(Char* inputPtr, Int32 inputLength)
                         /_/src/libraries/System.Private.CoreLib/src/System/Convert.cs(2643,0): at System.Convert.FromBase64String(String s)
                         /_/src/libraries/System.Diagnostics.Process/tests/ProcessStartInfoTests.cs(373,0): at System.Diagnostics.Tests.ProcessStartInfoTests.<>c.<ExecuteProcessAndReturnParsedOutput>b__9_0(String s)
                         /_/src/libraries/System.Linq/src/System/Linq/Select.SpeedOpt.cs(83,0): at System.Linq.Enumerable.SelectArrayIterator`2[[System.String, System.Private.CoreLib, Version=7.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.String, System.Private.CoreLib, Version=7.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].ToArray()
                         /_/src/libraries/System.Linq/src/System/Linq/ToCollection.cs(17,0): at System.Linq.Enumerable.ToArray[String](IEnumerable`1 source)
                         /_/src/libraries/System.Diagnostics.Process/tests/ProcessStartInfoTests.cs(373,0): at System.Diagnostics.Tests.ProcessStartInfoTests.ExecuteProcessAndReturnParsedOutput(Dictionary`2 envVars, Func`1 processWork)
                         /_/src/libraries/System.Diagnostics.Process/tests/ProcessStartInfoTests.cs(336,0): at System.Diagnostics.Tests.ProcessStartInfoTests.ProcessStartInfoEnvironmentVariablesDoesNotThrowForCaseSensitiveDuplicates()
                         /_/src/mono/System.Private.CoreLib/src/System/Reflection/MethodInvoker.Mono.cs(33,0): at System.Reflection.MethodInvoker.InterpretedInvoke(Object obj, Span`1 args, BindingFlags invokeAttr)
                       System.FormatException : The input is not a valid Base-64 string as it contains a non-base 64 character, more than two padding characters, or an illegal character among the padding characters.
                       Stack Trace:
                         /_/src/libraries/System.Private.CoreLib/src/System/Convert.cs(2906,0): at System.Convert.FromBase64_ComputeResultLength(Char* inputPtr, Int32 inputLength)
                         /_/src/libraries/System.Private.CoreLib/src/System/Convert.cs(2836,0): at System.Convert.FromBase64CharPtr(Char* inputPtr, Int32 inputLength)
                         /_/src/libraries/System.Private.CoreLib/src/System/Convert.cs(2643,0): at System.Convert.FromBase64String(String s)
                         /_/src/libraries/System.Diagnostics.Process/tests/ProcessStartInfoTests.cs(373,0): at System.Diagnostics.Tests.ProcessStartInfoTests.<>c.<ExecuteProcessAndReturnParsedOutput>b__9_0(String s)
                         /_/src/libraries/System.Linq/src/System/Linq/Select.SpeedOpt.cs(83,0): at System.Linq.Enumerable.SelectArrayIterator`2[[System.String, System.Private.CoreLib, Version=7.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.String, System.Private.CoreLib, Version=7.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].ToArray()
                         /_/src/libraries/System.Linq/src/System/Linq/ToCollection.cs(17,0): at System.Linq.Enumerable.ToArray[String](IEnumerable`1 source)
                         /_/src/libraries/System.Diagnostics.Process/tests/ProcessStartInfoTests.cs(373,0): at System.Diagnostics.Tests.ProcessStartInfoTests.ExecuteProcessAndReturnParsedOutput(Dictionary`2 envVars, Func`1 processWork)
                         /_/src/libraries/System.Diagnostics.Process/tests/ProcessStartInfoTests.cs(312,0): at System.Diagnostics.Tests.ProcessStartInfoTests.ProcessStartInfoEnvironmentDoesNotThrowForCaseSensitiveDuplicates()
                         /_/src/mono/System.Private.CoreLib/src/System/Reflection/MethodInvoker.Mono.cs(33,0): at System.Reflection.MethodInvoker.InterpretedInvoke(Object obj, Span`1 args, BindingFlags invokeAttr)
                     System.Diagnostics.Tests.ProcessStartInfoTests.ShellExecute_Nano_Fails_Start [SKIP]
                       Condition(s) not met: "IsWindowsNanoServer"

                   Finished:    System.Diagnostics.Process.Tests
                 === TEST EXECUTION SUMMARY ===
                    System.Diagnostics.Process.Tests  Total: 319, Errors: 0, Failed: 3, Skipped: 6, Time: 50.317s
                 
                 
                 Std err:
                     System.Diagnostics.Tests.ProcessStartInfoTests.EnvironmentGetEnvironmentVariablesIsCaseSensitive [FAIL]
                     System.Diagnostics.Tests.ProcessStartInfoTests.ProcessStartInfoEnvironmentVariablesDoesNotThrowForCaseSensitiveDuplicates [FAIL]
                     System.Diagnostics.Tests.ProcessStartInfoTests.ProcessStartInfoEnvironmentDoesNotThrowForCaseSensitiveDuplicates [FAIL]

Report

Build Definition Test Pull Request
661457 dotnet/runtime System.Diagnostics.Process.Tests.WorkItemExecution #101732
659984 dotnet/runtime System.Diagnostics.Process.Tests.WorkItemExecution
647537 dotnet/runtime System.Diagnostics.Process.Tests.WorkItemExecution
644871 dotnet/runtime System.Diagnostics.Process.Tests.WorkItemExecution

Summary

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

Known issue validation

Build: 🔎 https://dev.azure.com/dnceng-public/public/_build/results?buildId=336356
Error message validated: FormatException : The input is not a valid Base-64 string as it contains a non-base 64 character, more than two padding characters, or an illegal character among the padding characters.
Result validation: ✅ Known issue matched with the provided build.
Validation performed at: 7/12/2023 6:05:51 PM UTC

Metadata

Metadata

Assignees

No one assigned

    Labels

    Known Build ErrorUse this to report build issues in the .NET Helix tabarch-arm64area-VM-meta-monoblocking-clean-ciBlocking PR or rolling runs of 'runtime' or 'runtime-extra-platforms'os-linuxLinux OS (any supported distro)runtime-monospecific to the Mono runtime

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions