Eliminate the parser's rewriting of the abstract syntax tree for queries with
GROUP BY and/or HAVING clauses
------------------------------------------------------------------------------------------------------------
Key: DERBY-681
URL: http://issues.apache.org/jira/browse/DERBY-681
Project: Derby
Type: Bug
Reporter: Rick Hillegas
If a query contains a GROUP BY or HAVING clause, the parser rewrites the
abstract syntax tree, putting aggregates into a subselect and treating the
HAVING clause as the WHERE clause of a fabricated outer select from the
subquery. This allows the compiler to re-use some machinery since the HAVING
clause operates on the grouped result the way that the WHERE clause operates on
the from list. Unfortunately, this rewriting creates an explosion of special
cases in the compiler after parsing is done. The rewriting is not
systematically handled later on in the compiler. This gives rise to defects
like bug 280. We need to eliminate this special rewriting and handle the HAVING
clause in a straightforward way. This is not a small bugfix but is a medium
sized project.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira