什么会导致ROS因此错误而崩溃? “领域退出代码134”

时间:2017-10-30 01:09:04

标签: swift realm realm-mobile-platform

崩溃的背景:

我们正在使用在Mac OS 10.12上的Ubuntu 16.04 Docker容器中运行的ROS v1.8.3,但如果我们使用Mac命令行版本,也会发生崩溃。作为我们迁移到ROS 2的战略的一部分,我们借此机会重构数据库,以删除一些效率不高的旧遗留结构。

我们正在将更新的数据写回主机服务器,因此它具有干净的结构和可忽略的历史记录,以减少文件大小和同步时间。旧文件变大了(转换前大于3GB,之后大约234mb!),然后我们期望使用自动转换使用ROS v2运行我们软件的新版本。

我们的方法是:

  1. 使用管理员帐户,我们提取用户领域的现有内容(有三个要提取的领域)并将它们复制到本地“临时”文件 - 基本上是服务器领域的本地副本。我们没有使用Realm.create(_:value:update:),因为它似乎带来了它的历史,而是我们使用代码生成一个“干净”的对象。这工作正常,领域在浏览器2.1.12下打开没有问题。
  2. 然后,我们使用标准方法将本地版本迁移到我们的新结构,使用我们用新模式编写的管理应用程序。迁移后领域在浏览器2.1.12中打开。
  3. 然后,我们在原始v1.8.3服务器上使用迁移的本地域的内容填充新Realm。用户的帐户用于创建空的新领域,因此用户是该领域的所有者。
  4. 当我们尝试打开这些新领域时,这两个简单的领域会在没有问题的情况下打开,但是如果在浏览器或我们的应用程序中尝试打开它,则更复杂的领域会导致以下崩溃。

    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
    
  5. 关于什么可能导致这些崩溃的任何想法?

0 个答案:

没有答案