Uploaded image for project: 'Cassandra'
  1. Cassandra
  2. CASSANDRA-10583

After bulk loading CQL query on timestamp column returns wrong result

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Normal
    • Resolution: Fixed
    • 2.1.x, 2.2.x, 3.11.5
    • None
    • None
    • Windows 2008 R2, Java x64 1.8.0_60, CentOS 7, Java 1.8.0._65

    • Normal

    Description

      I have this table:

      CREATE TABLE test (
          tag text,
          group int,
          timestamp timestamp,
          value double,
          PRIMARY KEY (tag, group, timestamp)
      ) WITH CLUSTERING ORDER BY (group ASC, timestamp DESC)
      

      First I used CQLSSTableWriter to bulk load a bunch of sstables. Then I ran this query:

      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)
      

      The result is obviously wrong.

      If I run this query:

      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)
      

      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.

      Attachments

        1. timeseries_test.zip
          4 kB
          Kai Wang
        2. screenshot.png
          33 kB
          Kai Wang
        3. trace_on.txt
          10 kB
          Kai Wang

        Activity

          People

            Unassigned Unassigned
            depend Kai Wang
            Votes:
            2 Vote for this issue
            Watchers:
            4 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: