IIRC there is a test for snappy when the node starts does that log an error ? 

And / or can you create a CF that uses snappy compression (it was the default for a while in 1.2). 


Aaron Morton
New Zealand

Co-Founder & Principal Consultant
Apache Cassandra Consulting

On 13/11/2013, at 3:09 am, srmore <comomore@gmail.com> wrote:

Thanks Christopher !
I don't think glibc is an issue (as it did go that far) /usr/tmp/snappy-1.0.5-libsnappyjava.so is not there, permissions look ok, are there any special settings (like JVM args) that I should be using ? I can see libsnappyjava.so in the jar though (snappy-java-1.0.5.jar\org\xerial\snappy\native\Linux\i386\) one other thing I am using RedHat 6. I will try updating glibc ans see what happens.

Thanks !

On Mon, Nov 11, 2013 at 5:01 PM, Christopher Wirt <chris.wirt@struq.com> wrote:

I had this the other day when we were accidentally provisioned a centos5 machine (instead of 6). Think it relates to the version of glibc. Notice it wants the native binary .so not the .jar


So maybe update to a newer version of glibc? Or possibly make sure the .so exists at /usr/tmp/snappy-1.0.5-libsnappyjava.so?

I was lucky and just did an OS reload to centos6.


Here is someone having a similar issue.




From: srmore [mailto:comomore@gmail.com]
Sent: 11 November 2013 21:32
To: user@cassandra.apache.org
Subject: java.io.FileNotFoundException when setting up internode_compression


I might be missing something obvious here, for some reason I cannot seem to get internode_compression = all to work. I am getting  the following exception. I am using cassandra 1.2.9 and have snappy-java-1.0.5.jar in my classpath. Google search did not return any useful result, has anyone seen this before ?

java.io.FileNotFoundException: /usr/tmp/snappy-1.0.5-libsnappyjava.so (No such file or directory)
        at java.io.FileOutputStream.open(Native Method)
        at java.io.FileOutputStream.<init>(FileOutputStream.java:194)
        at java.io.FileOutputStream.<init>(FileOutputStream.java:145)
        at org.xerial.snappy.SnappyLoader.extractLibraryFile(SnappyLoader.java:394)
        at org.xerial.snappy.SnappyLoader.findNativeLibrary(SnappyLoader.java:468)
        at org.xerial.snappy.SnappyLoader.loadNativeLibrary(SnappyLoader.java:318)
        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:471)
        at org.apache.cassandra.config.DatabaseDescriptor.<clinit>(DatabaseDescriptor.java:123)

Caused by: java.lang.UnsatisfiedLinkError: no snappyjava in java.library.path
        at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1738)
        at java.lang.Runtime.loadLibrary0(Runtime.java:823)
        at java.lang.System.loadLibrary(System.java:1028)
        at org.xerial.snappy.SnappyNativeLoader.loadLibrary(SnappyNativeLoader.java:52)
        ... 18 more