-
Notifications
You must be signed in to change notification settings - Fork 2.6k
Custom substrate node does not start in a VM without --wasm-execution interpreted-i-know-what-i-do
#12073
Comments
Good to know that it can be reproduced this way, thanks! The issue you linked was about our code stripping the wasmtime error details. If you used a fresh enough version of Substrate with that fix, you should be able to see more information. I would be interested to see what wasmtime returns for this error. Is it there, and is there any chance you can post it here? |
For the record, the problem with qemu should be "solved": #11722 |
Hmm, I am a bit confused: how would it fix the problem at hand? From what I see, this problem is about wasmtime bailing early because it finds the cpuid is not compatible with wasmtime's requirements somehow. The problem in #11722 is a problem that only shows up at runtime and leads to unexpected results. |
Yeah good point! I should have thought more than 5 seconds about this :P So, we can just ignore what I said. Back to this. Weird that it fails with Qemu. I'm using Qemu also on my laptop and it works. |
Yeah,
However, Substrate does not use SIMD, and disabling it via wasmtime's config makes it run just fine under qemu. I cannot run Substrate itself, though, because of a SIGILL coming from qemu itself. so IOW: works for me. Let's hope that logs by @gdethier shed some light on this one. |
@pepyakin I guess that if I upgrade dependencies to |
@pepyakin After upgrade to without --wasm-execution interpreted-i-know-what-i-do
with --wasm-execution interpreted-i-know-what-i-do
|
Looks like it could be fixed by this: bytecodealliance/wasmtime#4231? |
Someone pointed me to this issue: AstarNetwork/Astar#727 Long story short, the reporter has the same error message ( In our case however, we do not have access to this (the VM is provided by our hosting provider). |
@gdethier when I give you a Substrate branch, can you try this? |
Sure! |
|
Please report back @gdethier when you have tested it! |
@bkchr The code in your branch fixes the issue! |
Is there an existing issue?
Experiencing problems? Have you tried our Stack Exchange first?
Description of bug
After an upgrade of the dependencies of our node implementation from substrate
polkadot-v0.9.25
topolkadot-v0.9.26
, our nodes do not start up on some machines. The following error message is shown:In this issue, it is mentioned that the problem could come from virtualization, which is indeed the case here (we are using a fully virtualized test infrastructure). Running the same executable on a bare metal machine does not produce the problem which enforces the hypothesis.
A workaround is to pass the option
--wasm-execution interpreted-i-know-what-i-do
, then the nodes start up as usual and everything works as expected.The issue above suggests that the problem is coming from
wasmtime
which has been upgraded to 0.38.x end of June. Maybe that another upgrade would help?Steps to reproduce
The text was updated successfully, but these errors were encountered: