java.lang.NoClassDefFoundError: 
org/apache/cassandra/db/commitlog/PeriodicCommitLogExecutorService$4 
-----------------------------------------------------------------------------------------------------

                 Key: CASSANDRA-2574
                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2574
             Project: Cassandra
          Issue Type: Bug
          Components: Core
            Reporter: Terje Marthinussen
            Priority: Minor


We see this in the log occasionally, but the jar file does have the right class 
file.

Seems to occur when cassandra is stopped and I suppose it may be some race 
between the vm class loader and the fact that it has got a kill signal and is 
shutting down?

ERROR [Thread-2] 2011-04-26 19:32:03,841 AbstractCassandraDaemon.java (line 
112) Fatal exception in thread Thread[Thread-2,5,main]
java.lang.NoClassDefFoundError: 
org/apache/cassandra/db/commitlog/PeriodicCommitLogExecutorService$4
        at 
org.apache.cassandra.db.commitlog.PeriodicCommitLogExecutorService.shutdown(PeriodicCommitLogExecutorService.java:121)
        at 
org.apache.cassandra.db.commitlog.CommitLog.shutdownBlocking(CommitLog.java:503)
        at 
org.apache.cassandra.service.StorageService$2.runMayThrow(StorageService.java:402)
        at 
org.apache.cassandra.utils.WrappedRunnable.run(WrappedRunnable.java:30)
        at java.lang.Thread.run(Thread.java:662)
Caused by: java.lang.ClassNotFoundException: 
org.apache.cassandra.db.commitlog.PeriodicCommitLogExecutorService$4
        at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:248)
        ... 5 more

Not sure if it is a problem or not and does not happen all the time.


In this case this is also followed by 

        at 
org.apache.cassandra.thrift.CassandraServer.doInsert(CassandraServer.java:551)
        at 
org.apache.cassandra.thrift.CassandraServer.internal_batch_mutate(CassandraServer.java:503)
        at 
org.apache.cassandra.thrift.CassandraServer.batch_mutate(CassandraServer.java:511)
        at 
org.apache.cassandra.thrift.Cassandra$Processor$batch_mutate.process(Cassandra.java:3454)
        at 
org.apache.cassandra.thrift.Cassandra$Processor.process(Cassandra.java:2889)
        at 
org.apache.cassandra.thrift.CustomTThreadPoolServer$WorkerProcess.run(CustomTThreadPoolServer.java:187)
        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)
ERROR [pool-2-thread-91] 2011-04-26 19:32:04,267 Cassandra.java (line 3462) 
Internal error processing batch_mutate
java.util.concurrent.RejectedExecutionException: ThreadPoolExecutor has shut 
down
        at 
org.apache.cassandra.concurrent.DebuggableThreadPoolExecutor$1.rejectedExecution(DebuggableThreadPoolExecutor.java:73)
        at 
java.util.concurrent.ThreadPoolExecutor.reject(ThreadPoolExecutor.java:767)
        at 
java.util.concurrent.ThreadPoolExecutor.execute(ThreadPoolExecutor.java:658)
        at 
org.apache.cassandra.service.StorageProxy.insertLocal(StorageProxy.java:350)
        at 
org.apache.cassandra.service.StorageProxy.sendToHintedEndpoints(StorageProxy.java:230)
        at 
org.apache.cassandra.service.StorageProxy.access$000(StorageProxy.java:62)
        at 
org.apache.cassandra.service.StorageProxy$1.apply(StorageProxy.java:99)
        at 
org.apache.cassandra.service.StorageProxy.performWrite(StorageProxy.java:199)
        at 
org.apache.cassandra.service.StorageProxy.mutate(StorageProxy.java:154)
        at 
org.apache.cassandra.thrift.CassandraServer.doInsert(CassandraServer.java:551)
        at 
org.apache.cassandra.thrift.CassandraServer.internal_batch_mutate(CassandraServer.java:503)
        at 
org.apache.cassandra.thrift.CassandraServer.batch_mutate(CassandraServer.java:511)
        at 
org.apache.cassandra.thrift.Cassandra$Processor$batch_mutate.process(Cassandra.java:3454)
        at 
org.apache.cassandra.thrift.Cassandra$Processor.process(Cassandra.java:2889)
        at 
org.apache.cassandra.thrift.CustomTThreadPoolServer$WorkerProcess.run(CustomTThreadPoolServer.java:187)
        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)
ERROR [pool-2-thread-178] 2011-04-26 19:32:04,296 Cassandra.java (line 3462) 
Internal error processing batch_mutate
java.util.concurrent.RejectedExecutionException: ThreadPoolExecutor has shut 
down
        at 
org.apache.cassandra.concurrent.DebuggableThreadPoolExecutor$1.rejectedExecution(DebuggableThreadPoolExecutor.java:73)
        at 
java.util.concurrent.ThreadPoolExecutor.reject(ThreadPoolExecutor.java:767)

which seems more understandable if it is under shutdown.

Mainly reacting to the class not found exception in this case. 
Want to check that this is not a problem as I prefer my commitlogs to be right 
:)

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to