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
node sometimes crashes with a V8 Fatal error after running for about 5 hours:
Fatal error in ../deps/v8/src/heap/mark-compact.cc, line 3088
Check failed: large_object->IsHeapObject().
Stack Trace:
#0 0x00a18460 in v8::base::OS::Abort ()
#1 0x00a15938 in V8_Fatal ()
#2 0x005e69b4 in v8::internal::MarkCompactCollector::IsSlotInBlackObject ()
#3 0x005e8324 in v8::internal::SlotsBuffer::RemoveInvalidSlots ()
#4 0x005e84b8 in v8::internal::MarkCompactCollector::ClearInvalidStoreAndSlotsBufferEntries ()
#5 0x005f4abc in v8::internal::MarkCompactCollector::CollectGarbage ()
#6 0x005b19a4 in v8::internal::Heap::MarkCompact ()
#7 0x005c89f0 in v8::internal::Heap::PerformGarbageCollection ()
I've made an attempt to debug this myself, it looks like the isHeapObject() check at line 3088 fails due to the value of r4 (0b0), expected r4 = (0b01). r4 contains the AND of r0 and 0b11, and r0 contains the return value of v8::internal::LargeObjectSpace::FindObject(Address a). Since r0 is also 0x0, this method apparently did not find the specified object in the large object space. When i take a look at the callstack, i can see this function was invoked through the ClearInvalidStoreAndSlotsBufferEntries call, which makes me wonder if the object should exist at all in the LargeObjectSpace.
Any help debugging the cause of this issue is appreciated. A coredump and remote debugging tools are available if required.
node sometimes crashes with a V8 Fatal error after running for about 5 hours:
Fatal error in ../deps/v8/src/heap/mark-compact.cc, line 3088
Check failed: large_object->IsHeapObject().
Stack Trace:
Registers at #2:
I've made an attempt to debug this myself, it looks like the isHeapObject() check at line 3088 fails due to the value of r4 (0b0), expected r4 = (0b01). r4 contains the AND of r0 and 0b11, and r0 contains the return value of v8::internal::LargeObjectSpace::FindObject(Address a). Since r0 is also 0x0, this method apparently did not find the specified object in the large object space. When i take a look at the callstack, i can see this function was invoked through the ClearInvalidStoreAndSlotsBufferEntries call, which makes me wonder if the object should exist at all in the LargeObjectSpace.
Any help debugging the cause of this issue is appreciated. A coredump and remote debugging tools are available if required.