Linux x86_64 上的 Cassandra 启动错误 1.2.6 [英] Cassandra Startup Error 1.2.6 on Linux x86_64

查看:17
本文介绍了Linux x86_64 上的 Cassandra 启动错误 1.2.6的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

尝试在 linux 上从最新的稳定版本安装 cassandra - http://cassandra.apache.org/download/ - 1.2.6

Trying to install cassandra on linux from latest stable release - http://cassandra.apache.org/download/ - 1.2.6

我已修改 cassndra.yaml 以指向自定义目录而不是/var,因为我没有对/var 的写访问权限

I have modified the cassndra.yaml to point to a custom directory instead of /var since I do not have write access on /var

我在启动时看到此错误.由于该版本似乎相对较新,因此无法在 google 上找到任何答案.只是把它贴在这里以防万一我这边犯了一个愚蠢的错误.

I am seeing this error on startup. Not able to find any answers on google yet since the release seems relatively new. Just posting it here in case its a silly mistake on my side.

相同的分发文件在我的 macos x86_64 机器上运行良好.

Same distribution file worked fine on my macos x86_64 machine.

 INFO 19:24:35,513 Not using multi-threaded compaction
java.lang.reflect.InvocationTargetException
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at org.xerial.snappy.SnappyLoader.loadNativeLibrary(SnappyLoader.java:322)
    at org.xerial.snappy.SnappyLoader.load(SnappyLoader.java:229)
    at org.xerial.snappy.Snappy.<clinit>(Snappy.java:48)
    at org.apache.cassandra.io.compress.SnappyCompressor.create(SnappyCompressor.java:45)
    at org.apache.cassandra.io.compress.SnappyCompressor.isAvailable(SnappyCompressor.java:55)
    at org.apache.cassandra.io.compress.SnappyCompressor.<clinit>(SnappyCompressor.java:37)
    at org.apache.cassandra.config.CFMetaData.<clinit>(CFMetaData.java:82)
    at org.apache.cassandra.config.KSMetaData.systemKeyspace(KSMetaData.java:81)
    at org.apache.cassandra.config.DatabaseDescriptor.loadYaml(DatabaseDescriptor.java:468)
    at org.apache.cassandra.config.DatabaseDescriptor.<clinit>(DatabaseDescriptor.java:123)
    at org.apache.cassandra.service.CassandraDaemon.setup(CassandraDaemon.java:211)
    at org.apache.cassandra.service.CassandraDaemon.activate(CassandraDaemon.java:441)
    at org.apache.cassandra.service.CassandraDaemon.main(CassandraDaemon.java:484)
Caused by: java.lang.UnsatisfiedLinkError: /tmp/snappy-1.0.5-libsnappyjava.so: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.9' not found (required by /tmp/snappy-1.0.5-libsnappyjava.so)
    at java.lang.ClassLoader$NativeLibrary.load(Native Method)
    at java.lang.ClassLoader.loadLibrary1(Unknown Source)
    at java.lang.ClassLoader.loadLibrary0(Unknown Source)
    at java.lang.ClassLoader.loadLibrary(Unknown Source)
    at java.lang.Runtime.load0(Unknown Source)
    at java.lang.System.load(Unknown Source)
    at org.xerial.snappy.SnappyNativeLoader.load(SnappyNativeLoader.java:39)
    ... 17 more

请提出可能是什么问题.当我发现任何新发现时,我还会向此页面添加更多发现.

Please suggest what could be the issue. I will also add any more findings to this page as I discover anything new.

看了这个帖子 - cassandra1.2 在freebsd中init snappy失败

但是仍然看到问题.

我试过设置

internode_compression: none

但是仍然在日志中看到相同的错误.

However still see the same error in logs.

推荐答案

看起来您 (a) 在一个系统上运行的 glibc 与 snappy 1.0.5 不兼容,并且 (b) 从一个有效的早期版本升级.

It looks like you're (a) running on a system with an incompatible glibc for snappy 1.0.5 and (b) upgraded from an earlier version that worked.

如果您在不兼容 Snappy 的系统上重新启动 Cassandra,它将检测到问题并跳过压缩.但是当您升级并压缩系统表时,Cassandra 无能为力.

If you start Cassandra fresh on a non-Snappy-compatible system, it will detect the problem and skip compression. But when you're upgrading and you have compressed system tables, there's nothing Cassandra can do.

可以降级,可以升级glibc,也可以降级,切换到lz4,运行upgradesstables,再升级.

You can downgrade, you can upgrade glibc, or you can downgrade, switch to lz4 and run upgradesstables, and then upgrade again.

您也可以将旧的 1.0.4 snappy 放入,然后删除 1.0.5.

you might also be able to just drop the old 1.0.4 snappy in, instead, and remove 1.0.5.

编辑 2:这是 RHEL 5 吗?几乎所有现代的东西都应该与 snappy-1.0.5 兼容.

Edit 2: Is this RHEL 5? Pretty much anything modern should be snappy-1.0.5-compatible.

这篇关于Linux x86_64 上的 Cassandra 启动错误 1.2.6的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