崩溃的背景:
我们正在使用在Mac OS 10.12上的Ubuntu 16.04 Docker容器中运行的ROS v1.8.3,但如果我们使用Mac命令行版本,也会发生崩溃。作为我们迁移到ROS 2的战略的一部分,我们借此机会重构数据库,以删除一些效率不高的旧遗留结构。
我们正在将更新的数据写回主机服务器,因此它具有干净的结构和可忽略的历史记录,以减少文件大小和同步时间。旧文件变大了(转换前大于3GB,之后大约234mb!),然后我们期望使用自动转换使用ROS v2运行我们软件的新版本。
我们的方法是:
Realm.create(_:value:update:)
,因为它似乎带来了它的历史,而是我们使用代码生成一个“干净”的对象。这工作正常,领域在浏览器2.1.12下打开没有问题。当我们尝试打开这些新领域时,这两个简单的领域会在没有问题的情况下打开,但是如果在浏览器或我们的应用程序中尝试打开它,则更复杂的领域会导致以下崩溃。
realm | read configuration from /etc/realm/configuration.yml.
realm | FATAL ERROR: v8::ToLocalChecked Empty MaybeLocal.
realm | 1: node::Abort() [/usr/lib/realm-object-server-developer/node/bin/node]
realm | 2: 0x109bf8c [/usr/lib/realm-object-server-developer/node/bin/node]
realm | 3: v8::Utils::ReportApiFailure(char const*, char const*) [/usr/lib/realm-object-server-developer/node/bin/node]
realm | 4: RealmLoggerQueue::log_uv_callback() [/usr/lib/nodejs/realm-object-server-developer/node_modules/realm-sync-server/compiled/linux-x64/node-v48/realm-sync-server.node]
realm | 5: 0x131d53b [/usr/lib/realm-object-server-developer/node/bin/node]
realm | 6: 0x131d613 [/usr/lib/realm-object-server-developer/node/bin/node]
realm | 7: 0x132dda8 [/usr/lib/realm-object-server-developer/node/bin/node]
realm | 8: uv_run [/usr/lib/realm-object-server-developer/node/bin/node]
realm | 9: node::Start(int, char**) [/usr/lib/realm-object-server-developer/node/bin/node]
realm | 10: __libc_start_main [/lib/x86_64-linux-gnu/libc.so.6]
realm | 11: 0x7b8dad [/usr/lib/realm-object-server-developer/node/bin/node]
realm | Aborted
realm exited with code 134
关于什么可能导致这些崩溃的任何想法?