[jira] [Updated] (CASSANDRA-9116) Indexes lost on upgrading to 2.1.4

2015-12-04 Thread Sam Tunnicliffe (JIRA)

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

Sam Tunnicliffe updated CASSANDRA-9116:
---
Component/s: Configuration

> Indexes lost on upgrading to 2.1.4
> --
>
> Key: CASSANDRA-9116
> URL: https://issues.apache.org/jira/browse/CASSANDRA-9116
> Project: Cassandra
>  Issue Type: Bug
>  Components: Configuration
>Reporter: Mark Dewey
>Assignee: Sam Tunnicliffe
>Priority: Blocker
> Fix For: 2.1.5
>
> Attachments: 9116.txt
>
>
> How to reproduce:
> # Create a 2.0.12 cluster
> # Create the following keyspace/table (or something similar, it's primarily 
> the indexes that matter to this case afaict)
> {noformat}
> CREATE KEYSPACE tshirts WITH replication = {'class': 
> 'NetworkTopologyStrategy', 'datacenter1': '1'}  AND durable_writes = true;
> CREATE TABLE tshirts.tshirtorders (
> store text,
> order_time timestamp,
> order_number uuid,
> color text,
> qty int,
> size text,
> PRIMARY KEY (store, order_time, order_number)
> ) WITH CLUSTERING ORDER BY (order_time ASC, order_number ASC)
> AND bloom_filter_fp_chance = 0.01
> AND caching = '{"keys":"ALL", "rows_per_partition":"NONE"}'
> AND comment = ''
> AND compaction = {'min_threshold': '4', 'class': 
> 'org.apache.cassandra.db.compaction.SizeTieredCompactionStrategy', 
> 'max_threshold': '32'}
> AND compression = {'sstable_compression': 
> 'org.apache.cassandra.io.compress.LZ4Compressor'}
> AND dclocal_read_repair_chance = 0.1
> AND default_time_to_live = 0
> AND gc_grace_seconds = 864000
> AND max_index_interval = 2048
> AND memtable_flush_period_in_ms = 0
> AND min_index_interval = 128
> AND read_repair_chance = 0.0
> AND speculative_retry = '99.0PERCENTILE';
> CREATE INDEX color ON tshirts.tshirtorders (color);
> CREATE INDEX size ON tshirts.tshirtorders (size);
> {noformat}
> # Load it with data
> # Stop the node (one node cluster is enough to replicate)
> # Upgrade the node to 2.1.4
> # Start the node
> # Optional: Run nodetool upgradesstables
> # Run the following queries:
> {noformat}
> SELECT * FROM tshirts.tshirtorders WHERE store = 'store 65';
> SELECT store, color, qty, size FROM tshirts.tshirtorders WHERE store = 'store 
> 65' AND color = 'red';
> {noformat}
> No rows containing will appear in the indexed table.
> Sample output:
> {noformat}
> cqlsh> SELECT * FROM tshirts.tshirtorders WHERE store = 'store 65';
>  store| order_time   | order_number | 
> color  | qty  | size
> --+--+--++--+--
>  store 65 | 2000-01-03 18:20:20+ | 457e60e6-da39-11e4-add3-42010af08298 | 
>red | 1295 |M
>  store 65 | 2000-01-04 01:29:21+ | 45947304-da39-11e4-add3-42010af08298 | 
>   grey | 2805 |M
>  store 65 | 2000-01-04 19:55:51+ | 45d69220-da39-11e4-add3-42010af08298 | 
>  brown | 3380 | XXXL
>  store 65 | 2000-01-04 22:45:07+ | 45e16894-da39-11e4-add3-42010af08298 | 
> yellow | 7000 |  XXL
>  store 65 | 2000-01-05 17:09:56+ | 46083bd6-da39-11e4-add3-42010af08298 | 
> purple | 2440 |S
>  store 65 | 2000-01-05 19:16:48+ | 460cadd8-da39-11e4-add3-42010af08298 | 
>  green | 5690 |L
>  store 65 | 2000-01-06 00:26:06+ | 461ccdbc-da39-11e4-add3-42010af08298 | 
>  brown | 9890 |P
>  store 65 | 2000-01-06 11:35:11+ | 4633aa00-da39-11e4-add3-42010af08298 | 
>  black | 9350 |P
>  store 65 | 2000-01-07 06:07:20+ | 4658e0ea-da39-11e4-add3-42010af08298 | 
>  black | 1300 |S
>  store 65 | 2000-01-07 06:47:40+ | 465be93e-da39-11e4-add3-42010af08298 | 
> purple | 9630 |   XL
>  store 65 | 2000-01-09 12:42:38+ | 46bafdd4-da39-11e4-add3-42010af08298 | 
> purple | 1470 |M
>  store 65 | 2000-01-09 19:07:35+ | 46c43e08-da39-11e4-add3-42010af08298 | 
>   pink | 6005 |S
>  store 65 | 2000-01-10 04:47:56+ | 46d4b170-da39-11e4-add3-42010af08298 | 
>red |  345 |   XL
>  store 65 | 2000-01-10 20:25:44+ | 46ef7d52-da39-11e4-add3-42010af08298 | 
>   pink |  420 |  XXL
>  store 65 | 2000-01-11 00:55:27+ | 46f7a84c-da39-11e4-add3-42010af08298 | 
> purple | 9045 |S
>  store 65 | 2000-01-11 17:54:25+ | 4724ea00-da39-11e4-add3-42010af08298 | 
>  green | 5030 |  XXL
>  store 65 | 2000-01-12 08:21:15+ | 473c0370-da39-11e4-add3-42010af08298 | 
>  white | 2860 |   XL
>  store 65 | 2000-01-12 17:09:19+ | 47497d2a-da39-11e4-add3-42010af08298 | 
>red | 6425 |L
>  store 65 | 2000-01-14 07:27:37+ | 478662a8-da39-11e4-add3-42010af08298 | 
>   pink |  330 | XXXL
>  store 65 | 2000-01-14 11:31:38+ | 478b43cc-da39-11e4-add3-42010af08298 | 
>   pink | 3335 |  XXL
>  store 65 | 2000-01-14 18:55:59+ | 47955a24-d

