Skip to content

Conversation

@pavelsavara
Copy link
Member

@pavelsavara pavelsavara commented Apr 27, 2023

Makes detection of dotnet/runtime#85675 easier

also fixes #920

@pavelsavara pavelsavara added the wasm WASM area label Apr 27, 2023
@pavelsavara pavelsavara requested review from lewing, maraf and radical April 27, 2023 17:33
@pavelsavara pavelsavara self-assigned this Apr 27, 2023
Copy link
Member

@lewing lewing left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🤞

@lewing
Copy link
Member

lewing commented Apr 27, 2023

Let's hope this doesn't set everything on fire

@pavelsavara
Copy link
Member Author

I hope that we would see the fire on the dependency update PR first

@premun
Copy link
Member

premun commented Apr 28, 2023

It might be beneficial to invest into updating the E2E tests for WASM in this repo so that you don't need to postpone testing for runtime dependency PRs: #920

I can merge this PR for you through the timeouts in the Apple queues but the WASM leg is failing and that one should probably go green first.

@pavelsavara
Copy link
Member Author

pavelsavara commented May 2, 2023

can't cd to /datadisks/disk1/work/C4620A42/w/A473091C/u/Common.Tests

023-05-02T09:50:49.389Z	INFO   	executor(290)	_download_and_unpack	Downloading https://helixde107v0xdeko0k025g8.blob.core.windows.net/helix-job-cf46e2a8-2680-44ac-a035-a56dcb2371fa35cd0aa88d5473289/Common.Tests.zip to /datadisks/disk1/work/C4620A42/w/A473091C/Common.Tests.zip
2023-05-02T09:50:49.390Z	INFO   	executor(429)	_download_to	requesting https://helixde107v0xdeko0k025g8.blob.core.windows.net/helix-job-cf46e2a8-2680-44ac-a035-a56dcb2371fa35cd0aa88d5473289/Common.Tests.zip
2023-05-02T09:50:49.469Z	INFO   	saferequests(87)	request_with_retry	Response complete with status code '200'
2023-05-02T09:50:49.469Z	INFO   	executor(435)	_download_request	response received. Status: 200 Elapsed time: 0:00:00.078574
2023-05-02T09:50:49.567Z	INFO   	executor(621)	_get_unpacked_file_paths	Reading archive file:/datadisks/disk1/work/C4620A42/w/A473091C/Common.Tests.zip.partial
2023-05-02T09:50:49.569Z	INFO   	executor(518)	_unpack_zipfile	Unpacking /datadisks/disk1/work/C4620A42/w/A473091C/Common.Tests.zip.partial
2023-05-02T09:50:49.729Z	INFO   	executor(564)	_is_valid_archive	Validating unpacked payload: 
2023-05-02T09:50:49.733Z	INFO   	event(51)	send	Sending event type FileDownload
2023-05-02T09:50:49.851Z	INFO   	saferequests(87)	request_with_retry	Response complete with status code '201'
2023-05-02T09:50:49.852Z	INFO   	helixio(27)	copy_tree_to	Copying '/datadisks/disk1/work/C4620A42/w/A473091C/u/run-v8.sh' to '/datadisks/disk1/work/C4620A42/w/A473091C/e/run-v8.sh'
2023-05-02T09:50:49.853Z	INFO   	helixio(27)	copy_tree_to	Copying '/datadisks/disk1/work/C4620A42/w/A473091C/u/dotnet.js' to '/datadisks/disk1/work/C4620A42/w/A473091C/e/dotnet.js'
2023-05-02T09:50:49.853Z	INFO   	helixio(27)	copy_tree_to	Copying '/datadisks/disk1/work/C4620A42/w/A473091C/u/mono-config.json' to '/datadisks/disk1/work/C4620A42/w/A473091C/e/mono-config.json'
2023-05-02T09:50:49.854Z	INFO   	helixio(27)	copy_tree_to	Copying '/datadisks/disk1/work/C4620A42/w/A473091C/u/dotnet.js.symbols' to '/datadisks/disk1/work/C4620A42/w/A473091C/e/dotnet.js.symbols'
2023-05-02T09:50:49.854Z	INFO   	helixio(27)	copy_tree_to	Copying '/datadisks/disk1/work/C4620A42/w/A473091C/u/package.json' to '/datadisks/disk1/work/C4620A42/w/A473091C/e/package.json'
2023-05-02T09:50:49.854Z	INFO   	helixio(27)	copy_tree_to	Copying '/datadisks/disk1/work/C4620A42/w/A473091C/u/WasmTestRunner.runtimeconfig.json' to '/datadisks/disk1/work/C4620A42/w/A473091C/e/WasmTestRunner.runtimeconfig.json'
2023-05-02T09:50:49.855Z	INFO   	helixio(27)	copy_tree_to	Copying '/datadisks/disk1/work/C4620A42/w/A473091C/u/RunTests.sh' to '/datadisks/disk1/work/C4620A42/w/A473091C/e/RunTests.sh'
2023-05-02T09:50:49.855Z	INFO   	helixio(27)	copy_tree_to	Copying '/datadisks/disk1/work/C4620A42/w/A473091C/u/wasm-symbol-patterns.txt' to '/datadisks/disk1/work/C4620A42/w/A473091C/e/wasm-symbol-patterns.txt'
2023-05-02T09:50:49.855Z	INFO   	helixio(27)	copy_tree_to	Copying '/datadisks/disk1/work/C4620A42/w/A473091C/u/index.html' to '/datadisks/disk1/work/C4620A42/w/A473091C/e/index.html'
2023-05-02T09:50:49.855Z	INFO   	helixio(27)	copy_tree_to	Copying '/datadisks/disk1/work/C4620A42/w/A473091C/u/icudt_CJK.dat' to '/datadisks/disk1/work/C4620A42/w/A473091C/e/icudt_CJK.dat'
2023-05-02T09:50:49.856Z	INFO   	helixio(27)	copy_tree_to	Copying '/datadisks/disk1/work/C4620A42/w/A473091C/u/.stamp' to '/datadisks/disk1/work/C4620A42/w/A473091C/e/.stamp'
2023-05-02T09:50:49.856Z	INFO   	helixio(27)	copy_tree_to	Copying '/datadisks/disk1/work/C4620A42/w/A473091C/u/test-main.js' to '/datadisks/disk1/work/C4620A42/w/A473091C/e/test-main.js'

