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] Android.Device_Emulator.JIT.Test failing on emulators with CoreCLR #112633

Open
ivanpovazan opened this issue Feb 17, 2025 · 7 comments
Labels
area-Infrastructure-mono Known Build Error Use this to report build issues in the .NET Helix tab os-android
Milestone

Comments

@ivanpovazan
Copy link
Member

ivanpovazan commented Feb 17, 2025

Build Information

Build: https://dev.azure.com/dnceng-public/public/_build/results?buildId=953058
Build error leg or test failing: Android.Device_Emulator.JIT.Test
Found in: #112547

Error log

[21:40:21] dbug: ADBRunner using ADB.exe supplied from /datadisks/disk1/work/C3800A6B/p/microsoft.dotnet.xharness.cli/10.0.0-prerelease.25103.1/tools/net8.0/any/../../../runtimes/any/native/adb/linux/adb
[21:40:21] dbug: Full resolved path:'/datadisks/disk1/work/C3800A6B/p/microsoft.dotnet.xharness.cli/10.0.0-prerelease.25103.1/runtimes/any/native/adb/linux/adb'
[21:40:21] info: Will attempt to find device supporting architectures: 'x86_64'
[21:40:21] dbug: Executing command: '/datadisks/disk1/work/C3800A6B/p/microsoft.dotnet.xharness.cli/10.0.0-prerelease.25103.1/runtimes/any/native/adb/linux/adb start-server'
[21:40:21] dbug: 
[21:40:21] info: Finding attached devices/emulators...
[21:40:21] dbug: Executing command: '/datadisks/disk1/work/C3800A6B/p/microsoft.dotnet.xharness.cli/10.0.0-prerelease.25103.1/runtimes/any/native/adb/linux/adb devices -l'
[21:40:21] dbug: Found 1 possible devices
[21:40:21] dbug: Evaluating output line for device serial: emulator-5554          device product:sdk_phone_x86 model:Android_SDK_built_for_x86 device:generic_x86 transport_id:1
[21:40:21] dbug: Executing command: '/datadisks/disk1/work/C3800A6B/p/microsoft.dotnet.xharness.cli/10.0.0-prerelease.25103.1/runtimes/any/native/adb/linux/adb -s emulator-5554 shell getprop ro.product.cpu.abilist'
[21:40:21] fail: No attached device supports one of required architectures x86_64
[21:40:21] dbug: No suitable devices found
[21:40:21] crit: Failed to find compatible device: x86_64
[21:40:21] dbug: Saving diagnostics data to '/datadisks/disk1/work/C3800A6B/w/B81A09C5/e/diagnostics.json'
XHarness exit code: 81 (DEVICE_NOT_FOUND)
+ exit 81
+ export _commandExitCode=81
+ /usr/bin/python3 -u /datadisks/disk1/work/C3800A6B/w/B81A09C5/u/xharness-event-processor.py
Reporting 1 events from diagnostics file `/datadisks/disk1/work/C3800A6B/w/B81A09C5/e/diagnostics.json`
Analyzing android/test@None (81)
    Encountered DEVICE_NOT_FOUND
    If this occurs repeatedly, please check for architectural mismatch, e.g. sending arm64_v8a APKs to an x86_64 / x86 only queue

Error Message

Fill the error message using step by step known issues guidance.

{
  "ErrorMessage": "crit: Failed to find compatible device: x86_64",
  "BuildRetry": false,
  "ExcludeConsoleLog": false
}

Known issue validation

Build: 🔎 https://dev.azure.com/dnceng-public/public/_build/results?buildId=953058
Error message validated: [crit: Failed to find compatible device: x86_64]
Result validation: ✅ Known issue matched with the provided build.
Validation performed at: 2/17/2025 9:53:47 AM UTC

Report

Build Definition Test Pull Request
997223 dotnet/runtime System.Xml.Linq.xNodeBuilder.Tests.WorkItemExecution
989940 dotnet/runtime Android.Device_Emulator.JIT.Test.WorkItemExecution #113791
989925 dotnet/runtime Android.Device_Emulator.JIT.Test.WorkItemExecution #113666
989822 dotnet/runtime System.Text.Json.Tests.WorkItemExecution
985585 dotnet/runtime Android.Device_Emulator.JIT.Test.WorkItemExecution #113646
980873 dotnet/runtime System.Xml.Linq.Streaming.Tests.WorkItemExecution
980764 dotnet/runtime System.Xml.Linq.xNodeBuilder.Tests.WorkItemExecution
978880 dotnet/runtime Interop.WorkItemExecution #113414
978095 dotnet/runtime System.Threading.Tasks.Tests.WorkItemExecution
977774 dotnet/runtime System.Xml.Schema.Extensions.Tests.WorkItemExecution
977684 dotnet/runtime Android.Device_Emulator.JIT.Test.WorkItemExecution
976956 dotnet/runtime System.Threading.Tasks.Extensions.Tests.WorkItemExecution
975882 dotnet/runtime Android.Device_Emulator.JIT.Test.WorkItemExecution #113376
974621 dotnet/runtime Android.Device_Emulator.JIT.Test.WorkItemExecution
973794 dotnet/runtime System.Xml.Linq.Streaming.Tests.WorkItemExecution
973047 dotnet/runtime Android.Device_Emulator.JIT.Test.WorkItemExecution #113041
973020 dotnet/runtime Android.Device_Emulator.JIT.Test.WorkItemExecution
972197 dotnet/runtime System.Text.RegularExpressions.Unit.Tests.WorkItemExecution
969858 dotnet/runtime Android.Device_Emulator.JIT.Test.WorkItemExecution #113169
969287 dotnet/runtime Android.Device_Emulator.JIT.Test.WorkItemExecution #100729
969284 dotnet/runtime Android.Device_Emulator.JIT.Test.WorkItemExecution #112937
969167 dotnet/runtime Android.Device_Emulator.JIT.Test.WorkItemExecution #112831
968826 dotnet/runtime Android.Device_Emulator.JIT.Test.WorkItemExecution #113027
968382 dotnet/runtime Android.Device_Emulator.PInvoke.Test.WorkItemExecution
967828 dotnet/runtime System.Threading.Tasks.Parallel.Tests.WorkItemExecution
967773 dotnet/runtime Android.Device_Emulator.JIT.Test.WorkItemExecution #112997
966866 dotnet/runtime Android.Device_Emulator.JIT.Test.WorkItemExecution #112824
966714 dotnet/runtime Android.Device_Emulator.JIT.Test.WorkItemExecution #112824
966609 dotnet/runtime Android.Device_Emulator.JIT.Test.WorkItemExecution
966484 dotnet/runtime System.Linq.Expressions.Tests.WorkItemExecution
966271 dotnet/runtime Android.Device_Emulator.JIT.Test.WorkItemExecution #113007

Summary

24-Hour Hit Count 7-Day Hit Count 1-Month Count
0 1 31
@ivanpovazan ivanpovazan added area-Infrastructure-mono Known Build Error Use this to report build issues in the .NET Helix tab labels Feb 17, 2025
@ivanpovazan ivanpovazan added this to the 10.0.0 milestone Feb 17, 2025
@ivanpovazan
Copy link
Member Author

@kotlarmilos there is a failure on #112547 indicating that for CoreCLR on Android we use a queue which has only x86 emulators, causing the test to fail as we target x64 specifically.

Do we have queues with x64 emulators only that we could use?

@kotlarmilos
Copy link
Member

I am not aware of a separate queue with x64-only emulators. This failure appears to be machine-specific. In successful runs, there are two emulators available, and one is selected. I assume one is x64 and the other is x86. Here is an example of a successful run: https://helixr1107v0xdcypoyl9e7f.blob.core.windows.net/dotnet-runtime-refs-pull-112625-merge-5c5e4bed3d564f6eb6/Android.Device_Emulator.JIT.Test.Attempt.2/1/console.7eba4a2f.log?helixlogtype=result

Alternatively, we could restart this specific machine.

/cc: @matouskozak

@matouskozak
Copy link
Member

matouskozak commented Feb 17, 2025

I am not aware of a separate queue with x64-only emulators. This failure appears to be machine-specific. In successful runs, there are two emulators available, and one is selected. I assume one is x64 and the other is x86. Here is an example of a successful run: https://helixr1107v0xdcypoyl9e7f.blob.core.windows.net/dotnet-runtime-refs-pull-112625-merge-5c5e4bed3d564f6eb6/Android.Device_Emulator.JIT.Test.Attempt.2/1/console.7eba4a2f.log?helixlogtype=result

I think queues with Android API <= 29 have both x64 and x86 simulators installed and it appears that XHarness is trying to connect to both even though we need just the x64 version. I think re-run would make the test pass.

Alternatively, we could restart this specific machine.

I think these are VMs but you can try asking in First Responders as it seems that this specific VM is on the top of the failures list (in the past 3 days).

Image

@ivanpovazan
Copy link
Member Author

ivanpovazan commented Feb 17, 2025

I think queues with Android API <= 29 have both x64 and x86 simulators installed

Yes, I think that is the problem, or better to say that on this particular failure there aren't two emulators installed:

[21:40:21] dbug: Found 1 possible devices
[21:40:21] dbug: Evaluating output line for device serial: emulator-5554          device product:sdk_phone_x86 model:Android_SDK_built_for_x86 device:generic_x86 transport_id:1
[21:40:21] dbug: Executing command: '/datadisks/disk1/work/C3800A6B/p/microsoft.dotnet.xharness.cli/10.0.0-prerelease.25103.1/runtimes/any/native/adb/linux/adb -s emulator-5554 shell getprop ro.product.cpu.abilist'
[21:40:21] fail: No attached device supports one of required architectures x86_64

Via xharness we:

I think this host machine just does not have a x64 emulator installed and that is why it fails. The question is, if it is the only host with this problem.

@steveisok
Copy link
Member

@ivanpovazan did anyone raise this with FR? They should be able to go into the machines and determine if it's all installed properly.

@ivanpovazan
Copy link
Member Author

I updated the ErrorMessage pattern to: fail: No attached device supports one of required architectures x86_64 as the previous one was picking up cases when there are no devices at all.

@ivanpovazan
Copy link
Member Author

The problematic machines have been deleted. I suggest monitoring this issue for some time, to see if we catch some other misbehaviors.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area-Infrastructure-mono Known Build Error Use this to report build issues in the .NET Helix tab os-android
Projects
None yet
Development

No branches or pull requests

4 participants