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

[Android][x86][arm] System.Tests.GCExtendedTests.AllocateArrayTooLarge throws OverflowException instead of OutOfMemoryException #63079

Closed
MaximLipnin opened this issue Dec 22, 2021 · 3 comments · Fixed by #63084
Labels
arch-arm32 arch-x86 area-Codegen-JIT-mono in-pr There is an active PR which will close this issue when it is merged os-android
Milestone

Comments

@MaximLipnin
Copy link
Contributor

MaximLipnin commented Dec 22, 2021

<test name="System.Tests.GCExtendedTests.AllocateArrayTooLarge" type="System.Tests.GCExtendedTests" method="AllocateArrayTooLarge" time="0.0181027" result="Fail">
<failure exception-type="Xunit.Sdk.ThrowsException">
    <message><![CDATA[Assert.Throws() Failure\nExpected: typeof(System.OutOfMemoryException)\nActual:   typeof(System.OverflowException): Arithmetic operation resulted in an overflow.\n---- System.OverflowException : Arithmetic operation resulted in an overflow.]]></message>
    <stack-trace><![CDATA[   at System.GC.AllocateArray[Double](Int32 length, Boolean pinned)
at System.GC.AllocateUninitializedArray[Double](Int32 length, Boolean pinned)
at System.Tests.GCExtendedTests.<>c.<AllocateArrayTooLarge>b__29_0() in /_/src/libraries/System.Runtime/tests/System/GCTests.cs:line 1040
----- Inner Stack Trace -----
at System.GC.AllocateArray[Double](Int32 length, Boolean pinned)
at System.GC.AllocateUninitializedArray[Double](Int32 length, Boolean pinned)
at System.Tests.GCExtendedTests.<>c.<AllocateArrayTooLarge>b__29_0() in /_/src/libraries/System.Runtime/tests/System/GCTests.cs:line 1040]]></stack-trace>
</failure>
</test>

https://dev.azure.com/dnceng/public/_build/results?buildId=1523011&view=ms.vss-test-web.build-test-results-tab&runId=43266500&resultId=166413&paneView=dotnet-dnceng.dnceng-anon-build-release-tasks.helix-anon-test-information-tab

This is a regression: Reverting 9ddd58a makes the mentioned test pass.

cc @akoeplinger @steveisok @vargaz

Upd. The tests are failing on Android x86/ arm legs:

  • System.Tests.GCExtendedTests.AllocateArrayTooLarge
  • System.Collections.Tests.SortedListTests.Capacity_Excessive
  • System.Collections.Tests.CollectionBaseTests.Capacity_Excessive
@dotnet-issue-labeler dotnet-issue-labeler bot added the untriaged New issue has not been triaged by the area owner label Dec 22, 2021
@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
Copy link

ghost commented Dec 22, 2021

Tagging subscribers to 'arch-android': @steveisok, @akoeplinger
See info in area-owners.md if you want to be subscribed.

Issue Details
<test name="System.Tests.GCExtendedTests.AllocateArrayTooLarge" type="System.Tests.GCExtendedTests" method="AllocateArrayTooLarge" time="0.0181027" result="Fail">
<failure exception-type="Xunit.Sdk.ThrowsException">
    <message><![CDATA[Assert.Throws() Failure\nExpected: typeof(System.OutOfMemoryException)\nActual:   typeof(System.OverflowException): Arithmetic operation resulted in an overflow.\n---- System.OverflowException : Arithmetic operation resulted in an overflow.]]></message>
    <stack-trace><![CDATA[   at System.GC.AllocateArray[Double](Int32 length, Boolean pinned)
at System.GC.AllocateUninitializedArray[Double](Int32 length, Boolean pinned)
at System.Tests.GCExtendedTests.<>c.<AllocateArrayTooLarge>b__29_0() in /_/src/libraries/System.Runtime/tests/System/GCTests.cs:line 1040
----- Inner Stack Trace -----
at System.GC.AllocateArray[Double](Int32 length, Boolean pinned)
at System.GC.AllocateUninitializedArray[Double](Int32 length, Boolean pinned)
at System.Tests.GCExtendedTests.<>c.<AllocateArrayTooLarge>b__29_0() in /_/src/libraries/System.Runtime/tests/System/GCTests.cs:line 1040]]></stack-trace>
</failure>
</test>

https://dev.azure.com/dnceng/public/_build/results?buildId=1523011&view=ms.vss-test-web.build-test-results-tab&runId=43266500&resultId=166413&paneView=dotnet-dnceng.dnceng-anon-build-release-tasks.helix-anon-test-information-tab

Reverting 9ddd58a makes the mentioned test pass.

cc @akoeplinger @steveisok @vargaz

Author: MaximLipnin
Assignees: -
Labels:

arch-x86, os-android, untriaged

Milestone: -

@akoeplinger akoeplinger added this to the 7.0.0 milestone Dec 22, 2021
@akoeplinger akoeplinger added area-Codegen-JIT-mono and removed untriaged New issue has not been triaged by the area owner labels Dec 22, 2021
@ghost ghost added the in-pr There is an active PR which will close this issue when it is merged label Dec 22, 2021
@MaximLipnin MaximLipnin changed the title [Android][x86] System.Tests.GCExtendedTests.AllocateArrayTooLarge throws OverflowException instead of OutOfMemoryException [Android][x86][arm] System.Tests.GCExtendedTests.AllocateArrayTooLarge throws OverflowException instead of OutOfMemoryException Dec 23, 2021
@marek-safar
Copy link
Contributor

@vargaz there are still few OOM exceptions expected (I didn't check if the tests are correct)

vargaz added a commit to vargaz/runtime that referenced this issue Dec 24, 2021
@ghost ghost locked as resolved and limited conversation to collaborators Jan 26, 2022
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
arch-arm32 arch-x86 area-Codegen-JIT-mono in-pr There is an active PR which will close this issue when it is merged os-android
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants