You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by "Jun He (JIRA)" <ji...@apache.org> on 2016/12/22 06:22:58 UTC

[jira] [Created] (CASSANDRA-13072) Cassandra failed to run on Linux-aarch64

Jun He created CASSANDRA-13072:
----------------------------------

             Summary: Cassandra failed to run on Linux-aarch64
                 Key: CASSANDRA-13072
                 URL: https://issues.apache.org/jira/browse/CASSANDRA-13072
             Project: Cassandra
          Issue Type: Bug
          Components: Core
         Environment: Hardware: ARM aarch64
OS: Ubuntu 16.04.1 LTS
            Reporter: Jun He
         Attachments: compat_report.html

Steps to reproduce:
1. Download cassandra latest source
2. Build it with "ant"
3. Run with "./bin/cassandra". Daemon is crashed with following error message:
{quote}
INFO  05:30:21 Initializing system.schema_functions
INFO  05:30:21 Initializing system.schema_aggregates
ERROR 05:30:22 Exception in thread Thread[MemtableFlushWriter:1,5,main]
java.lang.NoClassDefFoundError: Could not initialize class com.sun.jna.Native
        at org.apache.cassandra.utils.memory.MemoryUtil.allocate(MemoryUtil.java:97) ~[main/:na]
        at org.apache.cassandra.io.util.Memory.<init>(Memory.java:74) ~[main/:na]
        at org.apache.cassandra.io.util.SafeMemory.<init>(SafeMemory.java:32) ~[main/:na]
        at org.apache.cassandra.io.compress.CompressionMetadata$Writer.<init>(CompressionMetadata.java:316) ~[main/:na]
        at org.apache.cassandra.io.compress.CompressionMetadata$Writer.open(CompressionMetadata.java:330) ~[main/:na]
        at org.apache.cassandra.io.compress.CompressedSequentialWriter.<init>(CompressedSequentialWriter.java:76) ~[main/:na]
        at org.apache.cassandra.io.util.SequentialWriter.open(SequentialWriter.java:163) ~[main/:na]
        at org.apache.cassandra.io.sstable.format.big.BigTableWriter.<init>(BigTableWriter.java:73) ~[main/:na]
        at org.apache.cassandra.io.sstable.format.big.BigFormat$WriterFactory.open(BigFormat.java:93) ~[main/:na]
        at org.apache.cassandra.io.sstable.format.SSTableWriter.create(SSTableWriter.java:96) ~[main/:na]
        at org.apache.cassandra.io.sstable.SimpleSSTableMultiWriter.create(SimpleSSTableMultiWriter.java:114) ~[main/:na]
        at org.apache.cassandra.db.compaction.AbstractCompactionStrategy.createSSTableMultiWriter(AbstractCompactionStrategy.java:519) ~[main/:na]
        at org.apache.cassandra.db.compaction.CompactionStrategyManager.createSSTableMultiWriter(CompactionStrategyManager.java:497) ~[main/:na]
        at org.apache.cassandra.db.ColumnFamilyStore.createSSTableMultiWriter(ColumnFamilyStore.java:480) ~[main/:na]
        at org.apache.cassandra.db.Memtable.createFlushWriter(Memtable.java:439) ~[main/:na]
        at org.apache.cassandra.db.Memtable.writeSortedContents(Memtable.java:371) ~[main/:na]
        at org.apache.cassandra.db.Memtable.flush(Memtable.java:332) ~[main/:na]
        at org.apache.cassandra.db.ColumnFamilyStore$Flush.run(ColumnFamilyStore.java:1054) ~[main/:na]
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) ~[na:1.8.0_111]
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) ~[na:1.8.0_111]
        at java.lang.Thread.run(Thread.java:745) ~[na:1.8.0_111]
{quote}

Analyze:
This issue is caused by bundled jna-4.0.0.jar which doesn't come with aarch64 native support. Replace ${CASSANDRA_SRC_ROOT}/lib/jna-4.0.0.jar with jna-4.2.0.jar from http://central.maven.org/maven2/net/java/dev/jna/jna/4.2.0/ can fix this problem.

Attached is the binary compatibility report between 4.0 and 4.2. Seems the result is good (97.4%). Please point me what kind of tests should be taken to upgrading jna to 4.2. Thanks.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)