-
Type: Bug
-
Resolution: Done
-
Priority: Major - P3
-
None
-
Affects Version/s: None
-
Component/s: JavaScript
-
None
-
Major Change
-
ALL
-
Platform 6 07/17/15, Platform 8 08/28/15
This applies when we have the js-engine build option:
scons ... --js-engine=v8-3.25 ... mongod mongo buildscripts/smoke.py --mode=files jstests/slow1/memory.js
This is because as of V8 3.23, V8 will abort when it runs out of memory. Previously, it was possible to call v8::V8::IgnoreOutOfMemory() and terminate the embedded V8 instance when control returns to mongod.
Logs from running under OS X (including stack trace):
2014-04-30T11:18:19.796-0400 [conn3] command test.$cmd command: eval { $eval: function (col) { for (var i = 0; i < 100; ++i) {db[col + "_" + i].find();} }, args: [ "memoryTest9984" ] } keyUpdates:0 numYields:0 locks(micros) W:140395 reslen:45 140ms 2014-04-30T11:18:20.248-0400 [conn3] command test.$cmd command: eval { $eval: function (col) { for (var i = 0; i < 100; ++i) {db[col + "_" + i].find();} }, args: [ "memoryTest9996" ] } keyUpdates:0 numYields:0 locks(micros) W:136981 reslen:45 137ms 2014-04-30T11:18:20.339-0400 [FileAllocator] allocating new datafile /data/db/sconsTests/test.ns, filling with zeroes... 2014-04-30T11:18:20.361-0400 [FileAllocator] done allocating datafile /data/db/sconsTests/test.ns, size: 16MB, took 0.021 secs 2014-04-30T11:18:20.411-0400 [FileAllocator] allocating new datafile /data/db/sconsTests/test.0, filling with zeroes... 2014-04-30T11:18:20.551-0400 [FileAllocator] done allocating datafile /data/db/sconsTests/test.0, size: 64MB, took 0.139 secs 2014-04-30T11:18:20.573-0400 [conn3] datafileheader::init initializing /data/db/sconsTests/test.0 n:0 2014-04-30T11:18:20.595-0400 [conn3] build index on: test.system.js properties: { v: 1, key: { _id: 1 }, name: "_id_", ns: "test.system.js" } 2014-04-30T11:18:20.596-0400 [conn3] added index to empty collection 2014-04-30T11:18:20.596-0400 [conn3] update test.system.js query: { _id: "f1" } update: { _id: "f1", value: function (n) { a = []; b = []; c = []; for (i = 0; i <... } nscanned:0 nscannedObjects:0 nMatched:1 nModified:0 upsert:1 keyUpdates:0 numYields:0 locks(micros) w:257375 257ms # # Fatal error in CALL_AND_RETRY_LAST # Allocation failed - process out of memory # 2014-04-30T11:18:26.390-0400 [conn3] SEVERE: Invalid operation at address: 0x100e1b5d5 2014-04-30T11:18:26.400-0400 [conn3] SEVERE: Got signal: 4 (Illegal instruction: 4). mongo::printStackTrace(std::ostream&) (in mongod) (stacktrace.cpp:306) mongo::(anonymous namespace)::abruptQuitWithAddrSignal(int, __siginfo*, void*) (in mongod) (ios_base.h:162) /usr/lib/system/libsystem_platform.dylib(_sigtramp+0x1a) [0x7fff8f7ce5aa] ??? [0x726f727265206c61] v8::Utils::ReportApiFailure(char const*, char const*) (in mongod) (isolate.h:1015) v8::internal::V8::FatalProcessOutOfMemory(char const*, bool) (in mongod) (api.cc:190) v8::internal::Factory::NewFixedDoubleArray(int, v8::internal::PretenureFlag) (in mongod) (factory.cc:83) v8::internal::Builtin_ArrayPush(int, v8::internal::Object**, v8::internal::Isolate*) (in mongod) (builtins.cc:469) 0xdd7055060a2
- is depended on by
-
SERVER-13809 switch default JavaScript engine from V8 3.12 to 3.25
- Closed
- is related to
-
SERVER-13686 support V8 3.25 JavaScript scripting engine
- Closed
-
SERVER-463 map/reduce should use all CPU cores
- Closed
- related to
-
SERVER-17068 3.0.0-rc6 cannot build with the 3.25 JS engine
- Closed
-
SERVER-13809 switch default JavaScript engine from V8 3.12 to 3.25
- Closed
- links to