On Thu, Aug 23, 2012 at 6:54 PM, Richard Crowley <r...@rcrowley.org> wrote: > I have a three-node cluster running Cassandra 1.0.10. In this cluster > is a keyspace with RF=3. I *updated* a column family via Astyanax to > add a column definition with an index on that column. Then I ran a > backfill to populate the column in every row. Then I tried to query > the index from Java and it failed but so did cassandra-cli: > > get my_column_family where my_column = 'my_value'; > > Two out of the three nodes are unable to query the new index and throw > this error: > > InvalidRequestException(why:No indexed columns present in index > clause with operator EQ) > > The third is able to query the new index happily but doesn't find any > results, even when I expect it to.
This morning the one node that's able to query the index is also able to produce the expected results. I'm a dummy and didn't use science so I don't know if the `nodetool compact` I ran across the cluster had anything to do with it. Regardless, it did not change the situation in any other way. > > `describe cluster;` in cassandra-cli confirms that all three nodes > have the same schema and `show schema;` confirms that schema includes > the new column definition and its index. > > The my_column_family.my_index-hd-* files only exist on that one node > that can query the index. > > I ran `nodetool repair` on each node and waited for `nodetool > compactionstats` to report zero pending tasks. Ditto for `nodetool > compact`. The nodes that failed still fail. The node that succeeded > still succeed. > > Can anyone shed some light? How do I convince it to let me query the > index from any node? How do I get it to find results? > > Thanks, > > Richard