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

Stefania commented on CASSANDRA-9673:
-------------------------------------

[~iamaleksey] I still need to do mixed version testing and check the CI results 
but the rebase on 3.0 and the changes you requested are available for review if 
you want to speed things up. Else I'll post another update when the tests are 
complete.

I've left you a question in SS with a TODO, I am no sure why in {{mutateMV}} we 
insert a batch mutation containing all mutations, for every single mutation, it 
seems wrong to me.

For replaying legacy mutations, I've opted for a conversion done before 
replaying, which is not very efficient, but keeps the code clean. I figured 
mixed version clusters are transient but if it concerns you I can enhance it.

> Improve batchlog write path
> ---------------------------
>
>                 Key: CASSANDRA-9673
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-9673
>             Project: Cassandra
>          Issue Type: Improvement
>            Reporter: Aleksey Yeschenko
>            Assignee: Stefania
>             Fix For: 3.0.0 rc1
>
>         Attachments: 9673_001.tar.gz, 9673_004.tar.gz, 
> gc_times_first_node_patched_004.png, gc_times_first_node_trunk_004.png
>
>
> Currently we allocate an on-heap {{ByteBuffer}} to serialize the batched 
> mutations into, before sending it to a distant node, generating unnecessary 
> garbage (potentially a lot of it).
> With materialized views using the batchlog, it would be nice to optimise the 
> write path:
> - introduce a new verb ({{Batch}})
> - introduce a new message ({{BatchMessage}}) that would encapsulate the 
> mutations, expiration, and creation time (similar to {{HintMessage}} in 
> CASSANDRA-6230)
> - have MS serialize it directly instead of relying on an intermediate buffer
> To avoid merely shifting the temp buffer to the receiving side(s) we should 
> change the structure of the batchlog table to use a list or a map of 
> individual mutations.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to