Copying '/datadisks/disk1/work/C4620A42/w/A473091C/u/test-main.js'
to '/datadisks/disk1/work/C4620A42/w/A473091C/e/test-main.js'

Somehow, there is no expected subfolder Common.Tests

@premun

@premun
Copy link
Member

premun commented May 2, 2023

@pavelsavara I didn't check your payload really, only noticed the mismatch in the name of the workitem so I fixed that. I can put a root-level directory in the zip that is uploaded.

@pavelsavara
Copy link
Member Author

pavelsavara commented May 2, 2023

info: V8 version: 8.5.183 this is very very old version of V8, could we upgrade ?

Ideally to latest, I have 11.5.3

@radical
Copy link
Member

radical commented May 2, 2023

@pavelsavara is there a runtime issue that has details of what is being fixed here?

@pavelsavara
Copy link
Member Author

@pavelsavara is there a runtime issue that has details of what is being fixed here?

I created new issue for it.
dotnet/runtime#85675
This PR makes detection possible.

I hope I have draft of fix on runtime repo dotnet/runtime#85542

@premun
Copy link
Member

premun commented May 3, 2023

info: V8 version: 8.5.183 this is very very old version of V8, could we upgrade ?

Ideally to latest, I have 11.5.3

@pavelsavara I guess we can update that, not sure if anyone else depends on that. I logged dotnet/arcade#13399 and ETA would be next Wednesday.

@premun
Copy link
Member

premun commented May 3, 2023

@pavelsavara would it better to run this in one of your docker containers? I understand that's how you do it in runtime, right?

@pavelsavara
Copy link
Member Author

@pavelsavara would it better to run this in one of your docker containers? I understand that's how you do it in runtime, right?

eventually yes, but I don't want to invest my time into it right now. Is that easy to switch ?

I think this one would be fine (Ubuntu.1804.Amd64)[email protected]/dotnet-buildtools/prereqs:ubuntu-18.04-helix-webassembly

cc @radekdoulik

@premun
Copy link
Member

