ARM64 机器上的 Cassandra 启动失败(java.lang.NoClassDefFoundError:无法初始化类 com.sun.jna.Native) [英] Cassandra Startup failure on ARM64 machine (java.lang.NoClassDefFoundError: Could not initialize class com.sun.jna.Native)

查看:144
本文介绍了ARM64 机器上的 Cassandra 启动失败(java.lang.NoClassDefFoundError:无法初始化类 com.sun.jna.Native)的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

当我尝试在运行 64 位 oracle JDK 的 ARM64 机器上启动 cassandra 3.9 和 3.7 时.但它无法启动,没有发现类 def 错误.JNA 似乎有问题.

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.

不过同样在 ARM32 机器上运行良好.

However same is running fine on ARM32 machines.

下面是cassandra的启动日志:-

Below is the startup log of cassandra :-

pi@DietPi:~/cassandra/apache-cassandra-3.9/conf$ ../bin/cassandra -f

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]

我在这里做错了什么?

推荐答案

似乎您遇到了与 启动 cassandra RHEL 6.5 时出现 JNA 链接问题

你可以试试:

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"

这篇关于ARM64 机器上的 Cassandra 启动失败(java.lang.NoClassDefFoundError:无法初始化类 com.sun.jna.Native)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