java – Linux x86_64上的Cassandra Startup Error 1.2.6
尝试从最新的稳定版本–7000 – 1.2.6在
Linux上安装cassandra
我已经修改cassndra.yaml指向自定义目录而不是/ var,因为我没有对/ var的写访问权限 我在启动时看到这个错误.由于发布似乎相对较新,因此无法在谷歌上找到任何答案.只是将它发布在这里以防万一我身上有一个愚蠢的错误. 相同的分发文件在我的macos x86_64机器上运行正常. 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 请提出可能存在的问题.当我发现任何新内容时,我还会在此页面中添加更多结果. 看着这样的线程 – cassandra 1.2 fails to init snappy in freebsd 但仍然看到问题. 我试过设置 internode_compression: none 但是仍然在日志中看到相同的错误. 解决方法
看起来你(a)在一个系统上运行,该系统具有与snappy 1.0.5不兼容的glibc,以及(b)从早期版本升级后运行.
如果你在非兼容Snappy的系统上启动Cassandra,它将检测问题并跳过压缩.但是当你升级并且你有压缩系统表时,Cassandra就无法做到. 您可以降级,可以升级glibc,也可以降级,切换到lz4并运行升级,然后再次升级. 编辑:您可能也可以放弃旧的1.0.4 snappy,而是删除1.0.5. 编辑2:这是RHEL 5吗?几乎任何现代的东西都应该与snappy-1.0.5兼容. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |