[ https://issues.apache.org/jira/browse/CASSANDRA-7085?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Sylvain Lebresne resolved CASSANDRA-7085. ----------------------------------------- Resolution: Won't Fix As I've lengthily explained above, the initial idea of that ticket doesn't work. So closing, but if someone has a concrete idea on how to improve the situation we were trying to improve on this ticket, feel free to open a new ticket with said idea. Personally, CASSANDRA-6588 is the "best" solution I can see so far. > Specialized query filters for CQL3 > ---------------------------------- > > Key: CASSANDRA-7085 > URL: https://issues.apache.org/jira/browse/CASSANDRA-7085 > Project: Cassandra > Issue Type: Improvement > Reporter: Sylvain Lebresne > Labels: cql, perfomance > Fix For: 3.x > > > The semantic of CQL makes it so that the current {{NamesQueryFilter}} and > {{SliceQueryFilter}} are not always as efficient as we could be. Namely, when > a {{SELECT}} only selects a handful of columns, we still have to query to > query all the columns of the select rows to distinguish between 'live row but > with no data for the queried columns' and 'no row' (see CASSANDRA-6588 for > more details). > We can solve that however by adding new filters (name and slice) specialized > for CQL. The new name filter would be a list of row prefix + a list of CQL > column names (instead of one list of cell names). The slice filter would > still take a ColumnSlice[] but would add the list of column names we care > about for each row. > The new sstable readers that goes with those filter would use the list of > column names to filter out all the cells we don't care about, so we don't > have to ship those back to the coordinator to skip them there, yet would know > to still return the row marker when necessary. -- This message was sent by Atlassian JIRA (v6.3.4#6332)