cassandra-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Yuki Morishita (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (CASSANDRA-10583) After bulk loading CQL query on timestamp column returns wrong result
Date Wed, 25 May 2016 15:44:12 GMT

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

Yuki Morishita commented on CASSANDRA-10583:
--------------------------------------------

I think the problem here is in your CQLSSTableWriter program you didn't specify {{CLUSTERING
ORDER BY}}, so the data are inserted in ascending order, but in Cassandra the schema treated
it as descending since you created that way, query result is messed up.

Can you update your generation program to use schema that matches in Cassandra?

> After bulk loading CQL query on timestamp column returns wrong result
> ---------------------------------------------------------------------
>
>                 Key: CASSANDRA-10583
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-10583
>             Project: Cassandra
>          Issue Type: Bug
>         Environment: Windows 2008 R2, Java x64 1.8.0_60, CentOS 7, Java 1.8.0._65
>            Reporter: Kai Wang
>             Fix For: 2.1.x, 2.2.x, 3.x
>
>         Attachments: screenshot.png, timeseries_test.zip, trace_on.txt
>
>
> I have this table:
> {noformat}
> CREATE TABLE test (
>     tag text,
>     group int,
>     timestamp timestamp,
>     value double,
>     PRIMARY KEY (tag, group, timestamp)
> ) WITH CLUSTERING ORDER BY (group ASC, timestamp DESC)
> {noformat}
> First I used CQLSSTableWriter to bulk load a bunch of sstables. Then I ran this query:
> {noformat}
> cqlsh> select * from test where tag = 'MSFT' and group = 1 and timestamp ='2004-12-15
16:00:00-0500';
>  tag  | group | timestamp                | value
> ------+-------+--------------------------+-------
>  MSFT |     1 | 2004-12-15 21:00:00+0000 | 27.11
>  MSFT |     1 | 2004-12-16 21:00:00+0000 | 27.16
>  MSFT |     1 | 2004-12-17 21:00:00+0000 | 26.96
>  MSFT |     1 | 2004-12-20 21:00:00+0000 | 26.95
>  MSFT |     1 | 2004-12-21 21:00:00+0000 | 27.07
>  MSFT |     1 | 2004-12-22 21:00:00+0000 | 26.98
>  MSFT |     1 | 2004-12-23 21:00:00+0000 | 27.01
>  MSFT |     1 | 2004-12-27 21:00:00+0000 | 26.85
>  MSFT |     1 | 2004-12-28 21:00:00+0000 | 26.95
>  MSFT |     1 | 2004-12-29 21:00:00+0000 |  26.9
>  MSFT |     1 | 2004-12-30 21:00:00+0000 | 26.76
> (11 rows)
> {noformat}
> The result is obviously wrong.
> If I run this query:
> {noformat}
> cqlsh> select * from test where tag = 'MSFT' and group = 1 and timestamp ='2004-12-16
16:00:00-0500';
>  tag | group | timestamp | value
> -----+-------+-----------+-------
> (0 rows)
> {noformat}
> In DevCenter I tried to create a similar table and insert a few rows but couldn't reproduce
this. This may have something to do with the bulk loading process. But still, the fact cqlsh
returns data that doesn't match the query is concerning.



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

Mime
View raw message