You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by "Ariel Weisberg (JIRA)" <ji...@apache.org> on 2015/11/02 23:33:27 UTC
[jira] [Updated] (CASSANDRA-10246) Fix named values in batches for
native protocol
[ https://issues.apache.org/jira/browse/CASSANDRA-10246?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Ariel Weisberg updated CASSANDRA-10246:
---------------------------------------
Assignee: (was: Ariel Weisberg)
Reproduced In: 2.2.1, 2.1.9 (was: 2.1.9, 2.2.1)
> Fix named values in batches for native protocol
> -----------------------------------------------
>
> Key: CASSANDRA-10246
> URL: https://issues.apache.org/jira/browse/CASSANDRA-10246
> Project: Cassandra
> Issue Type: Sub-task
> Components: CQL
> Reporter: Michael Penick
> Labels: client-impacting
> Fix For: 3.x
>
>
> 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)