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