Aleksey Yeschenko created CASSANDRA-9673:
--------------------------------------------

             Summary: Improve batchlog write path
                 Key: CASSANDRA-9673
                 URL: https://issues.apache.org/jira/browse/CASSANDRA-9673
             Project: Cassandra
          Issue Type: Improvement
            Reporter: Aleksey Yeschenko
             Fix For: 3.x


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