[Pkg-mongodb-maintainers] Bug#876755: mongodb-server: segfault on spidermonkey GC under load
Apollon Oikonomopoulos
apoikos at debian.org
Mon Sep 25 14:45:04 UTC 2017
Package: mongodb-server
Version: 1:3.2.11-2
Severity: important
MongoDB 3.2.11-2 on Stretch has crashed repeatedly a couple of times on
big map-reduce operations with the following backtrace:
_ZN5mongo15printStackTraceERSo at src/mongo/util/stacktrace_posix.cpp:172
printSignalAndBacktrace at src/mongo/util/signal_handlers_synchronous.cpp:182
abruptQuitWithAddrSignal at src/mongo/util/signal_handlers_synchronous.cpp:277
?? at ??:0
ShouldMoveToTenured at src/third_party/mozjs-38/extract/js/src/gc/Nursery.cpp:749
(inlined by) _ZN2js7Nursery15MinorGCCallbackEP8JSTracerPPv13JSGCTraceKind at src/third_party/mozjs-38/extract/js/src/gc/Nursery.cpp:759
_ZN8JSTracer19clearTracingDetailsEv at src/third_party/mozjs-38/include/js/TracingAPI.h:129
(inlined by) MarkInternal<js::NativeObject> at src/third_party/mozjs-38/extract/js/src/gc/Marking.cpp:294
_ZNK8JSObject8getClassEv at src/third_party/mozjs-38/extract/js/src/jsobj.h:134
(inlined by) _ZNK8JSObject2isI10JSFunctionEEbv at src/third_party/mozjs-38/extract/js/src/jsobj.h:561
(inlined by) _ZN2js8frontend9ObjectBox13isFunctionBoxEv at src/third_party/mozjs-38/extract/js/src/frontend/ParseNode.h:1535
(inlined by) _ZN2js8frontend9ObjectBox5traceEP8JSTracer at src/third_party/mozjs-38/extract/js/src/frontend/ParseNode.cpp:1101
_ZN2JS12AutoGCRooter5traceEP8JSTracer at src/third_party/mozjs-38/extract/js/src/gc/RootMarking.cpp:143
_ZN2JS12AutoGCRooter17traceAllInContextI9JSContextEEvPT_P8JSTracer at src/third_party/mozjs-38/extract/js/src/jspubtd.h:230
(inlined by) _ZN2JS12AutoGCRooter8traceAllEP8JSTracer at src/third_party/mozjs-38/extract/js/src/gc/RootMarking.cpp:307
_ZN2js2gc9GCRuntime11markRuntimeEP8JSTracerNS1_18TraceOrMarkRuntimeENS1_21TraceRootsOrUsedSavedE at src/third_party/mozjs-38/extract/js/src/gc/RootMarking.cpp:441
_ZN2js7Nursery7collectEP9JSRuntimeN2JS8gcreason6ReasonEPNS_6VectorIPNS_11ObjectGroupELm0ENS_17SystemAllocPolicyEEE at src/third_party/mozjs-38/extract/js/src/gc/Nursery.cpp:836
_ZN2js2gc9GCRuntime7minorGCEP9JSContextN2JS8gcreason6ReasonE at src/third_party/mozjs-38/extract/js/src/jsgc.cpp:6412
_ZN9JSContext7minorGCEN2JS8gcreason6ReasonE at src/third_party/mozjs-38/extract/js/src/jscntxt.h:418
(inlined by) _ZN2js2gc25AllocateObjectForCacheHitILNS_7AllowGCE1EEEP8JSObjectP9JSContextNS0_9AllocKindENS0_11InitialHeapEPKNS_5ClassE at src/third_party/mozjs-38/extract/js/src/jsgcinlines.h:594
(inlined by) _ZN2js14NewObjectCache16newObjectFromHitEP9JSContextiNS_2gc11InitialHeapE at src/third_party/mozjs-38/extract/js/src/vm/Runtime-inl.h:73
_ZN2js29NewObjectWithClassProtoCommonEPNS_16ExclusiveContextEPKNS_5ClassEN2JS6HandleIP8JSObjectEES9_NS_2gc9AllocKindENS_13NewObjectKindE at src/third_party/mozjs-38/extract/js/src/jsobj.cpp:1423
_ZN2js23NewBuiltinClassInstanceINS_11PlainObjectEEEPT_PNS_16ExclusiveContextENS_13NewObjectKindE at src/third_party/mozjs-38/extract/js/src/jsobjinlines.h:609
(inlined by) newNode at src/third_party/mozjs-38/extract/js/src/jsreflect.cpp:708
newNode at src/third_party/mozjs-38/extract/js/src/jsreflect.cpp:383
expressionStatement at src/third_party/mozjs-38/extract/js/src/jsreflect.cpp:834
(inlined by) statement at src/third_party/mozjs-38/extract/js/src/jsreflect.cpp:2393
statements at src/third_party/mozjs-38/extract/js/src/jsreflect.cpp:1961
program at src/third_party/mozjs-38/extract/js/src/jsreflect.cpp:2003
(inlined by) reflect_parse at src/third_party/mozjs-38/extract/js/src/jsreflect.cpp:3554
>From the backtrace it appears to be mozjs-GC-related and the underlying
cause might be the same as for #871906. Investigation sofar has revealed
that it might be related to optimizations enabled in GCC 6 and, as
indicated by
https://trac.wildfiregames.com/ticket/4053
and
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=70526
I'm filing a separate bug than #871906, as this case is not easily
reproducible and will take some time to figure out whether it's been
fixed or not, and the fix will have to be backported to Stretch as well.
More information about the Pkg-mongodb-maintainers
mailing list