You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
[mono] Tests System.IO.Hashing.Tests.Crc32Tests crashing on tvos-arm64 #90499
changed the title [-][mono] Tests `System.IO.Hashing.Tests` crashing on tvos-arm64[/-][+][mono] Tests `System.IO.Hashing.Tests.Crc32Tests` crashing on tvos-arm64[/+]on Aug 13, 2023
Yes, it is a consistent failure for some time now. It basically fails on every runtime-extra-platforms run, on the tvos-arm64 Release AllSubsets_Mono leg
Yes that seems to be the case - at least from analysing the runtime-extra-platforms failures.
On the other hand, System.IO.Hashing tests are not being tested on ios-arm64 on CI, so I tried it locally with the same build settings as tvos-arm64 is using (as the platforms are pretty similar), but could not reproduce.
We do have couple of 'mysterious' tvos-arm64 failures which were excluded before:
I've noticed that the bundle size for iOS is significantly smaller 232.3 MB, compared to tvOS which is 1009.3 MB. Additionally, the architectures differ, so it might be good testing with tvos-arm64 Helix queue.
I've noticed that the bundle size for iOS is significantly smaller 232.3 MB, compared to tvOS which is 1009.3 MB. Additionally, the architectures differ, so it might be good testing with tvos-arm64 Helix queue.
Yes on CI, on iOS device we run only the following libraries tests:
I've noticed that the bundle size for iOS is significantly smaller 232.3 MB, compared to tvOS which is 1009.3 MB. Additionally, the architectures differ, so it might be good testing with tvos-arm64 Helix queue.
Yes on CI, on iOS device we run only the following libraries tests:
System.IO.MemoryMappedFiles.Tests
System.Runtime.Numerics.Tests
System.Runtime.Tests
When I compared bundle size of the System.IO.Hashing.Tests app built for iOS device locally, it was much smaller compared to the bundle for tvOS device built on the CI.
Additionally, the architectures differ
Sorry, not sure I understand which architectures?
The CI is using the OSX.13.Amd64.AppleTV.Open Helix queue, while locally I built for arm64 iOS device. Have you tried to reproduce the issue on x64 iOS device?
When I compared bundle size of the System.IO.Hashing.Tests app built for iOS device locally, it was much smaller compared to the bundle for tvOS device built on the CI.
Ah I see. Can we download the bundle somehow from helix or mimic how AOTing is performed on Helix - locally?
The CI is using the OSX.13.Amd64.AppleTV.Open Helix queue, while locally I built for arm64 iOS device. Have you tried to reproduce the issue on x64 iOS device?
The Amd64 in the queue name (afaik) just indicates that the host machine is x64, but it then cross compiles for ios/tvos-arm64 (there are no ios-x64 devices only simulators). But yeah, another difference is that it uses a cross-compiler.
Ah I see. Can we download the bundle somehow from helix or mimic how AOTing is performed on Helix - locally?
Unfortunatelly we don't publish app bundles as artifacts.
The Amd64 in the queue name (afaik) just indicates that the host machine is x64, but it then cross compiles for ios/tvos-arm64 (there are no ios-x64 devices only simulators). But yeah, another difference is that it uses a cross-compiler.
Activity
[-][mono] Tests `System.IO.Hashing.Tests` crashing on tvos-arm64[/-][+][mono] Tests `System.IO.Hashing.Tests.Crc32Tests` crashing on tvos-arm64[/+]ivanpovazan commentedon Aug 15, 2023
For some reason the Build analysis is not picking up these failures.
Going through history of
runtime-extra-platformsit seems this failure was shadowed bytvos-arm64runs timing out.However, it can be seen that a log from 3 weeks ago: https://helixre107v0xdeko0k025g8.blob.core.windows.net/dotnet-runtime-refs-heads-main-66c0274ea26a40c9a0/System.IO.Hashing.Tests.Attempt.3/1/net.dot.System.IO.Hashing.Tests.log?helixlogtype=result also has the same crashing message.
I tried to reproduce this locally on an
ios-arm64device but with no luck.@vargaz do you have an idea what could have caused this regression?
vargaz commentedon Aug 15, 2023
Is this reproducible on CI ?
ivanpovazan commentedon Aug 15, 2023
Yes, it is a consistent failure for some time now. It basically fails on every
runtime-extra-platformsrun, on thetvos-arm64 Release AllSubsets_MonolegHere is the crash log: https://gist.github.com/ivanpovazan/d459960870e36af4a23c2fbddce14aeb
vargaz commentedon Aug 15, 2023
The crash log is not very useful. Maybe it happens only on tvos, or do we have a different build on tvos ?
ivanpovazan commentedon Aug 15, 2023
Yes that seems to be the case - at least from analysing the
runtime-extra-platformsfailures.On the other hand,
System.IO.Hashingtests are not being tested onios-arm64on CI, so I tried it locally with the same build settings astvos-arm64is using (as the platforms are pretty similar), but could not reproduce.We do have couple of 'mysterious' tvos-arm64 failures which were excluded before:
runtime/src/libraries/tests.proj
Lines 263 to 268 in 9d53816
Maybe this one goes in the same bucket.
kotlarmilos commentedon Aug 15, 2023
I've noticed that the bundle size for iOS is significantly smaller 232.3 MB, compared to tvOS which is 1009.3 MB. Additionally, the architectures differ, so it might be good testing with tvos-arm64 Helix queue.
ivanpovazan commentedon Aug 16, 2023
Yes on CI, on iOS device we run only the following libraries tests:
Sorry, not sure I understand which architectures?
kotlarmilos commentedon Aug 16, 2023
When I compared bundle size of the
System.IO.Hashing.Testsapp built for iOS device locally, it was much smaller compared to the bundle for tvOS device built on the CI.The CI is using the
OSX.13.Amd64.AppleTV.OpenHelix queue, while locally I built for arm64 iOS device. Have you tried to reproduce the issue on x64 iOS device?ivanpovazan commentedon Aug 16, 2023
Ah I see. Can we download the bundle somehow from helix or mimic how AOTing is performed on Helix - locally?
The Amd64 in the queue name (afaik) just indicates that the host machine is x64, but it then cross compiles for
ios/tvos-arm64(there are noios-x64devices only simulators). But yeah, another difference is that it uses a cross-compiler.kotlarmilos commentedon Aug 16, 2023
Unfortunatelly we don't publish app bundles as artifacts.
Correct, sorry for confusion, my error.
ivanpovazan commentedon Aug 16, 2023
I wonder if we could do the same thing that @steveisok did here: aac729f#diff-efa78f3f0523ef8b61f94772d9c204608051d411527cb9be83ca60266dc1d2f9
Where tests that were failing on
tvos-arm64got excluded, and enabled onios-arm64keeping the same coverage.But tracking the actual fix separately.
kotlarmilos commentedon Aug 16, 2023
Good idea. If we have capacity, we can do that. I suggest we enable it and track load on Grafana dashboards.
Enable System.IO.Hashing tests on ios and disable them tvos (#90984)