[jira] Commented: (DERBY-578) Grouped select from temporary table raises null pointer exception in byte code generator

2006-06-30 Thread Kathey Marsden (JIRA)
[ 
http://issues.apache.org/jira/browse/DERBY-578?page=comments#action_12418683 ] 

Kathey Marsden commented on DERBY-578:
--

If there are no comments on the merge and comments I added I will run derbyall 
and commit this on Monday and put this poor patch (posted in April  28) out of 
its misery.  Thanks to Manish for the fix and Rick for the review.

Kathey


> Grouped select from temporary table raises null pointer exception in byte 
> code generator
> 
>
>  Key: DERBY-578
>  URL: http://issues.apache.org/jira/browse/DERBY-578
>  Project: Derby
> Type: Bug

>   Components: SQL, Services
> Reporter: Rick Hillegas
> Assignee: Manish Khettry
>  Attachments: 578.diff.new.txt, 578.diff.txt, derby578_06282006_diff.txt, 
> predicatePushdown.out.patch
>
> The last statement in the following script:
> autocommit off;
> declare global temporary table session.ztemp
> ( orderID varchar( 50 ) )
> not logged;
> select orderID from session.ztemp group by orderID;
> raises the following stack trace in the trunk:
> java.lang.NullPointerException
>   at java.util.Hashtable.get(Hashtable.java:333)
>   at 
> org.apache.derby.iapi.services.classfile.ClassHolder.findMatchingEntry(ClassHolder.java:656)
>   at 
> org.apache.derby.iapi.services.classfile.ClassHolder.addUtf8Entry(ClassHolder.java:482)
>   at 
> org.apache.derby.iapi.services.classfile.ClassHolder.addString(ClassHolder.java:506)
>   at 
> org.apache.derby.iapi.services.classfile.ClassHolder.addConstant(ClassHolder.java:302)
>   at 
> org.apache.derby.impl.services.bytecode.BCMethod.push(BCMethod.java:452)
>   at 
> org.apache.derby.impl.sql.compile.FromBaseTable.generateDistinctScan(FromBaseTable.java:3216)
>   at 
> org.apache.derby.impl.sql.compile.FromBaseTable.generateResultSet(FromBaseTable.java:3032)
>   at 
> org.apache.derby.impl.sql.compile.FromBaseTable.generate(FromBaseTable.java:2978)
>   at 
> org.apache.derby.impl.sql.compile.ProjectRestrictNode.generateMinion(ProjectRestrictNode.java:1196)
>   at 
> org.apache.derby.impl.sql.compile.ProjectRestrictNode.generate(ProjectRestrictNode.java:1145)
>   at 
> org.apache.derby.impl.sql.compile.ProjectRestrictNode.generateMinion(ProjectRestrictNode.java:1196)
>   at 
> org.apache.derby.impl.sql.compile.ProjectRestrictNode.generate(ProjectRestrictNode.java:1145)
>   at 
> org.apache.derby.impl.sql.compile.ProjectRestrictNode.generateMinion(ProjectRestrictNode.java:1196)
>   at 
> org.apache.derby.impl.sql.compile.ProjectRestrictNode.generate(ProjectRestrictNode.java:1145)
>   at 
> org.apache.derby.impl.sql.compile.ProjectRestrictNode.generateMinion(ProjectRestrictNode.java:1196)
>   at 
> org.apache.derby.impl.sql.compile.ProjectRestrictNode.generate(ProjectRestrictNode.java:1145)
>   at 
> org.apache.derby.impl.sql.compile.ScrollInsensitiveResultSetNode.generate(ScrollInsensitiveResultSetNode.java:109)
>   at 
> org.apache.derby.impl.sql.compile.ReadCursorNode.generate(ReadCursorNode.java:118)
>   at 
> org.apache.derby.impl.sql.compile.CursorNode.generate(CursorNode.java:546)
>   at 
> org.apache.derby.impl.sql.compile.StatementNode.generate(StatementNode.java:232)
>   at 
> org.apache.derby.impl.sql.GenericStatement.prepMinion(GenericStatement.java:433)
>   at 
> org.apache.derby.impl.sql.GenericStatement.prepare(GenericStatement.java:107)
>   at 
> org.apache.derby.impl.sql.conn.GenericLanguageConnectionContext.prepareInternalStatement(GenericLanguageConnectionContext.java:704)
>   at 
> org.apache.derby.impl.jdbc.EmbedStatement.execute(EmbedStatement.java:533)
>   at 
> org.apache.derby.impl.jdbc.EmbedStatement.execute(EmbedStatement.java:480)
>   at org.apache.derby.impl.tools.ij.ij.executeImmediate(ij.java:299)
>   at org.apache.derby.impl.tools.ij.utilMain.doCatch(utilMain.java:433)
>   at org.apache.derby.impl.tools.ij.utilMain.go(utilMain.java:310)
>   at org.apache.derby.impl.tools.ij.Main.go(Main.java:203)
>   at org.apache.derby.impl.tools.ij.Main.mainCore(Main.java:169)
>   at org.apache.derby.impl.tools.ij.Main14.main(Main14.java:55)
>   at org.apache.derby.tools.ij.main(ij.java:60)

-- 
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



Re: [jira] Commented: (DERBY-578) Grouped select from temporary table raises null pointer exception in byte code generator

2006-06-20 Thread Rick Hillegas
Thanks, Manish. I can add the new canon myself. I just want to make sure 
that you've seen and understood this diff and don't regard it as a 
regression.


Regards,
-Rick

Manish Khettry wrote:

Yes for some reason there is a missing newline in the patch I 
submitted :(


Do you want to edit the subquery.out file yourself or should I attach 
another patch? Do you want the entire patch or just subquery.diff?




On 6/20/06, *Rick Hillegas (JIRA)* > wrote:


[
http://issues.apache.org/jira/browse/DERBY-578?page=comments#action_12416915
]

Rick Hillegas commented on DERBY-578:
-

Thanks for the explanation, Manish. I ran derbyall and came up
with one unexpected diff in lang/subquery.sql. It's some extra
cruft on the printout for some scan qualifiers. On its surface
this suggests that a little work is needed to fix that printout.
Would appreciate your opinion here.

> Grouped select from temporary table raises null pointer
exception in byte code generator
>


>
>  Key: DERBY-578
>  URL: http://issues.apache.org/jira/browse/DERBY-578
>  Project: Derby
> Type: Bug

>   Components: SQL, Services
> Reporter: Rick Hillegas
> Assignee: Manish Khettry
>  Attachments: 578.diff.new.txt, 578.diff.txt,
predicatePushdown.out.patch
>
> The last statement in the following script:
> autocommit off;
> declare global temporary table session.ztemp
> ( orderID varchar( 50 ) )
> not logged;
> select orderID from session.ztemp group by orderID;
> raises the following stack trace in the trunk:
> java.lang.NullPointerException
>   at java.util.Hashtable.get(Hashtable.java:333)
>   at

org.apache.derby.iapi.services.classfile.ClassHolder.findMatchingEntry(ClassHolder.java:656)
>   at

org.apache.derby.iapi.services.classfile.ClassHolder.addUtf8Entry(ClassHolder.java:482)
>   at

org.apache.derby.iapi.services.classfile.ClassHolder.addString(ClassHolder.java:506)
>   at
org.apache.derby.iapi.services.classfile.ClassHolder.addConstant
(ClassHolder.java:302)
>   at
org.apache.derby.impl.services.bytecode.BCMethod.push(BCMethod.java:452)
>   at

org.apache.derby.impl.sql.compile.FromBaseTable.generateDistinctScan(FromBaseTable.java:3216)

>   at

org.apache.derby.impl.sql.compile.FromBaseTable.generateResultSet(FromBaseTable.java:3032)
>   at

org.apache.derby.impl.sql.compile.FromBaseTable.generate(FromBaseTable.java:2978)
>   at

org.apache.derby.impl.sql.compile.ProjectRestrictNode.generateMinion(ProjectRestrictNode.java:1196)
>   at

org.apache.derby.impl.sql.compile.ProjectRestrictNode.generate(ProjectRestrictNode.java:1145)
>   at

org.apache.derby.impl.sql.compile.ProjectRestrictNode.generateMinion(ProjectRestrictNode.java:1196)
>   at

org.apache.derby.impl.sql.compile.ProjectRestrictNode.generate(ProjectRestrictNode.java:1145)
>   at

org.apache.derby.impl.sql.compile.ProjectRestrictNode.generateMinion(ProjectRestrictNode.java:1196)
>   at

org.apache.derby.impl.sql.compile.ProjectRestrictNode.generate(ProjectRestrictNode.java:1145)
>   at

org.apache.derby.impl.sql.compile.ProjectRestrictNode.generateMinion(ProjectRestrictNode.java:1196)
>   at

org.apache.derby.impl.sql.compile.ProjectRestrictNode.generate(ProjectRestrictNode.java:1145)
>   at

org.apache.derby.impl.sql.compile.ScrollInsensitiveResultSetNode.generate(ScrollInsensitiveResultSetNode.java:109)
>   at

org.apache.derby.impl.sql.compile.ReadCursorNode.generate(ReadCursorNode.java:118)
>   at
org.apache.derby.impl.sql.compile.CursorNode.generate(CursorNode.java:546)
>   at

org.apache.derby.impl.sql.compile.StatementNode.generate(StatementNode.java:232)
>   at org.apache.derby.impl.sql.GenericStatement.prepMinion
(GenericStatement.java:433)
>   at

org.apache.derby.impl.sql.GenericStatement.prepare(GenericStatement.java:107)
>   at

org.apache.derby.impl.sql.conn.GenericLanguageConnectionContext.prepareInternalStatement
(GenericLanguageConnectionContext.java:704)
>   at
org.apache.derby.impl.jdbc.EmbedStatement.execute(EmbedStatement.java:533)
>   at
org.apache.derby.impl.jdbc.EmbedStatement.execute(EmbedStatement.java
:480)
>   at
org.apache.derby.impl.tools.ij.ij.executeImmediate(ij.java:299)
>   at
org.apache.derby.impl.tools.ij.utilMain.doCatch(utilMain.java:433)
>   at org.apache.derby.impl.tools.ij.utilMain.go
(utilMain.java:310)
>   at org.apache.derby.impl.tools.ij.Main.go(Main.j

Re: [jira] Commented: (DERBY-578) Grouped select from temporary table raises null pointer exception in byte code generator

2006-06-20 Thread Manish Khettry
Yes for some reason there is a missing newline in the patch I submitted :( Do you want to edit the subquery.out file yourself or should I attach another patch? Do you want the entire patch or just subquery.diff?
On 6/20/06, Rick Hillegas (JIRA)  wrote:
[ http://issues.apache.org/jira/browse/DERBY-578?page=comments#action_12416915 ]Rick Hillegas commented on DERBY-578:
-Thanks for the explanation, Manish. I ran derbyall and came up with one unexpected diff in lang/subquery.sql. It's some extra cruft on the printout for some scan qualifiers. On its surface this suggests that a little work is needed to fix that printout. Would appreciate your opinion here.
> Grouped select from temporary table raises null pointer exception in byte code generator> >>  Key: DERBY-578
>  URL: http://issues.apache.org/jira/browse/DERBY-578>  Project: Derby> Type: Bug>   Components: SQL, Services
> Reporter: Rick Hillegas> Assignee: Manish Khettry>  Attachments: 578.diff.new.txt, 578.diff.txt, predicatePushdown.out.patch>> The last statement in the following script:> autocommit off;
> declare global temporary table session.ztemp> ( orderID varchar( 50 ) )> not logged;> select orderID from session.ztemp group by orderID;> raises the following stack trace in the trunk:
> java.lang.NullPointerException>   at java.util.Hashtable.get(Hashtable.java:333)>   at org.apache.derby.iapi.services.classfile.ClassHolder.findMatchingEntry(ClassHolder.java:656)>   at 
org.apache.derby.iapi.services.classfile.ClassHolder.addUtf8Entry(ClassHolder.java:482)>   at org.apache.derby.iapi.services.classfile.ClassHolder.addString(ClassHolder.java:506)>   at org.apache.derby.iapi.services.classfile.ClassHolder.addConstant
(ClassHolder.java:302)>   at org.apache.derby.impl.services.bytecode.BCMethod.push(BCMethod.java:452)>   at org.apache.derby.impl.sql.compile.FromBaseTable.generateDistinctScan(FromBaseTable.java:3216)
>   at org.apache.derby.impl.sql.compile.FromBaseTable.generateResultSet(FromBaseTable.java:3032)>   at org.apache.derby.impl.sql.compile.FromBaseTable.generate(FromBaseTable.java:2978)>   at 
org.apache.derby.impl.sql.compile.ProjectRestrictNode.generateMinion(ProjectRestrictNode.java:1196)>   at org.apache.derby.impl.sql.compile.ProjectRestrictNode.generate(ProjectRestrictNode.java:1145)>   at 
org.apache.derby.impl.sql.compile.ProjectRestrictNode.generateMinion(ProjectRestrictNode.java:1196)>   at org.apache.derby.impl.sql.compile.ProjectRestrictNode.generate(ProjectRestrictNode.java:1145)>   at 
org.apache.derby.impl.sql.compile.ProjectRestrictNode.generateMinion(ProjectRestrictNode.java:1196)>   at org.apache.derby.impl.sql.compile.ProjectRestrictNode.generate(ProjectRestrictNode.java:1145)>   at 
org.apache.derby.impl.sql.compile.ProjectRestrictNode.generateMinion(ProjectRestrictNode.java:1196)>   at org.apache.derby.impl.sql.compile.ProjectRestrictNode.generate(ProjectRestrictNode.java:1145)>   at 
org.apache.derby.impl.sql.compile.ScrollInsensitiveResultSetNode.generate(ScrollInsensitiveResultSetNode.java:109)>   at org.apache.derby.impl.sql.compile.ReadCursorNode.generate(ReadCursorNode.java:118)>   at 
org.apache.derby.impl.sql.compile.CursorNode.generate(CursorNode.java:546)>   at org.apache.derby.impl.sql.compile.StatementNode.generate(StatementNode.java:232)>   at org.apache.derby.impl.sql.GenericStatement.prepMinion
(GenericStatement.java:433)>   at org.apache.derby.impl.sql.GenericStatement.prepare(GenericStatement.java:107)>   at org.apache.derby.impl.sql.conn.GenericLanguageConnectionContext.prepareInternalStatement
(GenericLanguageConnectionContext.java:704)>   at org.apache.derby.impl.jdbc.EmbedStatement.execute(EmbedStatement.java:533)>   at org.apache.derby.impl.jdbc.EmbedStatement.execute(EmbedStatement.java
:480)>   at org.apache.derby.impl.tools.ij.ij.executeImmediate(ij.java:299)>   at org.apache.derby.impl.tools.ij.utilMain.doCatch(utilMain.java:433)>   at org.apache.derby.impl.tools.ij.utilMain.go
(utilMain.java:310)>   at org.apache.derby.impl.tools.ij.Main.go(Main.java:203)>   at org.apache.derby.impl.tools.ij.Main.mainCore(Main.java:169)>   at org.apache.derby.impl.tools.ij.Main14.main
(Main14.java:55)>   at org.apache.derby.tools.ij.main(ij.java:60)--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


[jira] Commented: (DERBY-578) Grouped select from temporary table raises null pointer exception in byte code generator

2006-06-20 Thread Rick Hillegas (JIRA)
[ 
http://issues.apache.org/jira/browse/DERBY-578?page=comments#action_12416915 ] 

Rick Hillegas commented on DERBY-578:
-

Thanks for the explanation, Manish. I ran derbyall and came up with one 
unexpected diff in lang/subquery.sql. It's some extra cruft on the printout for 
some scan qualifiers. On its surface this suggests that a little work is needed 
to fix that printout. Would appreciate your opinion here.

> Grouped select from temporary table raises null pointer exception in byte 
> code generator
> 
>
>  Key: DERBY-578
>  URL: http://issues.apache.org/jira/browse/DERBY-578
>  Project: Derby
> Type: Bug

>   Components: SQL, Services
> Reporter: Rick Hillegas
> Assignee: Manish Khettry
>  Attachments: 578.diff.new.txt, 578.diff.txt, predicatePushdown.out.patch
>
> The last statement in the following script:
> autocommit off;
> declare global temporary table session.ztemp
> ( orderID varchar( 50 ) )
> not logged;
> select orderID from session.ztemp group by orderID;
> raises the following stack trace in the trunk:
> java.lang.NullPointerException
>   at java.util.Hashtable.get(Hashtable.java:333)
>   at 
> org.apache.derby.iapi.services.classfile.ClassHolder.findMatchingEntry(ClassHolder.java:656)
>   at 
> org.apache.derby.iapi.services.classfile.ClassHolder.addUtf8Entry(ClassHolder.java:482)
>   at 
> org.apache.derby.iapi.services.classfile.ClassHolder.addString(ClassHolder.java:506)
>   at 
> org.apache.derby.iapi.services.classfile.ClassHolder.addConstant(ClassHolder.java:302)
>   at 
> org.apache.derby.impl.services.bytecode.BCMethod.push(BCMethod.java:452)
>   at 
> org.apache.derby.impl.sql.compile.FromBaseTable.generateDistinctScan(FromBaseTable.java:3216)
>   at 
> org.apache.derby.impl.sql.compile.FromBaseTable.generateResultSet(FromBaseTable.java:3032)
>   at 
> org.apache.derby.impl.sql.compile.FromBaseTable.generate(FromBaseTable.java:2978)
>   at 
> org.apache.derby.impl.sql.compile.ProjectRestrictNode.generateMinion(ProjectRestrictNode.java:1196)
>   at 
> org.apache.derby.impl.sql.compile.ProjectRestrictNode.generate(ProjectRestrictNode.java:1145)
>   at 
> org.apache.derby.impl.sql.compile.ProjectRestrictNode.generateMinion(ProjectRestrictNode.java:1196)
>   at 
> org.apache.derby.impl.sql.compile.ProjectRestrictNode.generate(ProjectRestrictNode.java:1145)
>   at 
> org.apache.derby.impl.sql.compile.ProjectRestrictNode.generateMinion(ProjectRestrictNode.java:1196)
>   at 
> org.apache.derby.impl.sql.compile.ProjectRestrictNode.generate(ProjectRestrictNode.java:1145)
>   at 
> org.apache.derby.impl.sql.compile.ProjectRestrictNode.generateMinion(ProjectRestrictNode.java:1196)
>   at 
> org.apache.derby.impl.sql.compile.ProjectRestrictNode.generate(ProjectRestrictNode.java:1145)
>   at 
> org.apache.derby.impl.sql.compile.ScrollInsensitiveResultSetNode.generate(ScrollInsensitiveResultSetNode.java:109)
>   at 
> org.apache.derby.impl.sql.compile.ReadCursorNode.generate(ReadCursorNode.java:118)
>   at 
> org.apache.derby.impl.sql.compile.CursorNode.generate(CursorNode.java:546)
>   at 
> org.apache.derby.impl.sql.compile.StatementNode.generate(StatementNode.java:232)
>   at 
> org.apache.derby.impl.sql.GenericStatement.prepMinion(GenericStatement.java:433)
>   at 
> org.apache.derby.impl.sql.GenericStatement.prepare(GenericStatement.java:107)
>   at 
> org.apache.derby.impl.sql.conn.GenericLanguageConnectionContext.prepareInternalStatement(GenericLanguageConnectionContext.java:704)
>   at 
> org.apache.derby.impl.jdbc.EmbedStatement.execute(EmbedStatement.java:533)
>   at 
> org.apache.derby.impl.jdbc.EmbedStatement.execute(EmbedStatement.java:480)
>   at org.apache.derby.impl.tools.ij.ij.executeImmediate(ij.java:299)
>   at org.apache.derby.impl.tools.ij.utilMain.doCatch(utilMain.java:433)
>   at org.apache.derby.impl.tools.ij.utilMain.go(utilMain.java:310)
>   at org.apache.derby.impl.tools.ij.Main.go(Main.java:203)
>   at org.apache.derby.impl.tools.ij.Main.mainCore(Main.java:169)
>   at org.apache.derby.impl.tools.ij.Main14.main(Main14.java:55)
>   at org.apache.derby.tools.ij.main(ij.java:60)

-- 
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



[jira] Commented: (DERBY-578) Grouped select from temporary table raises null pointer exception in byte code generator

2006-06-19 Thread Manish Khettry (JIRA)
[ 
http://issues.apache.org/jira/browse/DERBY-578?page=comments#action_12416814 ] 

Manish Khettry commented on DERBY-578:
--

Thanks for taking time to review the fix. The xaHelper is not related to this 
but when I was debugging using ij, this bit of code would always throw a NPE in 
the debugger. 

You are right about 2. Earlier, we would set the indexName field in 
DistinctScanResult to the conglomerate name (cd.getName()) used to scan the 
table. If the conglomerate was the base table itself then this was just plain 
wrong. The change, for this patch, passes null if no index is being used. This 
in turn ended up causing all the diffs to the master files. I really wish we 
had assert tests; all the test output wants to check in this case is that a 
distinct scan is performed and not have all the other cruft output by runtime 
stats.

The change to FromBaseTable is similar to the code in 
BaseJoinStrategy:fillInScanArgs2. I was tempted to try and have all the 
differfent code paths (DistinctScan, specialMaxScan) share the same code when 
it comes to filling in the scan args but I took the easy way out for this bug 
for now.





> Grouped select from temporary table raises null pointer exception in byte 
> code generator
> 
>
>  Key: DERBY-578
>  URL: http://issues.apache.org/jira/browse/DERBY-578
>  Project: Derby
> Type: Bug

>   Components: SQL, Services
> Reporter: Rick Hillegas
> Assignee: Manish Khettry
>  Attachments: 578.diff.new.txt, 578.diff.txt, predicatePushdown.out.patch
>
> The last statement in the following script:
> autocommit off;
> declare global temporary table session.ztemp
> ( orderID varchar( 50 ) )
> not logged;
> select orderID from session.ztemp group by orderID;
> raises the following stack trace in the trunk:
> java.lang.NullPointerException
>   at java.util.Hashtable.get(Hashtable.java:333)
>   at 
> org.apache.derby.iapi.services.classfile.ClassHolder.findMatchingEntry(ClassHolder.java:656)
>   at 
> org.apache.derby.iapi.services.classfile.ClassHolder.addUtf8Entry(ClassHolder.java:482)
>   at 
> org.apache.derby.iapi.services.classfile.ClassHolder.addString(ClassHolder.java:506)
>   at 
> org.apache.derby.iapi.services.classfile.ClassHolder.addConstant(ClassHolder.java:302)
>   at 
> org.apache.derby.impl.services.bytecode.BCMethod.push(BCMethod.java:452)
>   at 
> org.apache.derby.impl.sql.compile.FromBaseTable.generateDistinctScan(FromBaseTable.java:3216)
>   at 
> org.apache.derby.impl.sql.compile.FromBaseTable.generateResultSet(FromBaseTable.java:3032)
>   at 
> org.apache.derby.impl.sql.compile.FromBaseTable.generate(FromBaseTable.java:2978)
>   at 
> org.apache.derby.impl.sql.compile.ProjectRestrictNode.generateMinion(ProjectRestrictNode.java:1196)
>   at 
> org.apache.derby.impl.sql.compile.ProjectRestrictNode.generate(ProjectRestrictNode.java:1145)
>   at 
> org.apache.derby.impl.sql.compile.ProjectRestrictNode.generateMinion(ProjectRestrictNode.java:1196)
>   at 
> org.apache.derby.impl.sql.compile.ProjectRestrictNode.generate(ProjectRestrictNode.java:1145)
>   at 
> org.apache.derby.impl.sql.compile.ProjectRestrictNode.generateMinion(ProjectRestrictNode.java:1196)
>   at 
> org.apache.derby.impl.sql.compile.ProjectRestrictNode.generate(ProjectRestrictNode.java:1145)
>   at 
> org.apache.derby.impl.sql.compile.ProjectRestrictNode.generateMinion(ProjectRestrictNode.java:1196)
>   at 
> org.apache.derby.impl.sql.compile.ProjectRestrictNode.generate(ProjectRestrictNode.java:1145)
>   at 
> org.apache.derby.impl.sql.compile.ScrollInsensitiveResultSetNode.generate(ScrollInsensitiveResultSetNode.java:109)
>   at 
> org.apache.derby.impl.sql.compile.ReadCursorNode.generate(ReadCursorNode.java:118)
>   at 
> org.apache.derby.impl.sql.compile.CursorNode.generate(CursorNode.java:546)
>   at 
> org.apache.derby.impl.sql.compile.StatementNode.generate(StatementNode.java:232)
>   at 
> org.apache.derby.impl.sql.GenericStatement.prepMinion(GenericStatement.java:433)
>   at 
> org.apache.derby.impl.sql.GenericStatement.prepare(GenericStatement.java:107)
>   at 
> org.apache.derby.impl.sql.conn.GenericLanguageConnectionContext.prepareInternalStatement(GenericLanguageConnectionContext.java:704)
>   at 
> org.apache.derby.impl.jdbc.EmbedStatement.execute(EmbedStatement.java:533)
>   at 
> org.apache.derby.impl.jdbc.EmbedStatement.execute(EmbedStatement.java:480)
>   at org.apache.derby.impl.tools.ij.ij.executeImmediate(ij.java:299)
>   at org.apache.derby.impl.tools.ij.utilMain.doCatch(utilMain.java:433)
>   at org.apache.derby.impl.tools.ij.utilMain.go(utilMain.java:310)
>   at org.apache.derby.impl.tools.ij.Main.go(Main.java:203)
>   at org.apache.derby.impl.tools.ij.Main.mainCore(Main.java:169)
>

[jira] Commented: (DERBY-578) Grouped select from temporary table raises null pointer exception in byte code generator

2006-06-19 Thread Rick Hillegas (JIRA)
[ 
http://issues.apache.org/jira/browse/DERBY-578?page=comments#action_12416803 ] 

Rick Hillegas commented on DERBY-578:
-

Thanks, Manish. As you said, the fix looks pretty simple. I'm running 
regression tests now. I have a couple questions:

1) I don't understand the change to xaHelper. How is that related to this 
bugfix?

2) Can you explain the test diffs? On the surface, it looks like a number of 
index scans have been replaced with table scans. However, it's hard to trust 
the original claim that an index was being used because there doesn't seem to 
be a usable index.  Please help me muddle through these diffs.

-Rick

> Grouped select from temporary table raises null pointer exception in byte 
> code generator
> 
>
>  Key: DERBY-578
>  URL: http://issues.apache.org/jira/browse/DERBY-578
>  Project: Derby
> Type: Bug

>   Components: SQL, Services
> Reporter: Rick Hillegas
> Assignee: Manish Khettry
>  Attachments: 578.diff.new.txt, 578.diff.txt, predicatePushdown.out.patch
>
> The last statement in the following script:
> autocommit off;
> declare global temporary table session.ztemp
> ( orderID varchar( 50 ) )
> not logged;
> select orderID from session.ztemp group by orderID;
> raises the following stack trace in the trunk:
> java.lang.NullPointerException
>   at java.util.Hashtable.get(Hashtable.java:333)
>   at 
> org.apache.derby.iapi.services.classfile.ClassHolder.findMatchingEntry(ClassHolder.java:656)
>   at 
> org.apache.derby.iapi.services.classfile.ClassHolder.addUtf8Entry(ClassHolder.java:482)
>   at 
> org.apache.derby.iapi.services.classfile.ClassHolder.addString(ClassHolder.java:506)
>   at 
> org.apache.derby.iapi.services.classfile.ClassHolder.addConstant(ClassHolder.java:302)
>   at 
> org.apache.derby.impl.services.bytecode.BCMethod.push(BCMethod.java:452)
>   at 
> org.apache.derby.impl.sql.compile.FromBaseTable.generateDistinctScan(FromBaseTable.java:3216)
>   at 
> org.apache.derby.impl.sql.compile.FromBaseTable.generateResultSet(FromBaseTable.java:3032)
>   at 
> org.apache.derby.impl.sql.compile.FromBaseTable.generate(FromBaseTable.java:2978)
>   at 
> org.apache.derby.impl.sql.compile.ProjectRestrictNode.generateMinion(ProjectRestrictNode.java:1196)
>   at 
> org.apache.derby.impl.sql.compile.ProjectRestrictNode.generate(ProjectRestrictNode.java:1145)
>   at 
> org.apache.derby.impl.sql.compile.ProjectRestrictNode.generateMinion(ProjectRestrictNode.java:1196)
>   at 
> org.apache.derby.impl.sql.compile.ProjectRestrictNode.generate(ProjectRestrictNode.java:1145)
>   at 
> org.apache.derby.impl.sql.compile.ProjectRestrictNode.generateMinion(ProjectRestrictNode.java:1196)
>   at 
> org.apache.derby.impl.sql.compile.ProjectRestrictNode.generate(ProjectRestrictNode.java:1145)
>   at 
> org.apache.derby.impl.sql.compile.ProjectRestrictNode.generateMinion(ProjectRestrictNode.java:1196)
>   at 
> org.apache.derby.impl.sql.compile.ProjectRestrictNode.generate(ProjectRestrictNode.java:1145)
>   at 
> org.apache.derby.impl.sql.compile.ScrollInsensitiveResultSetNode.generate(ScrollInsensitiveResultSetNode.java:109)
>   at 
> org.apache.derby.impl.sql.compile.ReadCursorNode.generate(ReadCursorNode.java:118)
>   at 
> org.apache.derby.impl.sql.compile.CursorNode.generate(CursorNode.java:546)
>   at 
> org.apache.derby.impl.sql.compile.StatementNode.generate(StatementNode.java:232)
>   at 
> org.apache.derby.impl.sql.GenericStatement.prepMinion(GenericStatement.java:433)
>   at 
> org.apache.derby.impl.sql.GenericStatement.prepare(GenericStatement.java:107)
>   at 
> org.apache.derby.impl.sql.conn.GenericLanguageConnectionContext.prepareInternalStatement(GenericLanguageConnectionContext.java:704)
>   at 
> org.apache.derby.impl.jdbc.EmbedStatement.execute(EmbedStatement.java:533)
>   at 
> org.apache.derby.impl.jdbc.EmbedStatement.execute(EmbedStatement.java:480)
>   at org.apache.derby.impl.tools.ij.ij.executeImmediate(ij.java:299)
>   at org.apache.derby.impl.tools.ij.utilMain.doCatch(utilMain.java:433)
>   at org.apache.derby.impl.tools.ij.utilMain.go(utilMain.java:310)
>   at org.apache.derby.impl.tools.ij.Main.go(Main.java:203)
>   at org.apache.derby.impl.tools.ij.Main.mainCore(Main.java:169)
>   at org.apache.derby.impl.tools.ij.Main14.main(Main14.java:55)
>   at org.apache.derby.tools.ij.main(ij.java:60)

-- 
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



Re: [jira] Commented: (DERBY-578) Grouped select from temporary table raises null pointer exception in byte code generator

2006-06-16 Thread Manish Khettry
Since only predicatePushdown failed, I generated a
context diff for this one file. I already have a bunch
of other uncommitted changes in my view, so I'm not
sure how I can generate one patch file without pulling
in a lot of other stuff.

The following sequence of steps should work.

1. Apply the complete patch (578.patch.txt). 
2. revert predicatePushdown
3. patch predicatePushdown.

Manish

--- "Rick Hillegas (JIRA)" 
wrote:

> [
>
http://issues.apache.org/jira/browse/DERBY-578?page=comments#action_12416588
> ] 
> 
> Rick Hillegas commented on DERBY-578:
> -
> 
> Hi Manish,
> 
> I'm confused about what I'm supposed to do with the
> latest attachment. It looks like it might just be
> the changes to predicatePushdown.out. Could you give
> me a single patch file which contains everything I
> need to apply this patch and which I can apply with
> a single patch command? Thanks-Rick
> 
> > Grouped select from temporary table raises null
> pointer exception in byte code generator
> >
>

> >
> >  Key: DERBY-578
> >  URL:
> http://issues.apache.org/jira/browse/DERBY-578
> >  Project: Derby
> > Type: Bug
> 
> >   Components: SQL, Services
> > Reporter: Rick Hillegas
> > Assignee: Manish Khettry
> >  Attachments: 578.diff.txt,
> predicatePushdown.out.patch
> >
> > The last statement in the following script:
> > autocommit off;
> > declare global temporary table session.ztemp
> > ( orderID varchar( 50 ) )
> > not logged;
> > select orderID from session.ztemp group by
> orderID;
> > raises the following stack trace in the trunk:
> > java.lang.NullPointerException
> > at java.util.Hashtable.get(Hashtable.java:333)
> > at
>
org.apache.derby.iapi.services.classfile.ClassHolder.findMatchingEntry(ClassHolder.java:656)
> > at
>
org.apache.derby.iapi.services.classfile.ClassHolder.addUtf8Entry(ClassHolder.java:482)
> > at
>
org.apache.derby.iapi.services.classfile.ClassHolder.addString(ClassHolder.java:506)
> > at
>
org.apache.derby.iapi.services.classfile.ClassHolder.addConstant(ClassHolder.java:302)
> > at
>
org.apache.derby.impl.services.bytecode.BCMethod.push(BCMethod.java:452)
> > at
>
org.apache.derby.impl.sql.compile.FromBaseTable.generateDistinctScan(FromBaseTable.java:3216)
> > at
>
org.apache.derby.impl.sql.compile.FromBaseTable.generateResultSet(FromBaseTable.java:3032)
> > at
>
org.apache.derby.impl.sql.compile.FromBaseTable.generate(FromBaseTable.java:2978)
> > at
>
org.apache.derby.impl.sql.compile.ProjectRestrictNode.generateMinion(ProjectRestrictNode.java:1196)
> > at
>
org.apache.derby.impl.sql.compile.ProjectRestrictNode.generate(ProjectRestrictNode.java:1145)
> > at
>
org.apache.derby.impl.sql.compile.ProjectRestrictNode.generateMinion(ProjectRestrictNode.java:1196)
> > at
>
org.apache.derby.impl.sql.compile.ProjectRestrictNode.generate(ProjectRestrictNode.java:1145)
> > at
>
org.apache.derby.impl.sql.compile.ProjectRestrictNode.generateMinion(ProjectRestrictNode.java:1196)
> > at
>
org.apache.derby.impl.sql.compile.ProjectRestrictNode.generate(ProjectRestrictNode.java:1145)
> > at
>
org.apache.derby.impl.sql.compile.ProjectRestrictNode.generateMinion(ProjectRestrictNode.java:1196)
> > at
>
org.apache.derby.impl.sql.compile.ProjectRestrictNode.generate(ProjectRestrictNode.java:1145)
> > at
>
org.apache.derby.impl.sql.compile.ScrollInsensitiveResultSetNode.generate(ScrollInsensitiveResultSetNode.java:109)
> > at
>
org.apache.derby.impl.sql.compile.ReadCursorNode.generate(ReadCursorNode.java:118)
> > at
>
org.apache.derby.impl.sql.compile.CursorNode.generate(CursorNode.java:546)
> > at
>
org.apache.derby.impl.sql.compile.StatementNode.generate(StatementNode.java:232)
> > at
>
org.apache.derby.impl.sql.GenericStatement.prepMinion(GenericStatement.java:433)
> > at
>
org.apache.derby.impl.sql.GenericStatement.prepare(GenericStatement.java:107)
> > at
>
org.apache.derby.impl.sql.conn.GenericLanguageConnectionContext.prepareInternalStatement(GenericLanguageConnectionContext.java:704)
> > at
>
org.apache.derby.impl.jdbc.EmbedStatement.execute(EmbedStatement.java:533)
> > at
>
org.apache.derby.impl.jdbc.EmbedStatement.execute(EmbedStatement.java:480)
> > at
>
org.apache.derby.impl.tools.ij.ij.executeImmediate(ij.java:299)
> > at
>
org.apache.derby.impl.tools.ij.utilMain.doCatch(utilMain.java:433)
> > at
>
org.apache.derby.impl.tools.ij.utilMain.go(utilMain.java:310)
> > at
>
org.apache.derby.impl.tools.ij.Main.go(Main.java:203)
> > at
>
org.apache.derby.impl.tools.ij.Main.mainCore(Main.java:169)
> > at
>
org.apache.derby.impl.tools.ij.Main14.main(Main14.java:55)
> > at org.apache.derby.tools.ij.main(ij.java:60)
> 
> -- 
> This message is automatically generated by JIRA.
> -
> If you think it was sent incorrectly contact one

[jira] Commented: (DERBY-578) Grouped select from temporary table raises null pointer exception in byte code generator

2006-06-16 Thread Rick Hillegas (JIRA)
[ 
http://issues.apache.org/jira/browse/DERBY-578?page=comments#action_12416588 ] 

Rick Hillegas commented on DERBY-578:
-

Hi Manish,

I'm confused about what I'm supposed to do with the latest attachment. It looks 
like it might just be the changes to predicatePushdown.out. Could you give me a 
single patch file which contains everything I need to apply this patch and 
which I can apply with a single patch command? Thanks-Rick

> Grouped select from temporary table raises null pointer exception in byte 
> code generator
> 
>
>  Key: DERBY-578
>  URL: http://issues.apache.org/jira/browse/DERBY-578
>  Project: Derby
> Type: Bug

>   Components: SQL, Services
> Reporter: Rick Hillegas
> Assignee: Manish Khettry
>  Attachments: 578.diff.txt, predicatePushdown.out.patch
>
> The last statement in the following script:
> autocommit off;
> declare global temporary table session.ztemp
> ( orderID varchar( 50 ) )
> not logged;
> select orderID from session.ztemp group by orderID;
> raises the following stack trace in the trunk:
> java.lang.NullPointerException
>   at java.util.Hashtable.get(Hashtable.java:333)
>   at 
> org.apache.derby.iapi.services.classfile.ClassHolder.findMatchingEntry(ClassHolder.java:656)
>   at 
> org.apache.derby.iapi.services.classfile.ClassHolder.addUtf8Entry(ClassHolder.java:482)
>   at 
> org.apache.derby.iapi.services.classfile.ClassHolder.addString(ClassHolder.java:506)
>   at 
> org.apache.derby.iapi.services.classfile.ClassHolder.addConstant(ClassHolder.java:302)
>   at 
> org.apache.derby.impl.services.bytecode.BCMethod.push(BCMethod.java:452)
>   at 
> org.apache.derby.impl.sql.compile.FromBaseTable.generateDistinctScan(FromBaseTable.java:3216)
>   at 
> org.apache.derby.impl.sql.compile.FromBaseTable.generateResultSet(FromBaseTable.java:3032)
>   at 
> org.apache.derby.impl.sql.compile.FromBaseTable.generate(FromBaseTable.java:2978)
>   at 
> org.apache.derby.impl.sql.compile.ProjectRestrictNode.generateMinion(ProjectRestrictNode.java:1196)
>   at 
> org.apache.derby.impl.sql.compile.ProjectRestrictNode.generate(ProjectRestrictNode.java:1145)
>   at 
> org.apache.derby.impl.sql.compile.ProjectRestrictNode.generateMinion(ProjectRestrictNode.java:1196)
>   at 
> org.apache.derby.impl.sql.compile.ProjectRestrictNode.generate(ProjectRestrictNode.java:1145)
>   at 
> org.apache.derby.impl.sql.compile.ProjectRestrictNode.generateMinion(ProjectRestrictNode.java:1196)
>   at 
> org.apache.derby.impl.sql.compile.ProjectRestrictNode.generate(ProjectRestrictNode.java:1145)
>   at 
> org.apache.derby.impl.sql.compile.ProjectRestrictNode.generateMinion(ProjectRestrictNode.java:1196)
>   at 
> org.apache.derby.impl.sql.compile.ProjectRestrictNode.generate(ProjectRestrictNode.java:1145)
>   at 
> org.apache.derby.impl.sql.compile.ScrollInsensitiveResultSetNode.generate(ScrollInsensitiveResultSetNode.java:109)
>   at 
> org.apache.derby.impl.sql.compile.ReadCursorNode.generate(ReadCursorNode.java:118)
>   at 
> org.apache.derby.impl.sql.compile.CursorNode.generate(CursorNode.java:546)
>   at 
> org.apache.derby.impl.sql.compile.StatementNode.generate(StatementNode.java:232)
>   at 
> org.apache.derby.impl.sql.GenericStatement.prepMinion(GenericStatement.java:433)
>   at 
> org.apache.derby.impl.sql.GenericStatement.prepare(GenericStatement.java:107)
>   at 
> org.apache.derby.impl.sql.conn.GenericLanguageConnectionContext.prepareInternalStatement(GenericLanguageConnectionContext.java:704)
>   at 
> org.apache.derby.impl.jdbc.EmbedStatement.execute(EmbedStatement.java:533)
>   at 
> org.apache.derby.impl.jdbc.EmbedStatement.execute(EmbedStatement.java:480)
>   at org.apache.derby.impl.tools.ij.ij.executeImmediate(ij.java:299)
>   at org.apache.derby.impl.tools.ij.utilMain.doCatch(utilMain.java:433)
>   at org.apache.derby.impl.tools.ij.utilMain.go(utilMain.java:310)
>   at org.apache.derby.impl.tools.ij.Main.go(Main.java:203)
>   at org.apache.derby.impl.tools.ij.Main.mainCore(Main.java:169)
>   at org.apache.derby.impl.tools.ij.Main14.main(Main14.java:55)
>   at org.apache.derby.tools.ij.main(ij.java:60)

-- 
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



[jira] Commented: (DERBY-578) Grouped select from temporary table raises null pointer exception in byte code generator

2006-06-15 Thread Rick Hillegas (JIRA)
[ 
http://issues.apache.org/jira/browse/DERBY-578?page=comments#action_12416403 ] 

Rick Hillegas commented on DERBY-578:
-

Hi Manish,

I would like to take a look at this patch, but I get the following errors when 
I try to apply it to my workspace. Could you regenerate the patch? Thanks-Rick

(Stripping trailing CRs from patch.)
patching file java/tools/org/apache/derby/impl/tools/ij/xaHelper.java
Hunk #1 succeeded at 64 (offset 1 line).
(Stripping trailing CRs from patch.)
patching file java/engine/org/apache/derby/impl/sql/compile/FromBaseTable.java
Hunk #1 succeeded at 3085 (offset 4 lines).
Hunk #2 succeeded at 3125 (offset 4 lines).
Hunk #3 succeeded at 3152 (offset 4 lines).
Hunk #4 succeeded at 3187 (offset 4 lines).
Hunk #5 succeeded at 3247 (offset 4 lines).
(Stripping trailing CRs from patch.)
patching file 
java/testing/org/apache/derbyTesting/functionTests/tests/lang/distinct.sql
(Stripping trailing CRs from patch.)
patching file 
java/testing/org/apache/derbyTesting/functionTests/master/distinctElimination.out
(Stripping trailing CRs from patch.)
patching file 
java/testing/org/apache/derbyTesting/functionTests/master/distinct.out
(Stripping trailing CRs from patch.)
patching file 
java/testing/org/apache/derbyTesting/functionTests/master/j9_13/distinct.out
(Stripping trailing CRs from patch.)
patching file 
java/testing/org/apache/derbyTesting/functionTests/master/j9_22/distinct.out
(Stripping trailing CRs from patch.)
patching file 
java/testing/org/apache/derbyTesting/functionTests/master/predicatePushdown.out
Hunk #1 succeeded at 9052 (offset 1480 lines).
Hunk #2 succeeded at 9071 (offset 1480 lines).
Hunk #3 succeeded at 9090 (offset 1480 lines).
Hunk #4 succeeded at 9109 with fuzz 1 (offset 1480 lines).
Hunk #5 FAILED at 9215.
Hunk #6 FAILED at 9234.
Hunk #7 succeeded at 9259 (offset 1480 lines).
Hunk #8 FAILED at 9278.
Hunk #9 succeeded at 9297 with fuzz 1 (offset 1480 lines).
Hunk #10 FAILED at 9316.
Hunk #11 succeeded at 9335 with fuzz 1 (offset 1480 lines).
4 out of 11 hunks FAILED -- saving rejects to file 
java/testing/org/apache/derbyTesting/functionTests/master/predicatePu
shdown.out.rej
(Stripping trailing CRs from patch.)
patching file 
java/testing/org/apache/derbyTesting/functionTests/master/subquery.out

> Grouped select from temporary table raises null pointer exception in byte 
> code generator
> 
>
>  Key: DERBY-578
>  URL: http://issues.apache.org/jira/browse/DERBY-578
>  Project: Derby
> Type: Bug

>   Components: SQL, Services
> Reporter: Rick Hillegas
> Assignee: Manish Khettry
>  Attachments: 578.diff.txt
>
> The last statement in the following script:
> autocommit off;
> declare global temporary table session.ztemp
> ( orderID varchar( 50 ) )
> not logged;
> select orderID from session.ztemp group by orderID;
> raises the following stack trace in the trunk:
> java.lang.NullPointerException
>   at java.util.Hashtable.get(Hashtable.java:333)
>   at 
> org.apache.derby.iapi.services.classfile.ClassHolder.findMatchingEntry(ClassHolder.java:656)
>   at 
> org.apache.derby.iapi.services.classfile.ClassHolder.addUtf8Entry(ClassHolder.java:482)
>   at 
> org.apache.derby.iapi.services.classfile.ClassHolder.addString(ClassHolder.java:506)
>   at 
> org.apache.derby.iapi.services.classfile.ClassHolder.addConstant(ClassHolder.java:302)
>   at 
> org.apache.derby.impl.services.bytecode.BCMethod.push(BCMethod.java:452)
>   at 
> org.apache.derby.impl.sql.compile.FromBaseTable.generateDistinctScan(FromBaseTable.java:3216)
>   at 
> org.apache.derby.impl.sql.compile.FromBaseTable.generateResultSet(FromBaseTable.java:3032)
>   at 
> org.apache.derby.impl.sql.compile.FromBaseTable.generate(FromBaseTable.java:2978)
>   at 
> org.apache.derby.impl.sql.compile.ProjectRestrictNode.generateMinion(ProjectRestrictNode.java:1196)
>   at 
> org.apache.derby.impl.sql.compile.ProjectRestrictNode.generate(ProjectRestrictNode.java:1145)
>   at 
> org.apache.derby.impl.sql.compile.ProjectRestrictNode.generateMinion(ProjectRestrictNode.java:1196)
>   at 
> org.apache.derby.impl.sql.compile.ProjectRestrictNode.generate(ProjectRestrictNode.java:1145)
>   at 
> org.apache.derby.impl.sql.compile.ProjectRestrictNode.generateMinion(ProjectRestrictNode.java:1196)
>   at 
> org.apache.derby.impl.sql.compile.ProjectRestrictNode.generate(ProjectRestrictNode.java:1145)
>   at 
> org.apache.derby.impl.sql.compile.ProjectRestrictNode.generateMinion(ProjectRestrictNode.java:1196)
>   at 
> org.apache.derby.impl.sql.compile.ProjectRestrictNode.generate(ProjectRestrictNode.java:1145)
>   at 
> org.apache.derby.impl.sql.compile.ScrollInsensitiveResultSetNode.generate(ScrollInsensitiveResultSetNode.java:109)
>   at 
> org.apache.derby.impl.sql.compile.ReadCursorNode.generate(R