You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by "Sylvain Lebresne (JIRA)" <ji...@apache.org> on 2012/11/23 10:22:59 UTC

[jira] [Created] (CASSANDRA-4986) Allow finer control of ALLOW FILTERING behavior

Sylvain Lebresne created CASSANDRA-4986:
-------------------------------------------

             Summary: Allow finer control of ALLOW FILTERING behavior
                 Key: CASSANDRA-4986
                 URL: https://issues.apache.org/jira/browse/CASSANDRA-4986
             Project: Cassandra
          Issue Type: Improvement
            Reporter: Sylvain Lebresne
            Priority: Minor
             Fix For: 1.3


CASSANDRA-4915 added {{ALLOW FILTERING}} to warn people when they do potentially inefficient queries. However, as discussed in the former issue it would be interesting to allow controlling that mode more precisely by allowing something like:
{noformat}
... ALLOW FILTERING MAX 500
{noformat}
whose behavior would be that the query would be short-circuited if it filters (i.e. read but discard from the ResultSet) more than 500 CQL3 rows.

There is however 2 details I'm not totally clear on:
# what to do exactly when we reach the max filtering allowed. Do we return what we have so far, but then we need to have a way to say in the result set that the query was short-circuited. Or do we just throw an exception TooManyFiltered (simpler but maybe a little bit less useful).
# what about deleted records? Should we count them as 'filtered'? Imho the logical thing is to not count them as filtered, since after all we "filter them out" in the normal path (i.e. even when ALLOW FILTERING is not used).

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira