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

Sergio Bossa commented on CASSANDRA-7047:
-----------------------------------------

So, a couple of comments:

1) You changed the semantics of counter mutations triggers: while previously it 
was possible to apply triggers on counters provided they didn't generate extra 
mutations, now it is not (as you paired the CounterMutation instanceof check 
with a direct exception).
2) You make semantic side effects on the input mutations by always grouping 
them in case of triggers (the other reason I kept them separate).
3) The computational complexity is higher because of repeated use of map 
get/put.

In the end, I have a slight preference for my version (with your IMutation 
fix), or I think at least point #1 above should be addressed, unless 
intentional?

> TriggerExecutor should group mutations by row key
> -------------------------------------------------
>
>                 Key: CASSANDRA-7047
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-7047
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: Core
>            Reporter: Sergio Bossa
>            Assignee: Sergio Bossa
>         Attachments: 7047-v2.txt, 7047-v3.txt, CASSANDRA-7047.patch
>
>
> TriggerExecutor doesn't currently group mutations returned by triggers even 
> if belonging to the same row key: while harmful per se (at least, I think 
> so), this is definitely a performance problem, because each mutation is a 
> *cluster* mutation, generating more network traffic, more disk IO and more 
> index calls (if present).



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Reply via email to