[jira] [Updated] (CASSANDRA-9116) Indexes lost on upgrading to 2.1.4

2015-04-03 Thread Jonathan Ellis (JIRA)

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

Jonathan Ellis updated CASSANDRA-9116:
--
Assignee: Sam Overton

> Indexes lost on upgrading to 2.1.4
> --
>
> Key: CASSANDRA-9116
> URL: https://issues.apache.org/jira/browse/CASSANDRA-9116
> Project: Cassandra
>  Issue Type: Bug
>  Components: Core
>Reporter: Mark Dewey
>Assignee: Sam Overton
>Priority: Blocker
> Fix For: 2.1.5
>
>
> How to reproduce:
> # Create a 2.0.12 cluster
> # Create the following keyspace/table (or something similar, it's primarily 
> the indexes that matter to this case afaict)
> {noformat}
> CREATE KEYSPACE tshirts WITH replication = {'class': 
> 'NetworkTopologyStrategy', 'datacenter1': '1'}  AND durable_writes = true;
> CREATE TABLE tshirts.tshirtorders (
> store text,
> order_time timestamp,
> order_number uuid,
> color text,
> qty int,
> size text,
> PRIMARY KEY (store, order_time, order_number)
> ) WITH CLUSTERING ORDER BY (order_time ASC, order_number ASC)
> AND bloom_filter_fp_chance = 0.01
> AND caching = '{"keys":"ALL", "rows_per_partition":"NONE"}'
> AND comment = ''
> AND compaction = {'min_threshold': '4', 'class': 
> 'org.apache.cassandra.db.compaction.SizeTieredCompactionStrategy', 
> 'max_threshold': '32'}
> AND compression = {'sstable_compression': 
> 'org.apache.cassandra.io.compress.LZ4Compressor'}
> AND dclocal_read_repair_chance = 0.1
> AND default_time_to_live = 0
> AND gc_grace_seconds = 864000
> AND max_index_interval = 2048
> AND memtable_flush_period_in_ms = 0
> AND min_index_interval = 128
> AND read_repair_chance = 0.0
> AND speculative_retry = '99.0PERCENTILE';
> CREATE INDEX color ON tshirts.tshirtorders (color);
> CREATE INDEX size ON tshirts.tshirtorders (size);
> {noformat}
> # Load it with data
> # Stop the node (one node cluster is enough to replicate)
> # Upgrade the node to 2.1.4
> # Start the node
> # Optional: Run nodetool upgradesstables
> # Run the following queries:
> {noformat}
> SELECT * FROM tshirts.tshirtorders WHERE store = 'store 65';
> SELECT store, color, qty, size FROM tshirts.tshirtorders WHERE store = 'store 
> 65' AND color = 'red';
> {noformat}
> No rows containing will appear in the indexed table.
> Sample output:
> {noformat}
> cqlsh> SELECT * FROM tshirts.tshirtorders WHERE store = 'store 65';
>  store| order_time   | order_number | 
> color  | qty  | size
> --+--+--++--+--
>  store 65 | 2000-01-03 18:20:20+ | 457e60e6-da39-11e4-add3-42010af08298 | 
>red | 1295 |M
>  store 65 | 2000-01-04 01:29:21+ | 45947304-da39-11e4-add3-42010af08298 | 
>   grey | 2805 |M
>  store 65 | 2000-01-04 19:55:51+ | 45d69220-da39-11e4-add3-42010af08298 | 
>  brown | 3380 | XXXL
>  store 65 | 2000-01-04 22:45:07+ | 45e16894-da39-11e4-add3-42010af08298 | 
> yellow | 7000 |  XXL
>  store 65 | 2000-01-05 17:09:56+ | 46083bd6-da39-11e4-add3-42010af08298 | 
> purple | 2440 |S
>  store 65 | 2000-01-05 19:16:48+ | 460cadd8-da39-11e4-add3-42010af08298 | 
>  green | 5690 |L
>  store 65 | 2000-01-06 00:26:06+ | 461ccdbc-da39-11e4-add3-42010af08298 | 
>  brown | 9890 |P
>  store 65 | 2000-01-06 11:35:11+ | 4633aa00-da39-11e4-add3-42010af08298 | 
>  black | 9350 |P
>  store 65 | 2000-01-07 06:07:20+ | 4658e0ea-da39-11e4-add3-42010af08298 | 
>  black | 1300 |S
>  store 65 | 2000-01-07 06:47:40+ | 465be93e-da39-11e4-add3-42010af08298 | 
> purple | 9630 |   XL
>  store 65 | 2000-01-09 12:42:38+ | 46bafdd4-da39-11e4-add3-42010af08298 | 
> purple | 1470 |M
>  store 65 | 2000-01-09 19:07:35+ | 46c43e08-da39-11e4-add3-42010af08298 | 
>   pink | 6005 |S
>  store 65 | 2000-01-10 04:47:56+ | 46d4b170-da39-11e4-add3-42010af08298 | 
>red |  345 |   XL
>  store 65 | 2000-01-10 20:25:44+ | 46ef7d52-da39-11e4-add3-42010af08298 | 
>   pink |  420 |  XXL
>  store 65 | 2000-01-11 00:55:27+ | 46f7a84c-da39-11e4-add3-42010af08298 | 
> purple | 9045 |S
>  store 65 | 2000-01-11 17:54:25+ | 4724ea00-da39-11e4-add3-42010af08298 | 
>  green | 5030 |  XXL
>  store 65 | 2000-01-12 08:21:15+ | 473c0370-da39-11e4-add3-42010af08298 | 
>  white | 2860 |   XL
>  store 65 | 2000-01-12 17:09:19+ | 47497d2a-da39-11e4-add3-42010af08298 | 
>red | 6425 |L
>  store 65 | 2000-01-14 07:27:37+ | 478662a8-da39-11e4-add3-42010af08298 | 
>   pink |  330 | XXXL
>  store 65 | 2000-01-14 11:31:38+ | 478b43cc-da39-11e4-add3-42010af08298 | 
>   pink | 3335 |  XXL
>  store 65 | 2000-01-14 18:55:59+ | 47955a24-da39-11e4-add3-42010af08298 | 
> yellow |  500 |P
>

