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

Fatal error in , line 0 # unreachable code #57556

Closed
mykola-mokhnach opened this issue Mar 20, 2025 · 3 comments
Closed

Fatal error in , line 0 # unreachable code #57556

mykola-mokhnach opened this issue Mar 20, 2025 · 3 comments

Comments

@mykola-mokhnach
Copy link

mykola-mokhnach commented Mar 20, 2025

Version

20.19.0

Platform

unbuntu-latest GH Actions runner

Subsystem

No response

What steps will reproduce the bug?

The error is observed randomly with different Node.js versions while running unit tests as part of the https://github.com/appium/appium CI integration. Tests are executed by mocha

How often does it reproduce? Is there a required condition?

It looks like the error is random. Exact steps to repro it are not known.

What is the expected behavior? Why is that the expected behavior?

No crash

What do you see instead?

#
# Fatal error in , line 0
# unreachable code
#
#
#
#FailureMessage Object: 0x7ffe51c05140
----- Native stack trace -----

 1: 0xd43461  [node]
 2: 0x218e601 V8_Fatal(char const*, ...) [node]
 3: 0x157b16c int v8::internal::Deserializer<v8::internal::Isolate>::ReadSingleBytecodeData<v8::internal::SlotAccessorForHeapObject>(unsigned char, v8::internal::SlotAccessorForHeapObject) [node]
 4: 0x157c311 v8::internal::Deserializer<v8::internal::Isolate>::ReadData(v8::internal::Handle<v8::internal::HeapObject>, int, int) [node]
 5: 0x157c5d8 v8::internal::Deserializer<v8::internal::Isolate>::ReadObject(v8::internal::SnapshotSpace) [node]
 6: 0x157b1db int v8::internal::Deserializer<v8::internal::Isolate>::ReadSingleBytecodeData<v8::internal::SlotAccessorForHeapObject>(unsigned char, v8::internal::SlotAccessorForHeapObject) [node]
 7: 0x157c311 v8::internal::Deserializer<v8::internal::Isolate>::ReadData(v8::internal::Handle<v8::internal::HeapObject>, int, int) [node]
 8: 0x157c5d8 v8::internal::Deserializer<v8::internal::Isolate>::ReadObject(v8::internal::SnapshotSpace) [node]
 9: 0x157b1db int v8::internal::Deserializer<v8::internal::Isolate>::ReadSingleBytecodeData<v8::internal::SlotAccessorForHeapObject>(unsigned char, v8::internal::SlotAccessorForHeapObject) [node]
10: 0x157c311 v8::internal::Deserializer<v8::internal::Isolate>::ReadData(v8::internal::Handle<v8::internal::HeapObject>, int, int) [node]
11: 0x157c5d8 v8::internal::Deserializer<v8::internal::Isolate>::ReadObject(v8::internal::SnapshotSpace) [node]
12: 0x157b1db int v8::internal::Deserializer<v8::internal::Isolate>::ReadSingleBytecodeData<v8::internal::SlotAccessorForHeapObject>(unsigned char, v8::internal::SlotAccessorForHeapObject) [node]
13: 0x157c311 v8::internal::Deserializer<v8::internal::Isolate>::ReadData(v8::internal::Handle<v8::internal::HeapObject>, int, int) [node]
14: 0x157c5d8 v8::internal::Deserializer<v8::internal::Isolate>::ReadObject(v8::internal::SnapshotSpace) [node]
15: 0x157b1db int v8::internal::Deserializer<v8::internal::Isolate>::ReadSingleBytecodeData<v8::internal::SlotAccessorForHeapObject>(unsigned char, v8::internal::SlotAccessorForHeapObject) [node]
16: 0x157c311 v8::internal::Deserializer<v8::internal::Isolate>::ReadData(v8::internal::Handle<v8::internal::HeapObject>, int, int) [node]
17: 0x157c5d8 v8::internal::Deserializer<v8::internal::Isolate>::ReadObject(v8::internal::SnapshotSpace) [node]
18: 0x157b1db int v8::internal::Deserializer<v8::internal::Isolate>::ReadSingleBytecodeData<v8::internal::SlotAccessorForHeapObject>(unsigned char, v8::internal::SlotAccessorForHeapObject) [node]
19: 0x157c311 v8::internal::Deserializer<v8::internal::Isolate>::ReadData(v8::internal::Handle<v8::internal::HeapObject>, int, int) [node]
20: 0x157c5d8 v8::internal::Deserializer<v8::internal::Isolate>::ReadObject(v8::internal::SnapshotSpace) [node]
21: 0x157b1db int v8::internal::Deserializer<v8::internal::Isolate>::ReadSingleBytecodeData<v8::internal::SlotAccessorForHeapObject>(unsigned char, v8::internal::SlotAccessorForHeapObject) [node]
22: 0x157c311 v8::internal::Deserializer<v8::internal::Isolate>::ReadData(v8::internal::Handle<v8::internal::HeapObject>, int, int) [node]
23: 0x157c5d8 v8::internal::Deserializer<v8::internal::Isolate>::ReadObject(v8::internal::SnapshotSpace) [node]
24: 0x157b1db int v8::internal::Deserializer<v8::internal::Isolate>::ReadSingleBytecodeData<v8::internal::SlotAccessorForHeapObject>(unsigned char, v8::internal::SlotAccessorForHeapObject) [node]
25: 0x157c311 v8::internal::Deserializer<v8::internal::Isolate>::ReadData(v8::internal::Handle<v8::internal::HeapObject>, int, int) [node]
26: 0x157c5d8 v8::internal::Deserializer<v8::internal::Isolate>::ReadObject(v8::internal::SnapshotSpace) [node]
27: 0x157b1db int v8::internal::Deserializer<v8::internal::Isolate>::ReadSingleBytecodeData<v8::internal::SlotAccessorForHeapObject>(unsigned char, v8::internal::SlotAccessorForHeapObject) [node]
28: 0x157c311 v8::internal::Deserializer<v8::internal::Isolate>::ReadData(v8::internal::Handle<v8::internal::HeapObject>, int, int) [node]
29: 0x157c5d8 v8::internal::Deserializer<v8::internal::Isolate>::ReadObject(v8::internal::SnapshotSpace) [node]
30: 0x157c8b9 int v8::internal::Deserializer<v8::internal::Isolate>::ReadSingleBytecodeData<v8::internal::SlotAccessorForHandle<v8::internal::Isolate> >(unsigned char, v8::internal::SlotAccessorForHandle<v8::internal::Isolate>) [node]
31: 0x157d1bf v8::internal::Deserializer<v8::internal::Isolate>::ReadObject() [node]
32: 0x1581d52 v8::internal::ObjectDeserializer::Deserialize() [node]
33: 0x1581f64 v8::internal::ObjectDeserializer::DeserializeSharedFunctionInfo(v8::internal::Isolate*, v8::internal::SerializedCodeData const*, v8::internal::Handle<v8::internal::String>) [node]
34: 0x1574ca2 v8::internal::CodeSerializer::Deserialize(v8::internal::Isolate*, v8::internal::AlignedCachedData*, v8::internal::Handle<v8::internal::String>, v8::ScriptOriginOptions, v8::internal::MaybeHandle<v8::internal::Script>) [node]
35: 0xfce38b  [node]
36: 0xfce66d v8::internal::Compiler::GetSharedFunctionInfoForScriptWithCachedData(v8::internal::Isolate*, v8::internal::Handle<v8::internal::String>, v8::internal::ScriptDetails const&, v8::internal::AlignedCachedData*, v8::ScriptCompiler::CompileOptions, v8::ScriptCompiler::NoCacheReason, v8::internal::NativesFlag) [node]
37: 0xf2e47c  [node]
38: 0xf2e588 v8::ScriptCompiler::CompileUnboundScript(v8::Isolate*, v8::ScriptCompiler::Source*, v8::ScriptCompiler::CompileOptions, v8::ScriptCompiler::NoCacheReason) [node]
39: 0xcb4741 node::contextify::ContextifyScript::New(v8::FunctionCallbackInfo<v8::Value> const&) [node]
40: 0xf6c56f v8::internal::FunctionCallbackArguments::Call(v8::internal::CallHandlerInfo) [node]
41: 0xf6cb25  [node]
42: 0xf6d243 v8::internal::Builtin_HandleApiCall(int, unsigned long*, v8::internal::Isolate*) [node]
43: 0x1977df6  [node]
Trace/breakpoint trap (core dumped)

Additional information

https://github.com/appium/appium/actions/runs/13968154479/job/39103261330?pr=21119#step:5:1487

@bnoordhuis
Copy link
Member

At first glance it looks like random memory or snapshot corruption: V8 encounters invalid bytecodes when unpacking a code snapshot.

Could be a node bug, could be something else, impossible to tell with the information at hand. Where do you get the node binary from?

Try starting node with node --trace_deserialization, maybe that prints something useful.

@bnoordhuis
Copy link
Member

No follow-up, closing.

@bnoordhuis bnoordhuis closed this as not planned Won't fix, can't repro, duplicate, stale Mar 25, 2025
@mykola-mokhnach
Copy link
Author

I've tried to reproduce it, but the issue is completely random. No luck so far.

If there is no way to address the issue based on the above stacktrace then 🤷

Thanks for checking anyway.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants