[ 
https://issues.apache.org/jira/browse/CASSANDRA-4958?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13701235#comment-13701235
 ] 

Patrick Monfette edited comment on CASSANDRA-4958 at 7/6/13 3:08 AM:
---------------------------------------------------------------------

I believe this fix (going to snappy 1.0.5) broke Cassandra on CentOS 5 for us. 
We're using the RPM package.

I upgraded from Cassandra 1.2.5 (which was using snappy 1.0.4) and I couldn't 
get 1.2.6 to start up properly and I had to rollback to 1.2.5.

{code}
ERROR [SSTableBatchOpen:5] 2013-07-05 16:35:22,466 CassandraDaemon.java (line 
192) Exception in thread Thread[SSTableBatchOpen:5,5,main]
java.lang.RuntimeException: Cannot create CompressionParameters for stored 
parameters
        at 
org.apache.cassandra.io.compress.CompressionMetadata.<init>(CompressionMetadata.java:99)
        at 
org.apache.cassandra.io.compress.CompressionMetadata.create(CompressionMetadata.java:63)
        at 
org.apache.cassandra.io.util.CompressedSegmentedFile$Builder.complete(CompressedSegmentedFile.java:51)
        at 
org.apache.cassandra.io.sstable.SSTableReader.load(SSTableReader.java:411)
        at 
org.apache.cassandra.io.sstable.SSTableReader.open(SSTableReader.java:201)
        at 
org.apache.cassandra.io.sstable.SSTableReader.open(SSTableReader.java:154)
        at 
org.apache.cassandra.io.sstable.SSTableReader$1.run(SSTableReader.java:241)
        at 
java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
        at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
        at java.util.concurrent.FutureTask.run(FutureTask.java:138)
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
        at java.lang.Thread.run(Thread.java:662)
Caused by: org.apache.cassandra.exceptions.ConfigurationException: 
SnappyCompressor.create() threw an error: java.lang.NoClassDefFoundError Could 
not initialize class org.xerial.snappy.Snappy
        at 
org.apache.cassandra.io.compress.CompressionParameters.createCompressor(CompressionParameters.java:179)
        at 
org.apache.cassandra.io.compress.CompressionParameters.<init>(CompressionParameters.java:71)
        at 
org.apache.cassandra.io.compress.CompressionMetadata.<init>(CompressionMetadata.java:95)
        ... 12 more
Caused by: java.lang.reflect.InvocationTargetException
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at 
org.apache.cassandra.io.compress.CompressionParameters.createCompressor(CompressionParameters.java:156)
        ... 14 more
Caused by: java.lang.NoClassDefFoundError: Could not initialize class 
org.xerial.snappy.Snappy
        at 
org.apache.cassandra.io.compress.SnappyCompressor.create(SnappyCompressor.java:45)
        ... 19 more
{code}

I did try to implement the following documented fix that seemed related to our 
issue but it did not work:

http://www.datastax.com/docs/1.0/troubleshooting/index#snappy

Furthermore, I suspect this is not the exact same problem since 1.2.5 was 
working perfectly fine for us without the above fix. We only did an update of 
the Cassandra package to 1.2.6, diffed and merged the yaml config file and 
tried to start it back up, like all the other previous upgrades we did as 
version 1.2.x came out.

I also fully updated all server packages in case it had something to do with an 
old library somwehere else or something but it did not work either.

We're running the latest CentOS 5.9, 64 bits, fully updated.

We're running java 1.6.0 from Sun (not OpenJDK)

{code}
java version "1.6.0_26"
Java(TM) SE Runtime Environment (build 1.6.0_26-b03)
Java HotSpot(TM) 64-Bit Server VM (build 20.1-b02, mixed mode)
{code}

Here is the content of my /tmp folder on the server (those get created when I 
start up Cassandra. The 1.0.5 is the one that got created when I was trying to 
start up Cassandra 1.2.6. It seems quite small compared to version 1.0.4 (which 
was created by version 1.2.5).

{code}
-rwxr-xr-x  1 cassandra       cassandra       991112 Jul  5 16:38 
snappy-1.0.4.1-libsnappyjava.so
-rwxr-xr-x  1 cassandra       cassandra        48432 Jul  5 16:35 
snappy-1.0.5-libsnappyjava.so
{code}

The only thing I haven't tried is to update our java version to a later 1.6.x 
release or go to 1.7.x or even try OpenJDK as this created some issues with 
other softwares we had since the server was coming up but queries to the 
keyspaces were coming back as errors or unknown keyspaces...

Let me know if you need more information, I'll be glad to help out.

Thanks guys !
                
      was (Author: pmonfette):
    I believe this fix (going to snappy 1.0.5) broke Cassandra on CentOS 5. 
We're using the RPM package.

I upgraded from Cassandra 1.2.5 (which was using snappy 1.0.4) and I couldn't 
get 1.2.6 to start up properly and I had to rollback to 1.2.5.

{code}
ERROR [SSTableBatchOpen:5] 2013-07-05 16:35:22,466 CassandraDaemon.java (line 
192) Exception in thread Thread[SSTableBatchOpen:5,5,main]
java.lang.RuntimeException: Cannot create CompressionParameters for stored 
parameters
        at 
org.apache.cassandra.io.compress.CompressionMetadata.<init>(CompressionMetadata.java:99)
        at 
org.apache.cassandra.io.compress.CompressionMetadata.create(CompressionMetadata.java:63)
        at 
org.apache.cassandra.io.util.CompressedSegmentedFile$Builder.complete(CompressedSegmentedFile.java:51)
        at 
org.apache.cassandra.io.sstable.SSTableReader.load(SSTableReader.java:411)
        at 
org.apache.cassandra.io.sstable.SSTableReader.open(SSTableReader.java:201)
        at 
org.apache.cassandra.io.sstable.SSTableReader.open(SSTableReader.java:154)
        at 
org.apache.cassandra.io.sstable.SSTableReader$1.run(SSTableReader.java:241)
        at 
java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
        at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
        at java.util.concurrent.FutureTask.run(FutureTask.java:138)
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
        at java.lang.Thread.run(Thread.java:662)
Caused by: org.apache.cassandra.exceptions.ConfigurationException: 
SnappyCompressor.create() threw an error: java.lang.NoClassDefFoundError Could 
not initialize class org.xerial.snappy.Snappy
        at 
org.apache.cassandra.io.compress.CompressionParameters.createCompressor(CompressionParameters.java:179)
        at 
org.apache.cassandra.io.compress.CompressionParameters.<init>(CompressionParameters.java:71)
        at 
org.apache.cassandra.io.compress.CompressionMetadata.<init>(CompressionMetadata.java:95)
        ... 12 more
Caused by: java.lang.reflect.InvocationTargetException
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at 
org.apache.cassandra.io.compress.CompressionParameters.createCompressor(CompressionParameters.java:156)
        ... 14 more
Caused by: java.lang.NoClassDefFoundError: Could not initialize class 
org.xerial.snappy.Snappy
        at 
org.apache.cassandra.io.compress.SnappyCompressor.create(SnappyCompressor.java:45)
        ... 19 more
{code}

I did try to implement the following documented fix that seemed related to our 
issue but it did not work:

http://www.datastax.com/docs/1.0/troubleshooting/index#snappy

Furthermore, I suspect this is not the exact same problem since 1.2.5 was 
working perfectly fine for us without the above fix. We only did an update of 
the Cassandra package to 1.2.6, diffed and merged the yaml config file and 
tried to start it back up, like all the other previous upgrades we did as 
version 1.2.x came out.

I also fully updated all server packages in case it had something to do with an 
old library somwehere else or something but it did not work either.

We're running the latest CentOS 5.9, 64 bits, fully updated.

We're running java 1.6.0 from Sun (not OpenJDK)

{code}
java version "1.6.0_26"
Java(TM) SE Runtime Environment (build 1.6.0_26-b03)
Java HotSpot(TM) 64-Bit Server VM (build 20.1-b02, mixed mode)
{code}

Here is the content of my /tmp folder on the server (those get created when I 
start up Cassandra. The 1.0.5 is the one that got created when I was trying to 
start up Cassandra 1.2.6. It seems quite small compared to version 1.0.4 (which 
was created by version 1.2.5).

{code}
-rwxr-xr-x  1 cassandra       cassandra       991112 Jul  5 16:38 
snappy-1.0.4.1-libsnappyjava.so
-rwxr-xr-x  1 cassandra       cassandra        48432 Jul  5 16:35 
snappy-1.0.5-libsnappyjava.so
{code}

The only thing I haven't tried is to update our java version to a later 1.6.x 
release or go to 1.7.x or even try OpenJDK as this created some issues with 
other softwares we had since the server was coming up but queries to the 
keyspaces were coming back as errors or unknown keyspaces...

Let me know if you need more information, I'll be glad to help out.

Thanks guys !
                  
> Snappy 1.0.4 doesn't work on OSX / Java 7
> -----------------------------------------
>
>                 Key: CASSANDRA-4958
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-4958
>             Project: Cassandra
>          Issue Type: Bug
>    Affects Versions: 1.2.0 beta 2
>            Reporter: Colin Taylor
>            Assignee: Yuki Morishita
>            Priority: Minor
>             Fix For: 1.2.6
>
>         Attachments: 0001-CASSANDRA-4958-1.2.patch
>
>
> Fixed in 1.0.5-M3 see :
> https://github.com/xerial/snappy-java/issues/6

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to