问题
When i am trying to start cassandra 3.9 and also 3.7 on ARM64 machine running 64 bit oracle JDK. But it is failing to start with no class def found error. There seems to be issue with JNA.
However same is running fine on ARM32 machines.
Below is the startup log of cassandra :-
pi@DietPi:~/cassandra/apache-cassandra-3.9/conf$ ../bin/cassandra -f
CompilerOracle: dontinline org/apache/cassandra/db/Columns$Serializer.deserializeLargeSubset (Lorg/apache/cassandra/io/util/DataInputPlus;Lorg/apache/cassandra/db/Columns;I)Lorg/apache/cassandra/db/Columns;
CompilerOracle: dontinline org/apache/cassandra/db/Columns$Serializer.serializeLargeSubset (Ljava/util/Collection;ILorg/apache/cassandra/db/Columns;ILorg/apache/cassandra/io/util/DataOutputPlus;)V
CompilerOracle: dontinline org/apache/cassandra/db/Columns$Serializer.serializeLargeSubsetSize (Ljava/util/Collection;ILorg/apache/cassandra/db/Columns;I)I
CompilerOracle: dontinline org/apache/cassandra/db/transform/BaseIterator.tryGetMoreContents ()Z
CompilerOracle: dontinline org/apache/cassandra/db/transform/StoppingTransformation.stop ()V
CompilerOracle: dontinline org/apache/cassandra/db/transform/StoppingTransformation.stopInPartition ()V
CompilerOracle: dontinline org/apache/cassandra/io/util/BufferedDataOutputStreamPlus.doFlush (I)V
CompilerOracle: dontinline org/apache/cassandra/io/util/BufferedDataOutputStreamPlus.writeExcessSlow ()V
CompilerOracle: dontinline org/apache/cassandra/io/util/BufferedDataOutputStreamPlus.writeSlow (JI)V
CompilerOracle: dontinline org/apache/cassandra/io/util/RebufferingInputStream.readPrimitiveSlowly (I)J
CompilerOracle: inline org/apache/cassandra/db/rows/UnfilteredSerializer.serializeRowBody (Lorg/apache/cassandra/db/rows/Row;ILorg/apache/cassandra/db/SerializationHeader;Lorg/apache/cassandra/io/util/DataOutputPlus;)V
CompilerOracle: inline org/apache/cassandra/io/util/Memory.checkBounds (JJ)V
CompilerOracle: inline org/apache/cassandra/io/util/SafeMemory.checkBounds (JJ)V
CompilerOracle: inline org/apache/cassandra/utils/AsymmetricOrdering.selectBoundary (Lorg/apache/cassandra/utils/AsymmetricOrdering/Op;II)I
CompilerOracle: inline org/apache/cassandra/utils/AsymmetricOrdering.strictnessOfLessThan (Lorg/apache/cassandra/utils/AsymmetricOrdering/Op;)I
CompilerOracle: inline org/apache/cassandra/utils/BloomFilter.indexes (Lorg/apache/cassandra/utils/IFilter/FilterKey;)[J
CompilerOracle: inline org/apache/cassandra/utils/BloomFilter.setIndexes (JJIJ[J)V
CompilerOracle: inline org/apache/cassandra/utils/ByteBufferUtil.compare (Ljava/nio/ByteBuffer;[B)I
CompilerOracle: inline org/apache/cassandra/utils/ByteBufferUtil.compare ([BLjava/nio/ByteBuffer;)I
CompilerOracle: inline org/apache/cassandra/utils/ByteBufferUtil.compareUnsigned (Ljava/nio/ByteBuffer;Ljava/nio/ByteBuffer;)I
CompilerOracle: inline org/apache/cassandra/utils/FastByteOperations$UnsafeOperations.compareTo (Ljava/lang/Object;JILjava/lang/Object;JI)I
CompilerOracle: inline org/apache/cassandra/utils/FastByteOperations$UnsafeOperations.compareTo (Ljava/lang/Object;JILjava/nio/ByteBuffer;)I
CompilerOracle: inline org/apache/cassandra/utils/FastByteOperations$UnsafeOperations.compareTo (Ljava/nio/ByteBuffer;Ljava/nio/ByteBuffer;)I
CompilerOracle: inline org/apache/cassandra/utils/vint/VIntCoding.encodeVInt (JI)[B
INFO 01:33:11 Configuration location: file:/home/pi/cassandra/apache-cassandra-3.9/conf/cassandra.yaml
INFO 01:33:14 Node configuration:[allocate_tokens_for_keyspace=null; authenticator=AllowAllAuthenticator; authorizer=AllowAllAuthorizer; auto_bootstrap=true; auto_snapshot=true; batch_size_fail_threshold_in_kb=50; batch_size_warn_threshold_in_kb=5; batchlog_replay_throttle_in_kb=1024; broadcast_address=null; broadcast_rpc_address=null; buffer_pool_use_heap_if_exhausted=true; cas_contention_timeout_in_ms=1000; cdc_enabled=false; cdc_free_space_check_interval_ms=250; cdc_raw_directory=null; cdc_total_space_in_mb=null; client_encryption_options=<REDACTED>; cluster_name=Test Cluster; column_index_cache_size_in_kb=2; column_index_size_in_kb=64; commit_failure_policy=stop; commitlog_compression=null; commitlog_directory=null; commitlog_max_compression_buffers_in_pool=3; commitlog_periodic_queue_size=-1; commitlog_segment_size_in_mb=32; commitlog_sync=periodic; commitlog_sync_batch_window_in_ms=null; commitlog_sync_period_in_ms=10000; commitlog_total_space_in_mb=null; compaction_large_partition_warning_threshold_mb=100; compaction_throughput_mb_per_sec=16; concurrent_compactors=null; concurrent_counter_writes=32; concurrent_materialized_view_writes=32; concurrent_reads=32; concurrent_replicates=null; concurrent_writes=32; counter_cache_keys_to_save=2147483647; counter_cache_save_period=7200; counter_cache_size_in_mb=null; counter_write_request_timeout_in_ms=5000; credentials_cache_max_entries=1000; credentials_update_interval_in_ms=-1; credentials_validity_in_ms=2000; cross_node_timeout=false; data_file_directories=[Ljava.lang.String;@62379589; disk_access_mode=auto; disk_failure_policy=stop; disk_optimization_estimate_percentile=0.95; disk_optimization_page_cross_chance=0.1; disk_optimization_strategy=ssd; dynamic_snitch=true; dynamic_snitch_badness_threshold=0.1; dynamic_snitch_reset_interval_in_ms=600000; dynamic_snitch_update_interval_in_ms=100; enable_scripted_user_defined_functions=false; enable_user_defined_functions=false; enable_user_defined_functions_threads=true; encryption_options=null; endpoint_snitch=SimpleSnitch; file_cache_size_in_mb=null; gc_log_threshold_in_ms=200; gc_warn_threshold_in_ms=1000; hinted_handoff_disabled_datacenters=[]; hinted_handoff_enabled=true; hinted_handoff_throttle_in_kb=1024; hints_compression=null; hints_directory=null; hints_flush_period_in_ms=10000; incremental_backups=false; index_interval=null; index_summary_capacity_in_mb=null; index_summary_resize_interval_in_minutes=60; initial_token=null; inter_dc_stream_throughput_outbound_megabits_per_sec=200; inter_dc_tcp_nodelay=false; internode_authenticator=null; internode_compression=dc; internode_recv_buff_size_in_bytes=null; internode_send_buff_size_in_bytes=null; key_cache_keys_to_save=2147483647; key_cache_save_period=14400; key_cache_size_in_mb=null; listen_address=localhost; listen_interface=null; listen_interface_prefer_ipv6=false; listen_on_broadcast_address=false; max_hint_window_in_ms=10800000; max_hints_delivery_threads=2; max_hints_file_size_in_mb=128; max_mutation_size_in_kb=null; max_streaming_retries=3; max_value_size_in_mb=256; memtable_allocation_type=heap_buffers; memtable_cleanup_threshold=null; memtable_flush_writers=1; memtable_heap_space_in_mb=null; memtable_offheap_space_in_mb=null; min_free_space_per_drive_in_mb=50; native_transport_max_concurrent_connections=-1; native_transport_max_concurrent_connections_per_ip=-1; native_transport_max_frame_size_in_mb=256; native_transport_max_threads=128; native_transport_port=9042; native_transport_port_ssl=null; num_tokens=256; otc_coalescing_strategy=TIMEHORIZON; otc_coalescing_window_us=200; partitioner=org.apache.cassandra.dht.Murmur3Partitioner; permissions_cache_max_entries=1000; permissions_update_interval_in_ms=-1; permissions_validity_in_ms=2000; phi_convict_threshold=8.0; prepared_statements_cache_size_mb=null; range_request_timeout_in_ms=10000; read_request_timeout_in_ms=5000; request_scheduler=org.apache.cassandra.scheduler.NoScheduler; request_scheduler_id=null; request_scheduler_options=null; request_timeout_in_ms=10000; role_manager=CassandraRoleManager; roles_cache_max_entries=1000; roles_update_interval_in_ms=-1; roles_validity_in_ms=2000; row_cache_class_name=org.apache.cassandra.cache.OHCProvider; row_cache_keys_to_save=2147483647; row_cache_save_period=0; row_cache_size_in_mb=0; rpc_address=localhost; rpc_interface=null; rpc_interface_prefer_ipv6=false; rpc_keepalive=true; rpc_listen_backlog=50; rpc_max_threads=2147483647; rpc_min_threads=16; rpc_port=9160; rpc_recv_buff_size_in_bytes=null; rpc_send_buff_size_in_bytes=null; rpc_server_type=sync; saved_caches_directory=null; seed_provider=org.apache.cassandra.locator.SimpleSeedProvider{seeds=127.0.0.1}; server_encryption_options=<REDACTED>; snapshot_before_compaction=false; ssl_storage_port=7001; sstable_preemptive_open_interval_in_mb=50; start_native_transport=true; start_rpc=false; storage_port=7000; stream_throughput_outbound_megabits_per_sec=200; streaming_socket_timeout_in_ms=86400000; thrift_framed_transport_size_in_mb=15; thrift_max_message_length_in_mb=16; thrift_prepared_statements_cache_size_mb=null; tombstone_failure_threshold=100000; tombstone_warn_threshold=1000; tracetype_query_ttl=86400; tracetype_repair_ttl=604800; transparent_data_encryption_options=org.apache.cassandra.config.TransparentDataEncryptionOptions@4afcd809; trickle_fsync=false; trickle_fsync_interval_in_kb=10240; truncate_request_timeout_in_ms=60000; unlogged_batch_across_partitions_warn_threshold=10; user_defined_function_fail_timeout=1500; user_defined_function_warn_timeout=500; user_function_timeout_policy=die; windows_timer_interval=1; write_request_timeout_in_ms=2000]
INFO 01:33:14 DiskAccessMode 'auto' determined to be mmap, indexAccessMode is mmap
INFO 01:33:15 Global memtable on-heap threshold is enabled at 242MB
INFO 01:33:15 Global memtable off-heap threshold is enabled at 242MB
WARN 01:33:15 Small commitlog volume detected at ../bin/../data/commitlog; setting commitlog_total_space_in_mb to 1843. You can override this in cassandra.yaml
WARN 01:33:15 Small cdc volume detected at ../bin/../data/cdc_raw; setting cdc_total_space_in_mb to 921. You can override this in cassandra.yaml
WARN 01:33:15 Only 5.650GiB free across all data volumes. Consider adding more capacity to your cluster or removing obsolete snapshots
INFO 01:33:15 Hostname: DietPi
INFO 01:33:15 JVM vendor/version: Java HotSpot(TM) 64-Bit Server VM/1.8.0_101
INFO 01:33:15 Heap size: 969.250MiB/969.250MiB
INFO 01:33:15 Code Cache Non-heap memory: init = 2097152(2048K) used = 796288(777K) committed = 2097152(2048K) max = 50331648(49152K)
INFO 01:33:15 Metaspace Non-heap memory: init = 0(0K) used = 16180072(15800K) committed = 16646144(16256K) max = -1(-1K)
INFO 01:33:15 Compressed Class Space Non-heap memory: init = 0(0K) used = 2068984(2020K) committed = 2228224(2176K) max = 1073741824(1048576K)
INFO 01:33:15 Par Eden Space Heap memory: init = 208142336(203264K) used = 83350320(81396K) committed = 208142336(203264K) max = 208142336(203264K)
INFO 01:33:15 Par Survivor Space Heap memory: init = 25952256(25344K) used = 0(0K) committed = 25952256(25344K) max = 25952256(25344K)
INFO 01:33:15 CMS Old Gen Heap memory: init = 782237696(763904K) used = 0(0K) committed = 782237696(763904K) max = 782237696(763904K)
INFO 01:33:15 Classpath: ../bin/../conf:../bin/../build/classes/main:../bin/../build/classes/thrift:../bin/../lib/HdrHistogram-2.1.9.jar:../bin/../lib/ST4-4.0.8.jar:../bin/../lib/airline-0.6.jar:../bin/../lib/antlr-runtime-3.5.2.jar:../bin/../lib/apache-cassandra-3.9.jar:../bin/../lib/apache-cassandra-clientutil-3.9.jar:../bin/../lib/apache-cassandra-thrift-3.9.jar:../bin/../lib/asm-5.0.4.jar:../bin/../lib/caffeine-2.2.6.jar:../bin/../lib/cassandra-driver-core-3.0.1-shaded.jar:../bin/../lib/commons-cli-1.1.jar:../bin/../lib/commons-codec-1.2.jar:../bin/../lib/commons-lang3-3.1.jar:../bin/../lib/commons-math3-3.2.jar:../bin/../lib/compress-lzf-0.8.4.jar:../bin/../lib/concurrent-trees-2.4.0.jar:../bin/../lib/concurrentlinkedhashmap-lru-1.4.jar:../bin/../lib/disruptor-3.0.1.jar:../bin/../lib/ecj-4.4.2.jar:../bin/../lib/guava-18.0.jar:../bin/../lib/high-scale-lib-1.0.6.jar:../bin/../lib/hppc-0.5.4.jar:../bin/../lib/jackson-core-asl-1.9.2.jar:../bin/../lib/jackson-mapper-asl-1.9.2.jar:../bin/../lib/jamm-0.3.0.jar:../bin/../lib/javax.inject.jar:../bin/../lib/jbcrypt-0.3m.jar:../bin/../lib/jcl-over-slf4j-1.7.7.jar:../bin/../lib/jflex-1.6.0.jar:../bin/../lib/jna-4.0.0.jar:../bin/../lib/joda-time-2.4.jar:../bin/../lib/json-simple-1.1.jar:../bin/../lib/libthrift-0.9.2.jar:../bin/../lib/log4j-over-slf4j-1.7.7.jar:../bin/../lib/logback-classic-1.1.3.jar:../bin/../lib/logback-core-1.1.3.jar:../bin/../lib/lz4-1.3.0.jar:../bin/../lib/metrics-core-3.1.0.jar:../bin/../lib/metrics-jvm-3.1.0.jar:../bin/../lib/metrics-logback-3.1.0.jar:../bin/../lib/netty-all-4.0.39.Final.jar:../bin/../lib/ohc-core-0.4.3.jar:../bin/../lib/ohc-core-j8-0.4.3.jar:../bin/../lib/primitive-1.0.jar:../bin/../lib/reporter-config-base-3.0.0.jar:../bin/../lib/reporter-config3-3.0.0.jar:../bin/../lib/sigar-1.6.4.jar:../bin/../lib/slf4j-api-1.7.7.jar:../bin/../lib/snakeyaml-1.11.jar:../bin/../lib/snappy-java-1.1.1.7.jar:../bin/../lib/snowball-stemmer-1.3.0.581.1.jar:../bin/../lib/stream-2.5.2.jar:../bin/../lib/thrift-server-0.3.7.jar:../bin/../lib/jsr223/*/*.jar:../bin/../lib/jamm-0.3.0.jar
INFO 01:33:15 JVM Arguments: [-Xloggc:../bin/../logs/gc.log, -ea, -XX:+UseThreadPriorities, -XX:ThreadPriorityPolicy=42, -XX:+HeapDumpOnOutOfMemoryError, -Xss256k, -XX:StringTableSize=1000003, -XX:+AlwaysPreTouch, -XX:-UseBiasedLocking, -XX:+UseTLAB, -XX:+ResizeTLAB, -XX:+PerfDisableSharedMem, -Djava.net.preferIPv4Stack=true, -XX:+UseParNewGC, -XX:+UseConcMarkSweepGC, -XX:+CMSParallelRemarkEnabled, -XX:SurvivorRatio=8, -XX:MaxTenuringThreshold=1, -XX:CMSInitiatingOccupancyFraction=75, -XX:+UseCMSInitiatingOccupancyOnly, -XX:CMSWaitDuration=10000, -XX:+CMSParallelInitialMarkEnabled, -XX:+CMSEdenChunksRecordAlways, -XX:+CMSClassUnloadingEnabled, -XX:+PrintGCDetails, -XX:+PrintGCDateStamps, -XX:+PrintHeapAtGC, -XX:+PrintTenuringDistribution, -XX:+PrintGCApplicationStoppedTime, -XX:+PrintPromotionFailure, -XX:+UseGCLogFileRotation, -XX:NumberOfGCLogFiles=10, -XX:GCLogFileSize=10M, -Xms994M, -Xmx994M, -Xmn248M, -XX:+UseCondCardMark, -XX:CompileCommandFile=../bin/../conf/hotspot_compiler, -javaagent:../bin/../lib/jamm-0.3.0.jar, -Dcassandra.jmx.local.port=7199, -Dcom.sun.management.jmxremote.authenticate=false, -Dcom.sun.management.jmxremote.password.file=/etc/cassandra/jmxremote.password, -Djava.library.path=../bin/../lib/sigar-bin, -Djava.io.tmpdir=/home/pi/tmp, -Dlogback.configurationFile=logback.xml, -Dcassandra.logdir=../bin/../logs, -Dcassandra.storagedir=../bin/../data, -Dcassandra-foreground=yes]
WARN 01:33:15 JNA link failure, one or more native method will be unavailable.
WARN 01:33:15 jemalloc shared library could not be preloaded to speed up memory allocations
WARN 01:33:15 JMX is not enabled to receive remote connections. Please see cassandra-env.sh for more info.
INFO 01:33:15 Initializing SIGAR library
INFO 01:33:15 Could not initialize SIGAR library org.hyperic.sigar.Sigar.getFileSystemListNative()[Lorg/hyperic/sigar/FileSystem;
INFO 01:33:15 Sigar could not be initialized, test for checking degraded mode omitted.
INFO 01:33:16 Initialized prepared statement caches with 10 MB (native) and 10 MB (Thrift)
INFO 01:33:19 Initializing system.IndexInfo
INFO 01:33:23 Initializing system.batches
INFO 01:33:23 Initializing system.paxos
INFO 01:33:23 Initializing system.local
INFO 01:33:23 Initializing system.peers
INFO 01:33:23 Initializing system.peer_events
INFO 01:33:23 Initializing system.range_xfers
INFO 01:33:23 Initializing system.compaction_history
INFO 01:33:23 Initializing system.sstable_activity
INFO 01:33:23 Initializing system.size_estimates
INFO 01:33:23 Initializing system.available_ranges
INFO 01:33:23 Initializing system.views_builds_in_progress
INFO 01:33:24 Initializing system.built_views
INFO 01:33:24 Initializing system.hints
INFO 01:33:24 Initializing system.batchlog
INFO 01:33:24 Initializing system.schema_keyspaces
INFO 01:33:24 Initializing system.schema_columnfamilies
INFO 01:33:24 Initializing system.schema_columns
INFO 01:33:24 Initializing system.schema_triggers
INFO 01:33:24 Initializing system.schema_usertypes
INFO 01:33:24 Initializing system.schema_functions
INFO 01:33:24 Initializing system.schema_aggregates
INFO 01:33:24 Not submitting build tasks for views in keyspace system as storage service is not initialized
INFO 01:33:25 Configured JMX server at: service:jmx:rmi://127.0.0.1/jndi/rmi://127.0.0.1:7199/jmxrmi
Exception (java.lang.RuntimeException) encountered during startup: java.util.concurrent.ExecutionException: java.lang.NoClassDefFoundError: Could not initialize class com.sun.jna.Native
java.lang.RuntimeException: java.util.concurrent.ExecutionException: java.lang.NoClassDefFoundError: Could not initialize class com.sun.jna.Native
at org.apache.cassandra.utils.FBUtilities.waitOnFuture(FBUtilities.java:403)
at org.apache.cassandra.db.SystemKeyspace.forceBlockingFlush(SystemKeyspace.java:793)
at org.apache.cassandra.db.SystemKeyspace.removeTruncationRecord(SystemKeyspace.java:639)
at org.apache.cassandra.db.ColumnFamilyStore.invalidate(ColumnFamilyStore.java:541)
at org.apache.cassandra.db.ColumnFamilyStore.invalidate(ColumnFamilyStore.java:517)
at org.apache.cassandra.schema.LegacySchemaMigrator.lambda$unloadLegacySchemaTables$1(LegacySchemaMigrator.java:137)
at java.lang.Iterable.forEach(Iterable.java:75)
at org.apache.cassandra.schema.LegacySchemaMigrator.unloadLegacySchemaTables(LegacySchemaMigrator.java:137)
at org.apache.cassandra.schema.LegacySchemaMigrator.migrate(LegacySchemaMigrator.java:83)
at org.apache.cassandra.service.CassandraDaemon.setup(CassandraDaemon.java:254)
at org.apache.cassandra.service.CassandraDaemon.activate(CassandraDaemon.java:601)
at org.apache.cassandra.service.CassandraDaemon.main(CassandraDaemon.java:730)
Caused by: java.util.concurrent.ExecutionException: java.lang.NoClassDefFoundError: Could not initialize class com.sun.jna.Native
at java.util.concurrent.FutureTask.report(FutureTask.java:122)
at java.util.concurrent.FutureTask.get(FutureTask.java:192)
at org.apache.cassandra.utils.FBUtilities.waitOnFuture(FBUtilities.java:399)
... 11 more
Caused by: java.lang.NoClassDefFoundError: Could not initialize class com.sun.jna.Native
at org.apache.cassandra.utils.memory.MemoryUtil.allocate(MemoryUtil.java:98)
at org.apache.cassandra.io.util.Memory.<init>(Memory.java:74)
at org.apache.cassandra.io.util.SafeMemory.<init>(SafeMemory.java:32)
at org.apache.cassandra.io.compress.CompressionMetadata$Writer.<init>(CompressionMetadata.java:316)
at org.apache.cassandra.io.compress.CompressionMetadata$Writer.open(CompressionMetadata.java:330)
at org.apache.cassandra.io.compress.CompressedSequentialWriter.<init>(CompressedSequentialWriter.java:94)
at org.apache.cassandra.io.sstable.format.big.BigTableWriter.<init>(BigTableWriter.java:84)
at org.apache.cassandra.io.sstable.format.big.BigFormat$WriterFactory.open(BigFormat.java:92)
at org.apache.cassandra.io.sstable.format.SSTableWriter.create(SSTableWriter.java:101)
at org.apache.cassandra.io.sstable.SimpleSSTableMultiWriter.create(SimpleSSTableMultiWriter.java:119)
at org.apache.cassandra.db.compaction.AbstractCompactionStrategy.createSSTableMultiWriter(AbstractCompactionStrategy.java:553)
at org.apache.cassandra.db.compaction.CompactionStrategyManager.createSSTableMultiWriter(CompactionStrategyManager.java:905)
at org.apache.cassandra.db.ColumnFamilyStore.createSSTableMultiWriter(ColumnFamilyStore.java:506)
at org.apache.cassandra.db.Memtable$FlushRunnable.createFlushWriter(Memtable.java:483)
at org.apache.cassandra.db.Memtable$FlushRunnable.<init>(Memtable.java:422)
at org.apache.cassandra.db.Memtable$FlushRunnable.<init>(Memtable.java:399)
at org.apache.cassandra.db.Memtable.flushRunnables(Memtable.java:277)
at org.apache.cassandra.db.ColumnFamilyStore$Flush.flushMemtable(ColumnFamilyStore.java:1117)
at org.apache.cassandra.db.ColumnFamilyStore$Flush.run(ColumnFamilyStore.java:1084)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
ERROR 01:33:25 Exception encountered during startup
java.lang.RuntimeException: java.util.concurrent.ExecutionException: java.lang.NoClassDefFoundError: Could not initialize class com.sun.jna.Native
at org.apache.cassandra.utils.FBUtilities.waitOnFuture(FBUtilities.java:403) ~[apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.db.SystemKeyspace.forceBlockingFlush(SystemKeyspace.java:793) ~[apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.db.SystemKeyspace.removeTruncationRecord(SystemKeyspace.java:639) ~[apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.db.ColumnFamilyStore.invalidate(ColumnFamilyStore.java:541) ~[apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.db.ColumnFamilyStore.invalidate(ColumnFamilyStore.java:517) ~[apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.schema.LegacySchemaMigrator.lambda$unloadLegacySchemaTables$1(LegacySchemaMigrator.java:137) ~[apache-cassandra-3.9.jar:3.9]
at java.lang.Iterable.forEach(Iterable.java:75) ~[na:1.8.0_101]
at org.apache.cassandra.schema.LegacySchemaMigrator.unloadLegacySchemaTables(LegacySchemaMigrator.java:137) ~[apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.schema.LegacySchemaMigrator.migrate(LegacySchemaMigrator.java:83) ~[apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.service.CassandraDaemon.setup(CassandraDaemon.java:254) [apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.service.CassandraDaemon.activate(CassandraDaemon.java:601) [apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.service.CassandraDaemon.main(CassandraDaemon.java:730) [apache-cassandra-3.9.jar:3.9]
Caused by: java.util.concurrent.ExecutionException: java.lang.NoClassDefFoundError: Could not initialize class com.sun.jna.Native
at java.util.concurrent.FutureTask.report(FutureTask.java:122) ~[na:1.8.0_101]
at java.util.concurrent.FutureTask.get(FutureTask.java:192) ~[na:1.8.0_101]
at org.apache.cassandra.utils.FBUtilities.waitOnFuture(FBUtilities.java:399) ~[apache-cassandra-3.9.jar:3.9]
... 11 common frames omitted
Caused by: java.lang.NoClassDefFoundError: Could not initialize class com.sun.jna.Native
at org.apache.cassandra.utils.memory.MemoryUtil.allocate(MemoryUtil.java:98) ~[apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.io.util.Memory.<init>(Memory.java:74) ~[apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.io.util.SafeMemory.<init>(SafeMemory.java:32) ~[apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.io.compress.CompressionMetadata$Writer.<init>(CompressionMetadata.java:316) ~[apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.io.compress.CompressionMetadata$Writer.open(CompressionMetadata.java:330) ~[apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.io.compress.CompressedSequentialWriter.<init>(CompressedSequentialWriter.java:94) ~[apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.io.sstable.format.big.BigTableWriter.<init>(BigTableWriter.java:84) ~[apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.io.sstable.format.big.BigFormat$WriterFactory.open(BigFormat.java:92) ~[apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.io.sstable.format.SSTableWriter.create(SSTableWriter.java:101) ~[apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.io.sstable.SimpleSSTableMultiWriter.create(SimpleSSTableMultiWriter.java:119) ~[apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.db.compaction.AbstractCompactionStrategy.createSSTableMultiWriter(AbstractCompactionStrategy.java:553) ~[apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.db.compaction.CompactionStrategyManager.createSSTableMultiWriter(CompactionStrategyManager.java:905) ~[apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.db.ColumnFamilyStore.createSSTableMultiWriter(ColumnFamilyStore.java:506) ~[apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.db.Memtable$FlushRunnable.createFlushWriter(Memtable.java:483) ~[apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.db.Memtable$FlushRunnable.<init>(Memtable.java:422) ~[apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.db.Memtable$FlushRunnable.<init>(Memtable.java:399) ~[apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.db.Memtable.flushRunnables(Memtable.java:277) ~[apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.db.ColumnFamilyStore$Flush.flushMemtable(ColumnFamilyStore.java:1117) ~[apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.db.ColumnFamilyStore$Flush.run(ColumnFamilyStore.java:1084) ~[apache-cassandra-3.9.jar:3.9]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) ~[na:1.8.0_101]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) ~[na:1.8.0_101]
at java.lang.Thread.run(Thread.java:745) ~[na:1.8.0_101]
What am i doing wrong here?
回答1:
Seems you have hit similar issue as JNA link issue while starting cassandra RHEL 6.5
You can try:
This issue is caused due to noexec flag on the /tmp folder.
I then decided to change the tmp folder by changing tmpdir using option:
-Djava.io.tmpdir=/home/cassandra/tmp That fixed the issue.
I added the options in cassandra-env.sh file. Added following statement -
JVM_OPTS="$JVM_OPTS -Djava.io.tmpdir=/home/cassandra/tmp"
来源:https://stackoverflow.com/questions/40077441/cassandra-startup-failure-on-arm64-machine-java-lang-noclassdeffounderror-coul