【问题标题】:QuestDB stopped working after update to 6.0.3 on homebrewQuestDB 在 homebrew 上更新到 6.0.3 后停止工作
【发布时间】:2021-07-18 21:20:50
【问题描述】:

使用自制软件将 QuestDB 更新到 6.0.3 后,我无法再启动它

$ questdb start
  ___                  _   ____  ____
 / _ \ _   _  ___  ___| |_|  _ \| __ )
| | | | | | |/ _ \/ __| __| | | |  _ \
| |_| | |_| |  __/\__ \ |_| |_| | |_) |
 \__\_\\__,_|\___||___/\__|____/|____/
                        www.questdb.io
JAVA: /usr/lib/jvm/java-11-openjdk-11.0.11.0.9-1.el7_9.x86_64//bin/java
QuestDB server 6.0.3
Copyright (C) 2014-2021, all rights reserved.
Exception in thread "main" java.lang.UnsatisfiedLinkError: /tmp/libquestdb16783513652948944750.so: /tmp/libquestdb16783513652948944750.so: failed to map segment from shared object: Operation not permitted
    at java.base/java.lang.ClassLoader$NativeLibrary.load0(Native Method)
    at java.base/java.lang.ClassLoader$NativeLibrary.load(ClassLoader.java:2442)
    at java.base/java.lang.ClassLoader$NativeLibrary.loadLibrary(ClassLoader.java:2498)
    at java.base/java.lang.ClassLoader.loadLibrary0(ClassLoader.java:2694)
    at java.base/java.lang.ClassLoader.loadLibrary(ClassLoader.java:2627)
    at java.base/java.lang.Runtime.load0(Runtime.java:768)
    at java.base/java.lang.System.load(System.java:1837)
    at io.questdb@6.0.3/io.questdb.std.Os.loadLib(Os.java:161)
    at io.questdb@6.0.3/io.questdb.std.Os.<clinit>(Os.java:179)
    at io.questdb@6.0.3/io.questdb.ServerMain.<init>(ServerMain.java:98)
    at io.questdb@6.0.3/io.questdb.ServerMain.main(ServerMain.java:259)

我在 CentOS Linux 上使用自制软件。有人见过这个问题吗?

【问题讨论】:

    标签: questdb


    【解决方案1】:

    问题是/tmp 目录的权限,即使错误没有说明任何内容。 QuestDB 是 Java,Java 使用硬编码的/tmp 作为 Linux 上的临时目录,并且不会尝试使用任何环境变量来覆盖它。 QuestDB 尝试加载本机二进制文件,而 java 使用 `/tmp' 解压并从中加载它。

    唯一的解决方案是将 '/tmp' 目录的 exec 权限添加到运行 QuestDB 的帐户。

    【讨论】:

      猜你喜欢
      • 2021-04-21
      • 1970-01-01
      • 1970-01-01
      • 2016-11-03
      • 1970-01-01
      • 1970-01-01
      • 2013-08-29
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多