[jira] [Updated] (CASSANDRA-9116) Indexes lost on upgrading to 2.1.4

2015-04-03 Thread Jonathan Ellis (JIRA)

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

Jonathan Ellis updated CASSANDRA-9116:
--
Assignee: Sam Tunnicliffe  (was: Sam Overton)

> Indexes lost on upgrading to 2.1.4
> --
>
> Key: CASSANDRA-9116
> URL: https://issues.apache.org/jira/browse/CASSANDRA-9116
> Project: Cassandra
>  Issue Type: Bug
>  Components: Core
>Reporter: Mark Dewey
>Assignee: Sam Tunnicliffe
>Priority: Blocker
> Fix For: 2.1.5
>
>
> How to reproduce:
> # Create a 2.0.12 cluster
> # Create the following keyspace/table (or something similar, it's primarily 
> the indexes that matter to this case afaict)
> {noformat}
> CREATE KEYSPACE tshirts WITH replication = {'class': 
> 'NetworkTopologyStrategy', 'datacenter1': '1'}  AND durable_writes = true;
> CREATE TABLE tshirts.tshirtorders (
> store text,
> order_time timestamp,
> order_number uuid,
> color text,
> qty int,
> size text,
> PRIMARY KEY (store, order_time, order_number)
> ) WITH CLUSTERING ORDER BY (order_time ASC, order_number ASC)
> AND bloom_filter_fp_chance = 0.01
> AND caching = '{"keys":"ALL", "rows_per_partition":"NONE"}'
> AND comment = ''
> AND compaction = {'min_threshold': '4', 'class': 
> 'org.apache.cassandra.db.compaction.SizeTieredCompactionStrategy', 
> 'max_threshold': '32'}
> AND compression = {'sstable_compression': 
> 'org.apache.cassandra.io.compress.LZ4Compressor'}
> AND dclocal_read_repair_chance = 0.1
> AND default_time_to_live = 0
> AND gc_grace_seconds = 864000
> AND max_index_interval = 2048
> AND memtable_flush_period_in_ms = 0
> AND min_index_interval = 128
> AND read_repair_chance = 0.0
> AND speculative_retry = '99.0PERCENTILE';
> CREATE INDEX color ON tshirts.tshirtorders (color);
> CREATE INDEX size ON tshirts.tshirtorders (size);
> {noformat}
> # Load it with data
> # Stop the node (one node cluster is enough to replicate)
> # Upgrade the node to 2.1.4
> # Start the node
> # Optional: Run nodetool upgradesstables
> # Run the following queries:
> {noformat}
> SELECT * FROM tshirts.tshirtorders WHERE store = 'store 65';
> SELECT store, color, qty, size FROM tshirts.tshirtorders WHERE store = 'store 
> 65' AND color = 'red';
> {noformat}
> No rows containing will appear in the indexed table.
> Sample output:
> {noformat}
> cqlsh> SELECT * FROM tshirts.tshirtorders WHERE store = 'store 65';
>  store| order_time   | order_number | 
> color  | qty  | size
> --+--+--++--+--
>  store 65 | 2000-01-03 18:20:20+ | 457e60e6-da39-11e4-add3-42010af08298 | 
>red | 1295 |M
>  store 65 | 2000-01-04 01:29:21+ | 45947304-da39-11e4-add3-42010af08298 | 
>   grey | 2805 |M
>  store 65 | 2000-01-04 19:55:51+ | 45d69220-da39-11e4-add3-42010af08298 | 
>  brown | 3380 | XXXL
>  store 65 | 2000-01-04 22:45:07+ | 45e16894-da39-11e4-add3-42010af08298 | 
> yellow | 7000 |  XXL
>  store 65 | 2000-01-05 17:09:56+ | 46083bd6-da39-11e4-add3-42010af08298 | 
> purple | 2440 |S
>  store 65 | 2000-01-05 19:16:48+ | 460cadd8-da39-11e4-add3-42010af08298 | 
>  green | 5690 |L
>  store 65 | 2000-01-06 00:26:06+ | 461ccdbc-da39-11e4-add3-42010af08298 | 
>  brown | 9890 |P
>  store 65 | 2000-01-06 11:35:11+ | 4633aa00-da39-11e4-add3-42010af08298 | 
>  black | 9350 |P
>  store 65 | 2000-01-07 06:07:20+ | 4658e0ea-da39-11e4-add3-42010af08298 | 
>  black | 1300 |S
>  store 65 | 2000-01-07 06:47:40+ | 465be93e-da39-11e4-add3-42010af08298 | 
> purple | 9630 |   XL
>  store 65 | 2000-01-09 12:42:38+ | 46bafdd4-da39-11e4-add3-42010af08298 | 
> purple | 1470 |M
>  store 65 | 2000-01-09 19:07:35+ | 46c43e08-da39-11e4-add3-42010af08298 | 
>   pink | 6005 |S
>  store 65 | 2000-01-10 04:47:56+ | 46d4b170-da39-11e4-add3-42010af08298 | 
>red |  345 |   XL
>  store 65 | 2000-01-10 20:25:44+ | 46ef7d52-da39-11e4-add3-42010af08298 | 
>   pink |  420 |  XXL
>  store 65 | 2000-01-11 00:55:27+ | 46f7a84c-da39-11e4-add3-42010af08298 | 
> purple | 9045 |S
>  store 65 | 2000-01-11 17:54:25+ | 4724ea00-da39-11e4-add3-42010af08298 | 
>  green | 5030 |  XXL
>  store 65 | 2000-01-12 08:21:15+ | 473c0370-da39-11e4-add3-42010af08298 | 
>  white | 2860 |   XL
>  store 65 | 2000-01-12 17:09:19+ | 47497d2a-da39-11e4-add3-42010af08298 | 
>red | 6425 |L
>  store 65 | 2000-01-14 07:27:37+ | 478662a8-da39-11e4-add3-42010af08298 | 
>   pink |  330 | XXXL
>  store 65 | 2000-01-14 11:31:38+ | 478b43cc-da39-11e4-add3-42010af08298 | 
>   pink | 3335 |  XXL
>  store 65 | 2000-01-14 18:55:59+ | 47955a24-da39-11e4-add3-42010af08298

