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-10608) Adding a dynamic column to a compact storage table with the same name as the partition key causes a memtable flush deadlock
Date Mon, 02 Nov 2015 15:42:27 GMT

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

Sylvain Lebresne commented on CASSANDRA-10608:
----------------------------------------------

That last unit tests looks good. The {{CQLMetricsTest.testPreparedStatementsExecuted}} is
definitively not related to this (I've seen that test flapping on other branches). Let's wait
on the new dtest run to finish just to be sure and I'll commit (but please do ping me once
the dtests finish since I won't get an email :)).

> Adding a dynamic column to a compact storage table with the same name as the partition
key causes a memtable flush deadlock
> ---------------------------------------------------------------------------------------------------------------------------
>
>                 Key: CASSANDRA-10608
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-10608
>             Project: Cassandra
>          Issue Type: Bug
>            Reporter: Mike Adamson
>            Assignee: Mike Adamson
>            Priority: Minor
>             Fix For: 3.0.0
>
>         Attachments: 10608.txt
>
>
> The reproduction steps for this are as follows: 
> # Create the following schema:
> {noformat}
> CREATE KEYSPACE ks WITH replication = { 'class': 'SimpleStrategy', 'replication_factor':
'1'};
> CREATE TABLE ks.cf (k int, v int, PRIMARY KEY(k)) WITH COMPACT STORAGE;
> {noformat}
> # Using the thrift client execute the following:
> {noformat}
>         Column column = new Column(ByteBufferUtil.bytes("k"));
>         column.setValue(ByteBufferUtil.bytes(1));
>         column.setTimestamp(1);
>         client.insert(key, new ColumnParent(compactCf), column, ConsistencyLevel.ONE);
> {noformat}
> This causes an invalid {{PartitionUpdate}} to be added to {{Memtable}} containing a {{PartitionColumns}}
containing the partition key {{ColumnDefinition}}.
> This happens because {{LegacyLayout.decodeCellName}} does not check whether the {{ColumnDefinition}}
is a partition key 



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

Mime
View raw message