cassandra-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Sylvain Lebresne (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (CASSANDRA-10246) Named values don't work with batches
Date Fri, 30 Oct 2015 08:36:27 GMT

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

Sylvain Lebresne commented on CASSANDRA-10246:
----------------------------------------------

Yeah, I think the fix version on this is wrong. It's sad that named values don't work in the
protocol v4 but that's the way it is. The only sensible solution now is to fix that in the
protocol v5, which does mean we should make this a subtask of CASSANDRA-9362, but also that
this won't make 3.1 (we don't have decide yet when we want to go ahead with protocol v5, but
it'll probably not be before a few months).

I'll add a note to the protocol doc that named values in batch actually don't work and can't
be used in the meantime.

> Named values don't work with batches
> ------------------------------------
>
>                 Key: CASSANDRA-10246
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-10246
>             Project: Cassandra
>          Issue Type: Bug
>          Components: CQL
>            Reporter: Michael Penick
>            Assignee: Ariel Weisberg
>              Labels: client-impacting
>             Fix For: 2.1.x, 2.2.x, 3.1
>
>
> This is broken at the protocol-level and in the implementation.
> At the protocol-level the {{<flags>}} component of the batch comes after the queries.
That means the protocol parser would need to read ahead (and back track) to determine the
values encoding and correctly read the values from the query entries. Also, a batch-level
setting for named values forces all queries to use the same encoding. Should batches force
a single, homogenous query value encoding? (This is confusing)
> In the implementation, values are indiscriminately read using {{CBUtil.readValueList()}},
and the batch flags are never checked (for {{(Flag.NAMES_FOR_VALUES}}) to see if {{CBUtil.readNameAndValueList()}}
should be called instead: https://github.com/apache/cassandra/blob/cassandra-2.1/src/java/org/apache/cassandra/transport/messages/BatchMessage.java#L64
> Proposed solution: CASSANDRA-10247



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

Mime
View raw message