[jira] [Updated] (CASSANDRA-9116) Indexes lost on upgrading to 2.1.4

2015-04-07 Thread Sam Tunnicliffe (JIRA)

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

Sam Tunnicliffe updated CASSANDRA-9116:
---
Attachment: 9116.txt

The problem here is that the logic to locate pre-2.1 sstables is broken for 
index column families. CASSANDRA-5202 changed the default location to include 
the cfId, but the check in {{Directories}} which looks for legacy datafiles 
doesn't consider that index tables are co-located with those of the base CF. 
One liner patch to fix and a dtest pushed 
[here|https://github.com/riptano/cassandra-dtest/pull/226]

Incidentally, in debugging this issue I noticed that {{system.IndexInfo}} isn't 
flushed after we mark an index as built, which means we may unnecessarily 
rebuild indexes following a disorderly shutdown. I've opened CASSANDRA-9128 for 
that.

> Indexes lost on upgrading to 2.1.4
> --
>
> Key: CASSANDRA-9116
> URL: https://issues.apache.org/jira/browse/CASSANDRA-9116
> Project: Cassandra
>  Issue Type: Bug
>  Components: Core
>Reporter: Mark Dewey
>Assignee: Sam Tunnicliffe
>Priority: Blocker
> Fix For: 2.1.5
>
> Attachments: 9116.txt
>
>
> How to reproduce:
> # Create a 2.0.12 cluster
> # Create the following keyspace/table (or something similar, it's primarily 
> the indexes that matter to this case afaict)
> {noformat}
> CREATE KEYSPACE tshirts WITH replication = {'class': 
> 'NetworkTopologyStrategy', 'datacenter1': '1'}  AND durable_writes = true;
> CREATE TABLE tshirts.tshirtorders (
> store text,
> order_time timestamp,
> order_number uuid,
> color text,
> qty int,
> size text,
> PRIMARY KEY (store, order_time, order_number)
> ) WITH CLUSTERING ORDER BY (order_time ASC, order_number ASC)
> AND bloom_filter_fp_chance = 0.01
> AND caching = '{"keys":"ALL", "rows_per_partition":"NONE"}'
> AND comment = ''
> AND compaction = {'min_threshold': '4', 'class': 
> 'org.apache.cassandra.db.compaction.SizeTieredCompactionStrategy', 
> 'max_threshold': '32'}
> AND compression = {'sstable_compression': 
> 'org.apache.cassandra.io.compress.LZ4Compressor'}
> AND dclocal_read_repair_chance = 0.1
> AND default_time_to_live = 0
> AND gc_grace_seconds = 864000
> AND max_index_interval = 2048
> AND memtable_flush_period_in_ms = 0
> AND min_index_interval = 128
> AND read_repair_chance = 0.0
> AND speculative_retry = '99.0PERCENTILE';
> CREATE INDEX color ON tshirts.tshirtorders (color);
> CREATE INDEX size ON tshirts.tshirtorders (size);
> {noformat}
> # Load it with data
> # Stop the node (one node cluster is enough to replicate)
> # Upgrade the node to 2.1.4
> # Start the node
> # Optional: Run nodetool upgradesstables
> # Run the following queries:
> {noformat}
> SELECT * FROM tshirts.tshirtorders WHERE store = 'store 65';
> SELECT store, color, qty, size FROM tshirts.tshirtorders WHERE store = 'store 
> 65' AND color = 'red';
> {noformat}
> No rows containing will appear in the indexed table.
> Sample output:
> {noformat}
> cqlsh> SELECT * FROM tshirts.tshirtorders WHERE store = 'store 65';
>  store| order_time   | order_number | 
> color  | qty  | size
> --+--+--++--+--
>  store 65 | 2000-01-03 18:20:20+ | 457e60e6-da39-11e4-add3-42010af08298 | 
>red | 1295 |M
>  store 65 | 2000-01-04 01:29:21+ | 45947304-da39-11e4-add3-42010af08298 | 
>   grey | 2805 |M
>  store 65 | 2000-01-04 19:55:51+ | 45d69220-da39-11e4-add3-42010af08298 | 
>  brown | 3380 | XXXL
>  store 65 | 2000-01-04 22:45:07+ | 45e16894-da39-11e4-add3-42010af08298 | 
> yellow | 7000 |  XXL
>  store 65 | 2000-01-05 17:09:56+ | 46083bd6-da39-11e4-add3-42010af08298 | 
> purple | 2440 |S
>  store 65 | 2000-01-05 19:16:48+ | 460cadd8-da39-11e4-add3-42010af08298 | 
>  green | 5690 |L
>  store 65 | 2000-01-06 00:26:06+ | 461ccdbc-da39-11e4-add3-42010af08298 | 
>  brown | 9890 |P
>  store 65 | 2000-01-06 11:35:11+ | 4633aa00-da39-11e4-add3-42010af08298 | 
>  black | 9350 |P
>  store 65 | 2000-01-07 06:07:20+ | 4658e0ea-da39-11e4-add3-42010af08298 | 
>  black | 1300 |S
>  store 65 | 2000-01-07 06:47:40+ | 465be93e-da39-11e4-add3-42010af08298 | 
> purple | 9630 |   XL
>  store 65 | 2000-01-09 12:42:38+ | 46bafdd4-da39-11e4-add3-42010af08298 | 
> purple | 1470 |M
>  store 65 | 2000-01-09 19:07:35+ | 46c43e08-da39-11e4-add3-42010af08298 | 
>   pink | 6005 |S
>  store 65 | 2000-01-10 04:47:56+ | 46d4b170-da39-11e4-add3-42010af08298 | 
>red |  345 |   XL
>  store 65 | 2000-01-10 20:25:44+ | 46ef7d52-da39-11e4-add3-42010af08298 | 
>   pink |  420 |  XXL
>  store 65 | 2000-01-11 00:55:2

