You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by "Brandon Williams (JIRA)" <ji...@apache.org> on 2013/08/05 20:34:48 UTC

[jira] [Reopened] (CASSANDRA-5826) Fix trigger directory detection code

     [ https://issues.apache.org/jira/browse/CASSANDRA-5826?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Brandon Williams reopened CASSANDRA-5826:
-----------------------------------------


Reopening because first of all the directory detection code doesn't work when the directory does not exist:

{noformat}
ERROR 18:32:00,800 Exception in thread Thread[NonPeriodicTasks:1,5,main]
java.lang.ExceptionInInitializerError
        at org.apache.cassandra.service.StorageProxy.mutateWithTriggers(StorageProxy.java:535)
        at org.apache.cassandra.cql3.statements.ModificationStatement.executeWithoutCondition(ModificationStatement.java:358)
        at org.apache.cassandra.cql3.statements.ModificationStatement.execute(ModificationStatement.java:342)
        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:130)
        at org.apache.cassandra.auth.Auth.setupDefaultSuperuser(Auth.java:209)
        at org.apache.cassandra.auth.Auth.access$000(Auth.java:44)
        at org.apache.cassandra.auth.Auth$1.run(Auth.java:144)
        at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
        at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
        at java.util.concurrent.FutureTask.run(FutureTask.java:166)
        at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:178)
        at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:292)
        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:722)
Caused by: java.lang.NullPointerException
        at org.apache.cassandra.utils.FBUtilities.cassandraTriggerDir(FBUtilities.java:351)
        at org.apache.cassandra.triggers.TriggerExecutor.<init>(TriggerExecutor.java:45)
        at org.apache.cassandra.triggers.TriggerExecutor.<clinit>(TriggerExecutor.java:41)
        ... 17 more
{noformat}

And secondly, I don't think we should throw if the directory doesn't exist, instead just move along without triggers (perhaps log a warning)
                
> Fix trigger directory detection code
> ------------------------------------
>
>                 Key: CASSANDRA-5826
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-5826
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Core
>    Affects Versions: 2.0 beta 2
>         Environment: OS X
>            Reporter: Aleksey Yeschenko
>            Assignee: Vijay
>              Labels: triggers
>             Fix For: 2.0 rc1
>
>         Attachments: 0001-5826.patch
>
>
> At least when building from source, Cassandra determines the trigger directory wrong. C* calculates the trigger directory as 'build/triggers' instead of 'triggers'.
> FBUtilities.cassandraHomeDir() is to blame, and should be replaced with something more robust.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira