ROS 在 macOS X Sierra 上崩溃并出现 JavaScript 堆内存不足错误

ROS Crashing on macOS X Sierra with JavaScript heap out of memory error

我是 运行 Realm Object Server v1.8.3 的开发者版,作为 mac 应用程序。我使用起始对象-server.command 启动它。 运行 好几天了,一切都很好,但 ROS 现在在启动后几秒钟内就崩溃了。

显然问题出在 JavaScript 元素上,但我不确定是什么导致了这个位置,也不知道如何最好地从这个错误中恢复。我没有创建任何附加功能,所以没有添加任何 NODE.js 问题:它只是具有六个领域的 ROS。

我从终端会话中得到的堆栈转储如下。任何关于恢复步骤以及如何防止它再次发生的想法都将不胜感激。

最后几次 GC

607335 ms: Mark-sweep 1352.1 (1404.9) -> 1351.7 (1402.9) MB, 17.4 / 0.0 ms [allocation failure] [GC in old space requested]. 607361 ms: Mark-sweep 1351.7 (1402.9) -> 1351.7 (1367.9) MB, 25.3 / 0.0 ms [last resort gc]. 607376 ms: Mark-sweep 1351.7 (1367.9) -> 1351.6 (1367.9) MB, 15.3 / 0.0 ms [last resort gc].

JS 堆栈跟踪

Security context: 0x3eb4332cfb39 1: DoJoin(aka DoJoin) [native array.js:~129] [pc=0x1160420f24ad] (this=0x3eb433204381 ,w=0x129875f3a8b1 ,x=3,N=0x3eb4332043c1 ,J=0x3828ea25c11 ,I=0x3eb4332b46c9 ) 2: Join(aka Join) [native array.js:180] [pc=0x116042067e32] (this=0x3eb433204381 ,w=0x129875f3a8b1

FATAL ERROR: CALL_AND_RETRY_LAST Allocation failed - JavaScript heap out of memory 1: node::Abort() [/Applications/realm-mobile-platform/realm-object-server/.prefix/bin/node] 2: node::FatalException(v8::Isolate*, v8::Local, v8::Local) [/Applications/realm-mobile-platform/realm-object-server/.prefix/bin/node] 3: v8::internal::V8::FatalProcessOutOfMemory(char const*, bool) [/Applications/realm-mobile-platform/realm-object-server/.prefix/bin/node] 4: v8::internal::Factory::NewRawTwoByteString(int, v8::internal::PretenureFlag) [/Applications/realm-mobile-platform/realm-object-server/.prefix/bin/node] 5: v8::internal::Runtime_StringBuilderJoin(int, v8::internal::Object**, v8::internal::Isolate*) [/Applications/realm-mobile-platform/realm-object-server/.prefix/bin/node] 6: 0x1160411092a7 /Applications/realm-mobile-platform/start-object-server.command: line 94: 39828 Abort trap: 6 node "$package/node_modules/.bin/realm-object-server" -c configuration.yml (wd: /Applications/realm-mobile-platform/realm-object-server/object-server)

您的 ROS 实例 运行 内存不足。要找出它 运行 内存不足的原因,查看服务器的日志文件会很有帮助。你能转吗 在日志记录的调试级别上。

如果您想将日志文件发送到 Realm,最好在 https://github.com/realm/realm-mobile-platform/issues 上为此打开一个问题。