You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by "Yuki Morishita (JIRA)" <ji...@apache.org> on 2013/07/25 19:41:48 UTC

[jira] [Created] (CASSANDRA-5805) CQL 'set' returns incorrect value

Yuki Morishita created CASSANDRA-5805:
-----------------------------------------

             Summary: CQL 'set' returns incorrect value
                 Key: CASSANDRA-5805
                 URL: https://issues.apache.org/jira/browse/CASSANDRA-5805
             Project: Cassandra
          Issue Type: Bug
    Affects Versions: 2.0 beta 2
            Reporter: Yuki Morishita
            Priority: Critical


CQL 'set' returns incorrect value after flush.
Create the following table:

{code}
CREATE KEYSPACE ks WITH replication = {'class': 'SimpleStrategy', 'replication_factor': 1};
USE ks;
CREATE TABLE cf ( k int PRIMARY KEY , s set<int> );
{code}

Insert data:

{code}
INSERT INTO cf (k, s) VALUES (1, {1});
INSERT INTO cf (k, s) VALUES (1, {2});
{code}

This should return:

{code}
cqlsh:ks> SELECT * FROM cf;

 k | s
---+--------
 1 | {2}
{code}

and it does when no flush has happened.

But when I do flush after each insert, it starts returning:

{code}
cqlsh:ks> SELECT * FROM cf;

 k | s
---+--------
 1 | {1, 2}
{code}

'system.local' table flushes every time it inserts(updates) tokens, and this behavior is causing 'nodetool move' to act weirdly.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira