[ https://issues.apache.org/jira/browse/CASSANDRA-1311?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12975462#action_12975462 ]
Maxim Grinev commented on CASSANDRA-1311: ----------------------------------------- The implementation guarantees that triggers will be executed at least once even if the update is only partially executed. The replicas that are updated will take care of that. It means that if a write updates *some* replica and the write coordinator crashed before executing triggers and acknowledging the client the triggers will be executed (as many times as the number of replicas were updated). So missing an update is not a problem. Triggers are a good solution for indexing. The only thing that is triggers are not good for is where the trigger procedure is not idempontent. For example, when a trigger increments a counter, the counter will be incremented with the same value more than once if the write coordinator failed. > Support (asynchronous) triggers > ------------------------------- > > Key: CASSANDRA-1311 > URL: https://issues.apache.org/jira/browse/CASSANDRA-1311 > Project: Cassandra > Issue Type: New Feature > Components: Contrib > Reporter: Maxim Grinev > Fix For: 0.8 > > Attachments: HOWTO-PatchAndRunTriggerExample-update1.txt, > HOWTO-PatchAndRunTriggerExample.txt, ImplementationDetails-update1.pdf, > ImplementationDetails.pdf, trunk-967053.txt, trunk-984391-update1.txt, > trunk-984391-update2.txt > > > Asynchronous triggers is a basic mechanism to implement various use cases of > asynchronous execution of application code at database side. For example to > support indexes and materialized views, online analytics, push-based data > propagation. > Please find the motivation, triggers description and list of applications: > http://maxgrinev.com/2010/07/23/extending-cassandra-with-asynchronous-triggers/ > An example of using triggers for indexing: > http://maxgrinev.com/2010/07/23/managing-indexes-in-cassandra-using-async-triggers/ > Implementation details are attached. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.