There was a plan to replace the native 2nd index by SASI. There are a couple of JIRA on SASI to support collection & OR clause but all of them are blocked by some internal refactoring. I don't know the current status of it. Pavel is quite idle recently
On Sat, Oct 29, 2016 at 3:25 AM, Voytek Jarnot <voytek.jar...@gmail.com> wrote: > Scenario (running 3.9, by the way): > > CREATE TABLE atc_test1.idxtest ( > pk text PRIMARY KEY, > col1 text, > col2 text); > CREATE CUSTOM INDEX idx2 ON atc_test1.idxtest (col2) USING > 'org.apache.cassandra.index.sasi.SASIIndex'; > CREATE INDEX idx1 ON atc_test1.idxtest (col1); > > Queries: > > Works: select * from idxtest where col1='asdf'; > Works: select * from idxtest where col2='asdf'; > > Does not work: select * from idxtest where col1='asdf' and col2='asdf' > allow filtering; > > Cassandra logs the following: > java.lang.ClassCastException: org.apache.cassandra.index. > internal.composites.RegularColumnIndex cannot be cast to > org.apache.cassandra.index.sasi.SASIIndex > > I'm guessing the takeaway is that once you go SASI you're committed to > only SASI? Unfortunately - in our case - the non-SASI index is in place > because one can't do a SASI index on a map column. > > Questions: > > Anyone else encounter this? Any workarounds you're willing to share? > > Seems like throwing a runtime exception is not a terrific way of handling > this... makes me wonder if there's something amiss with my particular > instance/config or if this is simply the way it is... >