db-derby-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Mamta A. Satoor (JIRA)" <j...@apache.org>
Subject [jira] Commented: (DERBY-4402) Assert failure (sane) or Array out of bounds error (insane) when attempting to GROUP BY accumulator function
Date Tue, 17 Nov 2009 19:12:39 GMT

    [ https://issues.apache.org/jira/browse/DERBY-4402?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12779052#action_12779052

Mamta A. Satoor commented on DERBY-4402:

You are right, Knut, there is no need for that if true. I got rid of it with revision 881444.
The test that I added ran fine with that change.

> 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:,
>            Reporter: Dag H. Wanvik
>            Assignee: Mamta A. Satoor
>            Priority: Minor
>             Fix For:
> 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.

View raw message