You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@cassandra.apache.org by J Ramesh Kumar <ra...@gmail.com> on 2013/11/26 12:25:30 UTC
Unable to load dependent classes of a trigger
Hi,
I wrote a trigger and it will call internally some other classes. I added
all the dependent classes into a jar and put it into the "*conf/tiggers*".
But cassandra does not load the dependent classes which available in the
jar. How can Solve this issue ?
Thanks,
Ramesh
Traces which found in the cassandra log
----------------------------------------------------
DEBUG [Thrift:1] 2013-11-26 16:44:05,509 CustomClassLoader.java (line 115)
Class not found using parent class loader,
java.lang.ClassNotFoundException:
com.zoho.predict.trigger.AATriggersThreadLocal
at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
at java.lang.ClassLoader.loadClass(ClassLoader.java:425)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
at
org.apache.cassandra.triggers.CustomClassLoader.loadClassInternal(CustomClassLoader.java:111)
at
org.apache.cassandra.triggers.CustomClassLoader.loadClass(CustomClassLoader.java:103)
at
com.zoho.predict.trigger.ArchiveTrigger.getString(ArchiveTrigger.java:68)
at
com.zoho.predict.trigger.ArchiveTrigger.augment(ArchiveTrigger.java:49)
at
org.apache.cassandra.triggers.TriggerExecutor.execute(TriggerExecutor.java:123)
at
org.apache.cassandra.triggers.TriggerExecutor.execute(TriggerExecutor.java:73)
at
org.apache.cassandra.service.StorageProxy.mutateWithTriggers(StorageProxy.java:547)
at
org.apache.cassandra.cql3.statements.ModificationStatement.executeWithoutCondition(ModificationStatement.java:379)
at
org.apache.cassandra.cql3.statements.ModificationStatement.execute(ModificationStatement.java:363)
at
org.apache.cassandra.cql3.QueryProcessor.processStatement(QueryProcessor.java:101)
at
org.apache.cassandra.cql3.QueryProcessor.process(QueryProcessor.java:117)
at
org.apache.cassandra.cql3.QueryProcessor.process(QueryProcessor.java:108)
at
org.apache.cassandra.thrift.CassandraServer.execute_cql3_query(CassandraServer.java:1933)
at
org.apache.cassandra.thrift.Cassandra$Processor$execute_cql3_query.getResult(Cassandra.java:4394)
at
org.apache.cassandra.thrift.Cassandra$Processor$execute_cql3_query.getResult(Cassandra.java:4378)
at org.apache.thrift.ProcessFunction.process(ProcessFunction.java:39)
at org.apache.thrift.TBaseProcessor.process(TBaseProcessor.java:39)
at
org.apache.cassandra.thrift.CustomTThreadPoolServer$WorkerProcess.run(CustomTThreadPoolServer.java:194)
at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:744)
Re: Unable to load dependent classes of a trigger
Posted by J Ramesh Kumar <ra...@gmail.com>.
Hi,
The trace printed because I enabled "debug". But actually my custom classes
are loaded successfully with that jar. The exception make me confusion.
This is FYI.
Thanks,
Ramesh
On Tue, Nov 26, 2013 at 4:55 PM, J Ramesh Kumar <ra...@gmail.com>wrote:
> Hi,
>
> I wrote a trigger and it will call internally some other classes. I added
> all the dependent classes into a jar and put it into the "*conf/tiggers*".
> But cassandra does not load the dependent classes which available in the
> jar. How can Solve this issue ?
>
> Thanks,
> Ramesh
>
> Traces which found in the cassandra log
> ----------------------------------------------------
> DEBUG [Thrift:1] 2013-11-26 16:44:05,509 CustomClassLoader.java (line 115)
> Class not found using parent class loader,
> java.lang.ClassNotFoundException:
> com.zoho.predict.trigger.AATriggersThreadLocal
> at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
> at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
> at java.security.AccessController.doPrivileged(Native Method)
> at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
> at java.lang.ClassLoader.loadClass(ClassLoader.java:425)
> at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
> at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
> at
> org.apache.cassandra.triggers.CustomClassLoader.loadClassInternal(CustomClassLoader.java:111)
> at
> org.apache.cassandra.triggers.CustomClassLoader.loadClass(CustomClassLoader.java:103)
> at
> com.zoho.predict.trigger.ArchiveTrigger.getString(ArchiveTrigger.java:68)
> at
> com.zoho.predict.trigger.ArchiveTrigger.augment(ArchiveTrigger.java:49)
> at
> org.apache.cassandra.triggers.TriggerExecutor.execute(TriggerExecutor.java:123)
> at
> org.apache.cassandra.triggers.TriggerExecutor.execute(TriggerExecutor.java:73)
> at
> org.apache.cassandra.service.StorageProxy.mutateWithTriggers(StorageProxy.java:547)
> at
> org.apache.cassandra.cql3.statements.ModificationStatement.executeWithoutCondition(ModificationStatement.java:379)
> at
> org.apache.cassandra.cql3.statements.ModificationStatement.execute(ModificationStatement.java:363)
> at
> org.apache.cassandra.cql3.QueryProcessor.processStatement(QueryProcessor.java:101)
> at
> org.apache.cassandra.cql3.QueryProcessor.process(QueryProcessor.java:117)
> at
> org.apache.cassandra.cql3.QueryProcessor.process(QueryProcessor.java:108)
> at
> org.apache.cassandra.thrift.CassandraServer.execute_cql3_query(CassandraServer.java:1933)
> at
> org.apache.cassandra.thrift.Cassandra$Processor$execute_cql3_query.getResult(Cassandra.java:4394)
> at
> org.apache.cassandra.thrift.Cassandra$Processor$execute_cql3_query.getResult(Cassandra.java:4378)
> at org.apache.thrift.ProcessFunction.process(ProcessFunction.java:39)
> at org.apache.thrift.TBaseProcessor.process(TBaseProcessor.java:39)
> at
> org.apache.cassandra.thrift.CustomTThreadPoolServer$WorkerProcess.run(CustomTThreadPoolServer.java:194)
> at
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
> at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
> at java.lang.Thread.run(Thread.java:744)
>
>