[
https://issues.apache.org/jira/browse/DERBY-4402?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Dag H. Wanvik closed DERBY-4402.
--------------------------------
Verified that error no longer occurs on trunk, closing. Thanks for fixing this,
Mamta!
> Assert failure (sane) or Array out of bounds error (insane) when attempting
> to GROUP BY accumulator function
> ------------------------------------------------------------------------------------------------------------
>
> Key: DERBY-4402
> URL: https://issues.apache.org/jira/browse/DERBY-4402
> Project: Derby
> Issue Type: Bug
> Components: SQL
> Affects Versions: 10.5.3.0, 10.6.1.0
> Reporter: Dag H. Wanvik
> Assignee: Mamta A. Satoor
> Priority: Minor
> Fix For: 10.5.3.1, 10.6.1.0
>
>
> The error checking fails to catch this wrong usage (accumulator function
> inside a group by column expression.
> :
> select sum(i) from t group by (4+sum(j))
> :
> java.sql.SQLException: Java exception: 'ASSERT FAILED Unexpected Aggregate
> vector generated by Group By clause:
> org.apache.derby.shared.common.sanity.AssertFailure'.
> at
> org.apache.derby.impl.jdbc.SQLExceptionFactory.getSQLException(SQLExceptionFactory.java:45)
> at
> org.apache.derby.impl.jdbc.SQLExceptionFactory40.wrapArgsForTransportAcrossDRDA(SQLExceptionFactory40.java:119)
> at
> org.apache.derby.impl.jdbc.SQLExceptionFactory40.getSQLException(SQLExceptionFactory40.java:70)
> ... 16 more
> Caused by: org.apache.derby.shared.common.sanity.AssertFailure: ASSERT FAILED
> Unexpected Aggregate vector generated by Group By clause
> at
> org.apache.derby.shared.common.sanity.SanityManager.ASSERT(SanityManager.java:120)
> at
> org.apache.derby.impl.sql.compile.SelectNode.bindExpressions(SelectNode.java:648)
> at
> org.apache.derby.impl.sql.compile.DMLStatementNode.bindExpressions(DMLStatementNode.java:227)
> at
> org.apache.derby.impl.sql.compile.DMLStatementNode.bind(DMLStatementNode.java:140)
> at
> org.apache.derby.impl.sql.compile.CursorNode.bindStatement(CursorNode.java:249)
> at
> org.apache.derby.impl.sql.GenericStatement.prepMinion(GenericStatement.java:319)
> at
> org.apache.derby.impl.sql.GenericStatement.prepare(GenericStatement.java:88)
> at
> org.apache.derby.impl.sql.conn.GenericLanguageConnectionContext.prepareInternalStatement(GenericLanguageConnectionContext.java:824)
> at
> org.apache.derby.impl.jdbc.EmbedStatement.execute(EmbedStatement.java:606)
> ... 9 more
> The parser has a check against the top node of a "groupingColumnReference"
> being an aggregator, but fails to "see" inside an expression.
> Maybe this check should be made by a visitor in the bind phase instead.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.