[jira] [Updated] (CASSANDRA-9116) Indexes lost on upgrading to 2.1.4

2015-04-08 Thread Aleksey Yeschenko (JIRA)

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

Aleksey Yeschenko updated CASSANDRA-9116:
-
Reviewer: Yuki Morishita

> Indexes lost on upgrading to 2.1.4
> --
>
> Key: CASSANDRA-9116
> URL: https://issues.apache.org/jira/browse/CASSANDRA-9116
> Project: Cassandra
>  Issue Type: Bug
>  Components: Core
>Reporter: Mark Dewey
>Assignee: Sam Tunnicliffe
>Priority: Blocker
> Fix For: 2.1.5
>
> Attachments: 9116.txt
>
>
> How to reproduce:
> # Create a 2.0.12 cluster
> # Create the following keyspace/table (or something similar, it's primarily 
> the indexes that matter to this case afaict)
> {noformat}
> CREATE KEYSPACE tshirts WITH replication = {'class': 
> 'NetworkTopologyStrategy', 'datacenter1': '1'}  AND durable_writes = true;
> CREATE TABLE tshirts.tshirtorders (
> store text,
> order_time timestamp,
> order_number uuid,
> color text,
> qty int,
> size text,
> PRIMARY KEY (store, order_time, order_number)
> ) WITH CLUSTERING ORDER BY (order_time ASC, order_number ASC)
> AND bloom_filter_fp_chance = 0.01
> AND caching = '{"keys":"ALL", "rows_per_partition":"NONE"}'
> AND comment = ''
> AND compaction = {'min_threshold': '4', 'class': 
> 'org.apache.cassandra.db.compaction.SizeTieredCompactionStrategy', 
> 'max_threshold': '32'}
> AND compression = {'sstable_compression': 
> 'org.apache.cassandra.io.compress.LZ4Compressor'}
> AND dclocal_read_repair_chance = 0.1
> AND default_time_to_live = 0
> AND gc_grace_seconds = 864000
> AND max_index_interval = 2048
> AND memtable_flush_period_in_ms = 0
> AND min_index_interval = 128
> AND read_repair_chance = 0.0
> AND speculative_retry = '99.0PERCENTILE';
> CREATE INDEX color ON tshirts.tshirtorders (color);
> CREATE INDEX size ON tshirts.tshirtorders (size);
> {noformat}
> # Load it with data
> # Stop the node (one node cluster is enough to replicate)
> # Upgrade the node to 2.1.4
> # Start the node
> # Optional: Run nodetool upgradesstables
> # Run the following queries:
> {noformat}
> SELECT * FROM tshirts.tshirtorders WHERE store = 'store 65';
> SELECT store, color, qty, size FROM tshirts.tshirtorders WHERE store = 'store 
> 65' AND color = 'red';
> {noformat}
> No rows containing will appear in the indexed table.
> Sample output:
> {noformat}
> cqlsh> SELECT * FROM tshirts.tshirtorders WHERE store = 'store 65';
>  store| order_time   | order_number | 
> color  | qty  | size
> --+--+--++--+--
>  store 65 | 2000-01-03 18:20:20+ | 457e60e6-da39-11e4-add3-42010af08298 | 
>red | 1295 |M
>  store 65 | 2000-01-04 01:29:21+ | 45947304-da39-11e4-add3-42010af08298 | 
>   grey | 2805 |M
>  store 65 | 2000-01-04 19:55:51+ | 45d69220-da39-11e4-add3-42010af08298 | 
>  brown | 3380 | XXXL
>  store 65 | 2000-01-04 22:45:07+ | 45e16894-da39-11e4-add3-42010af08298 | 
> yellow | 7000 |  XXL
>  store 65 | 2000-01-05 17:09:56+ | 46083bd6-da39-11e4-add3-42010af08298 | 
> purple | 2440 |S
>  store 65 | 2000-01-05 19:16:48+ | 460cadd8-da39-11e4-add3-42010af08298 | 
>  green | 5690 |L
>  store 65 | 2000-01-06 00:26:06+ | 461ccdbc-da39-11e4-add3-42010af08298 | 
>  brown | 9890 |P
>  store 65 | 2000-01-06 11:35:11+ | 4633aa00-da39-11e4-add3-42010af08298 | 
>  black | 9350 |P
>  store 65 | 2000-01-07 06:07:20+ | 4658e0ea-da39-11e4-add3-42010af08298 | 
>  black | 1300 |S
>  store 65 | 2000-01-07 06:47:40+ | 465be93e-da39-11e4-add3-42010af08298 | 
> purple | 9630 |   XL
>  store 65 | 2000-01-09 12:42:38+ | 46bafdd4-da39-11e4-add3-42010af08298 | 
> purple | 1470 |M
>  store 65 | 2000-01-09 19:07:35+ | 46c43e08-da39-11e4-add3-42010af08298 | 
>   pink | 6005 |S
>  store 65 | 2000-01-10 04:47:56+ | 46d4b170-da39-11e4-add3-42010af08298 | 
>red |  345 |   XL
>  store 65 | 2000-01-10 20:25:44+ | 46ef7d52-da39-11e4-add3-42010af08298 | 
>   pink |  420 |  XXL
>  store 65 | 2000-01-11 00:55:27+ | 46f7a84c-da39-11e4-add3-42010af08298 | 
> purple | 9045 |S
>  store 65 | 2000-01-11 17:54:25+ | 4724ea00-da39-11e4-add3-42010af08298 | 
>  green | 5030 |  XXL
>  store 65 | 2000-01-12 08:21:15+ | 473c0370-da39-11e4-add3-42010af08298 | 
>  white | 2860 |   XL
>  store 65 | 2000-01-12 17:09:19+ | 47497d2a-da39-11e4-add3-42010af08298 | 
>red | 6425 |L
>  store 65 | 2000-01-14 07:27:37+ | 478662a8-da39-11e4-add3-42010af08298 | 
>   pink |  330 | XXXL
>  store 65 | 2000-01-14 11:31:38+ | 478b43cc-da39-11e4-add3-42010af08298 | 
>   pink | 3335 |  XXL
>  store 65 | 2000-01-14 18:55:59+ | 47955a24-da39-11e