You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@geode.apache.org by "Juan José Ramos Cassella (Jira)" <ji...@apache.org> on 2019/09/24 21:08:00 UTC

[jira] [Created] (GEODE-7240) Prevent Usage of Aggregates within WHERE clause

Juan José Ramos Cassella created GEODE-7240:
-----------------------------------------------

             Summary: Prevent Usage of Aggregates within WHERE clause
                 Key: GEODE-7240
                 URL: https://issues.apache.org/jira/browse/GEODE-7240
             Project: Geode
          Issue Type: Bug
          Components: querying
            Reporter: Juan José Ramos Cassella


Aggregate functions shouldn't be allowed as part of the {{WHERE}} clause.
Currently, instead of rejecting the query, we throw a {{ClassCastException}} while trying to evaluate the condition:

{noformat}
org.apache.geode.cache.query.TypeMismatchException: Unable to use a relational comparison operator to compare an instance of class ' org.apache.geode.cache.query.internal.aggregate.XXX ' with an instance of ' java.lang.XXX '
	at org.apache.geode.cache.query.internal.types.TypeUtils$ComparisonStrategy.get(TypeUtils.java:144)
	at org.apache.geode.cache.query.internal.types.TypeUtils.compare(TypeUtils.java:499)
	at org.apache.geode.cache.query.internal.CompiledComparison.evaluate(CompiledComparison.java:137)
	at org.apache.geode.cache.query.internal.CompiledSelect.evaluate(CompiledSelect.java:438)
	at org.apache.geode.cache.query.internal.CompiledSelect.evaluate(CompiledSelect.java:53)
	at org.apache.geode.cache.query.internal.DefaultQuery.executeUsingContext(DefaultQuery.java:432)
	at org.apache.geode.cache.query.internal.DefaultQuery.execute(DefaultQuery.java:267)
	at org.apache.geode.cache.query.internal.DefaultQuery.execute(DefaultQuery.java:199)
{noformat}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)