[ http://issues.apache.org/jira/browse/DERBY-280?page=comments#action_12357757 ]
Satheesh Bandaram commented on DERBY-280:
-----------------------------------------
Thanks for updating the patch, Rick. But I think I found one issue, that definitely need fixing.
I should have seen these at the first round itself...
The fix can cause NullPointerExceptions. The following check is incorrect.
+ if (
+ ( (newTableName == null) && (oldTableName == null) ) ||
+ ( newTableName.equals( oldTableName ) )
+ )
What happens if newTableName is NULL and oldTableName is NOT NULL? The code causes NullPointerException.
ij> select bug280.a, a from bug280 group by a;
ERROR XJ001: Java exception: ': java.lang.NullPointerException'.
ij>
> Wrong result from select when aliasing to same name as used in group by
> -----------------------------------------------------------------------
>
> Key: DERBY-280
> URL: http://issues.apache.org/jira/browse/DERBY-280
> Project: Derby
> Type: Bug
> Components: SQL
> Reporter: Bernt M. Johnsen
> Assignee: Rick Hillegas
> Priority: Minor
> Attachments: bug280.diff
>
> Wrong result from select when aliasing to same name as used in group by. Example:
> If we have the following table:
> ij> select * from tt;
> I |J
> -----------------------
> 1 |2
> 2 |3
> 1 |2
> 2 |3
> 2 |3
>
> 5 rows selected
> The following select is ok:
> ij> select i, count(*) as cnt from tt group by i;
> I |CNT
> -----------------------
> 1 |2
> 2 |3
>
> 2 rows selected
> But this one returns wrong result in the aliased column:
> ij> select i, count(*) as i from tt group by i;
> I |I
> -----------------------
> 1 |1
> 2 |2
>
> 2 rows selected
>
--
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
|