cassandra-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Stefania (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (CASSANDRA-9673) Improve batchlog write path
Date Tue, 14 Jul 2015 10:02:05 GMT

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

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

[~iamaleksey] do we also need a BATCH_RESPONSE verb or should we just keep on using REQUEST_RESPONSE?
I've added BATCH_RESPONSE but it is functionally identical to REQUEST_RESPONSE. The same goes
for the handler, WriteResponseHandler, which I have not duplicated instead. Another question
is whether we need to introduce a new stage or is it OK to keep on using Stage.MUTATION?

I started writing dtest to check that we can still support older nodes, e.g. 2.2, but things
are quite broken at the moment, for example in ReadCommand serializer:

{code}
if (version < MessagingService.VERSION_30)
    throw new UnsupportedOperationException();
{code}

cc [~slebresne] - do we already have a ticket or plan for fixing compatibility with older
nodes?


> 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
>
>
> 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)

Mime
View raw message