I've the following table definition in Cassandra
CREATE TABLE mytable
(
colA text,
colB text,
startdate timestamp,
colC text,
colD text,
colE text,
PRIMARY KEY ((colA, colB, startdate), colC)
) WITH
bloom_filter_fp_chance=0.100000 AND
caching='KEYS_ONLY' AND
dclocal_read_repair_chance=0.000000 AND
gc_grace_seconds=864000 AND
index_interval=128 AND
read_repair_chance=0.100000 AND
replicate_on_write='true' AND
populate_io_cache_on_flush='false' AND
default_time_to_live=0 AND
speculative_retry='99.0PERCENTILE' AND
memtable_flush_period_in_ms=0 AND
compaction={'class': 'LeveledCompactionStrategy'} AND
compression={'chunk_length_kb': '64', 'sstable_compression': 'DeflateCompressor'};
CREATE INDEX colDIdx ON mytable (colD);
CREATE INDEX colEIdx ON mytable (colE);
This table has hardly 400 records. When I run the following query from cqlsh prompt:
SELECT * FROM mytable WHERE colA = 'colAValue' AND colB = 'colBValue' AND startdate = 1418947200000 and colD = 'XYZ' and colE = 'ABC' ALLOW FILTERING;
Then I get the following error message and query doesn't return a result.
"Request did not complete within rpc_timeout"
However, when I remove the last 2 filter criteria, colD and colE, then the query runs successfully.
I don't know what is the issue in using secondary indexed columns in filter criteria.