[ 
https://issues.apache.org/jira/browse/CASSANDRA-4954?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13496360#comment-13496360
 ] 

Edward Capriolo commented on CASSANDRA-4954:
--------------------------------------------

One way to handle the dynamic bits are "add trigger [source] [sourcespec]"

source spec could be "jar" in which case the source could be "jar:///a/b/c.jar 
or "http://server/a.jar"; 
source spec could be "groovy" in which case the source is actually an embedded 
class "class triggerhandler { handleTrigger(event){} }"
...scala...
...clojure...
etc
                
> Store trigger jar file dependencies in system keyspace
> ------------------------------------------------------
>
>                 Key: CASSANDRA-4954
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-4954
>             Project: Cassandra
>          Issue Type: New Feature
>          Components: Core
>            Reporter: Patrick McFadin
>             Fix For: 1.3
>
>
> The implementation of triggers requires the use of jar files to be stored in 
> the local filesystem, per node. See 
> ([https://issues.apache.org/jira/browse/CASSANDRA-1311]) 
> I'm proposing that instead of using the filesystem, jars would be stored in 
> the system keyspace. This would greatly reduce the operational complexity of 
> implementing triggers on multiple node clusters. Some benefits would include:
> * Triggers and dependencies would be part of a snapshot for backup and restore
> * Every node would have a consistent version
> * Everything needed for the trigger would be a part of bootstrap
> Some details to start the conversation:
> * Have a list of jars for each trigger be made available via JMX
> * Expose the jar upload using CQL when trigger is created (USING FILE x) 
> * Store the version number or date for each jar
> * Implement a classloader trigger when jars are updated
> * Provide some sort of guarantee that triggers aren't active until all nodes 
> have the same version of jar(s)

--
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

Reply via email to