cassandra-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "T Jake Luciani (JIRA)" <j...@apache.org>
Subject [jira] [Updated] (CASSANDRA-7485) Missing data from secondary index when secondary index is against a compound PK member
Date Tue, 20 Jan 2015 17:10:01 GMT

     [ https://issues.apache.org/jira/browse/CASSANDRA-7485?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

T Jake Luciani updated CASSANDRA-7485:
--------------------------------------
    Fix Version/s:     (was: 2.0.12)
                   2.0.13

> Missing data from secondary index when secondary index is against a compound PK member
> --------------------------------------------------------------------------------------
>
>                 Key: CASSANDRA-7485
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-7485
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Core
>            Reporter: Vahram Sukyas
>            Assignee: Sam Tunnicliffe
>             Fix For: 2.0.13
>
>
> Under 2.0.8, assuming the following schema:
> CREATE TABLE foo (
>   a text,
>   b text,
>   c text,
>   d text,
>   PRIMARY KEY (a, b)
> );
> CREATE INDEX foo_b_idx ON foo (b);
> If you do a delete against c or d but specify a and b in the where clause, it will remove
the secondary index reference to b (verified that it removes it from the underlying SSTable
as well).
> Example:
> cqlsh:test> insert into foo (a, b, c, d) values ('test','test2','to_be_deleted', 'test3');
> cqlsh:test> select * from foo;
>  a    | b     | c             | d
> ------+-------+---------------+-------
>  test | test2 | to_be_deleted | test3
> (1 rows)
> cqlsh:test> delete c from foo where a = 'test' and b = 'test2';
> cqlsh:test> select * from foo where b = 'test2';
> (0 rows)
> cqlsh:test> select * from foo where a = 'test' and b = 'test2';
>  a    | b     | c    | d
> ------+-------+------+-------
>  test | test2 | null | test3
> (1 rows)
> cqlsh:test> select * from foo;
>  a    | b     | c    | d
> ------+-------+------+-------
>  test | test2 | null | test3
> (1 rows)
> Dropping and recreating the index in CQL brings the secondary index reference back.



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

Mime
View raw message