premun commented May 3, 2023

@pavelsavara I think it might be easy enough by setting the HelixTargetQueue in WASM.Helix.SDK.Tests.proj

@radekdoulik
Copy link
Member

using this helix image should be fine. we use it for most (if not all) helix runs in the runtime repo

git grep helix-webassembly
eng/pipelines/coreclr/templates/helix-queues-setup.yml:      - (Ubuntu.1804.Amd64)[email protected]/dotnet-buildtools/prereqs:ubuntu-18.04-helix-webassembly
eng/pipelines/libraries/helix-queues-setup.yml:      - (Ubuntu.1804.Amd64)[email protected]/dotnet-buildtools/prereqs:ubuntu-18.04-helix-webassembly
eng/pipelines/libraries/helix-queues-setup.yml:      - (Ubuntu.1804.Amd64)[email protected]/dotnet-buildtools/prereqs:ubuntu-18.04-helix-webassembly
eng/pipelines/libraries/helix-queues-setup.yml:      - (Windows.Amd64.Server2022.Open)[email protected]/dotnet-buildtools/prereqs:windowsservercore-ltsc2022-helix-webassembly-net8

it should have the latest V8 https://github.com/dotnet/dotnet-buildtools-prereqs-docker/blob/main/src/ubuntu/18.04/helix/webassembly/Dockerfile#L45-L48

@radekdoulik
Copy link
Member

WASM.Helix.SDK.Tests.proj currently uses ubuntu 20.04, so you probably want to use ubuntu-20.04-helix-wasm-amd64 docker image

Copy link
Member

@radekdoulik radekdoulik left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM besides the old v8 issue

@pavelsavara
Copy link
Member Author

I see <HelixTargetQueue Include="ubuntu.2004.amd64.open"/> in WASM.Helix.SDK.Tests.proj but in yaml we have name with some namespaces and prefix in the bracket. I don't know what they are. I will go with naive approach.

@premun
Copy link
Member

premun commented May 4, 2023

@lewing lewing requested a review from kg May 8, 2023 17:30
@akoeplinger
Copy link
Member

Should we get this in?

@pavelsavara
Copy link
Member Author

Should we get this in?

thanks for fixing it! I think we should merge it. @radical ?

@akoeplinger akoeplinger merged commit 8967e57 into dotnet:main Dec 15, 2023
@ViktorHofer
Copy link
Member

I'm seeing the introduce log in dotnet/runtime#96094:

https://helixre107v0xdcypoyl9e7f.blob.core.windows.net/dotnet-runtime-refs-pull-96094-merge-0a54c16d6a9f4828a8/normal-System.Runtime.Tests/1/console.0ee49343.log?helixlogtype=result

[14:53:17] info: Waiting to flush log messages with a timeout of 120 secs ..
[14:53:17] info: Received expected 17558878 of /root/helix/work/workitem/uploads/xharness-output/testResults.xml
[14:53:17] info: Finished writing 17558878 bytes of RESULTXML
[14:53:17] info: Xml file was written to the provided writer.
[14:53:17] info: Tests run: 63620 Passed: 63518 Inconclusive: 0 Failed: 0 Ignored: 0 Skipped: 102
[14:53:17] info: test-main.js exiting WasmTestRunner.dll System.Runtime.Tests.dll with result 0
[14:53:17] info: console.info: MONO_WASM: forceDisposeProxies done: 0 imports, 0 exports, 0 GCHandles, 0 JSHandles.
[14:53:17] fail: Application exited without sending a wasm exit message.
XHarness exit code: 82 (RETURN_CODE_NOT_SET)
/root/helix/work/workitem/e /root/helix/work/workitem/e
----- end Mon Dec 18 02:53:17 PM UTC 2023 ----- exit code 82 ----------------------------------------------------------
XHarness artifacts: /root/helix/work/workitem/uploads/xharness-output

@pavelsavara
Copy link
Member Author

This is the same test on runtime main Log

It also didn't log exit. And this was reason why we wanted this detection.

But we perhaps need to not set RETURN_CODE_NOT_SET until we resolve existing problems on runtime repo.

I will create another PR to make this softer.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

wasm WASM area

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[wasm] CI running very old tests from dotnet/runtime

8 participants