cassandra-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Philip Thompson (JIRA)" <j...@apache.org>
Subject [jira] [Updated] (CASSANDRA-8421) Cassandra 2.1.1 UDT not returning value for LIST type as UDT
Date Mon, 08 Dec 2014 16:39:13 GMT

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

Philip Thompson updated CASSANDRA-8421:
---------------------------------------
    Reproduced In: 2.1.2, 2.1.1  (was: 2.1.1, 2.1.2)
       Attachment: 8421-unittest.txt

[~slebresne], I have attached four unit tests, only one of which shows the problem. If secondary
indexes are on both fields, or are just on status_key, there is no issue.
If there is only an index on field_values, not on status_key, but no filtering needs done,
i.e., all rows fit the criteria, there is no issue.

The problem occurs when there is only an index on field_values, no on status_key, but not
all rows have the correct status_key, in which case not all valid rows are returned.

> Cassandra 2.1.1 UDT not returning value for LIST type as UDT
> ------------------------------------------------------------
>
>                 Key: CASSANDRA-8421
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-8421
>             Project: Cassandra
>          Issue Type: Bug
>          Components: API
>         Environment: single node cassandra 
>            Reporter: madheswaran
>            Assignee: Sylvain Lebresne
>             Fix For: 3.0, 2.1.3
>
>         Attachments: 8421-unittest.txt, entity_data.csv
>
>
> I using List and its data type is UDT.
> UDT:
> {code}
> CREATE TYPE
> fieldmap (
>  key text,
>  value text
> );
> {code}
> TABLE:
> {code}
> CREATE TABLE entity (
>   entity_id uuid PRIMARY KEY,
>   begining int,
>   domain text,
>   domain_type text,
>   entity_template_name text,
>   field_values list<fieldmap>,
>   global_entity_type text,
>   revision_time timeuuid,
>   status_key int,
>   status_name text,
>   uuid timeuuid
>   ) {code}
> INDEX:
> {code}
> CREATE INDEX entity_domain_idx_1 ON galaxy_dev.entity (domain);
> CREATE INDEX entity_field_values_idx_1 ON galaxy_dev.entity (field_values);
> CREATE INDEX entity_global_entity_type_idx_1 ON galaxy_dev.entity (gen_type );
> {code}
> QUERY
> {code}
> SELECT * FROM entity WHERE status_key < 3 and field_values contains {key: 'userName',
value: 'Sprint5_200002'} and gen_type = 'USER' and domain = 'S4_1017.abc.com' allow filtering;
> {code}
> The above query return value for some row and not for many rows but those rows and data's
are exist.
> Observation:
> If I execute query with other than field_maps, then it returns value. I suspect the problem
with LIST with UDT.
> I have single node cassadra DB. Please let me know why this strange behavior from cassandra.



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

Mime
View raw message