db-derby-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Myrna van Lunteren (JIRA)" <j...@apache.org>
Subject [jira] Issue Comment Edited: (DERBY-4142) java.lang.VerifyError causing java.sql.SQLException: Cannot create an instance of generated class ... in lang.GeneratedColumnsTest and GeneratedColumnsPermsTest on IBM iseries
Date Thu, 04 Jun 2009 16:57:07 GMT

    [ https://issues.apache.org/jira/browse/DERBY-4142?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12716323#action_12716323
] 

Myrna van Lunteren edited comment on DERBY-4142 at 6/4/09 9:55 AM:
-------------------------------------------------------------------

I'm attaching the decompile result of the decompile with jode (as Rick had said he's had good
results it seemed worthwhile trying it out).
I then turned the class into d4142generated.java (to simplify the name, also attached) and
then compiled that class with javac. 
This gives:

d4142generated.java:100: e2() in org.apache.derby.exe.d4142generated cannot implement e2()
in org.apache.derby.iapi.services.loader.GeneratedByteCode; overridden method does not throw
java.lang.Exception
    public Object e2() throws StandardException, Exception {
                  ^
d4142generated.java:81: e1() in org.apache.derby.exe.d4142generated cannot implement e1()
in org.apache.derby.iapi.services.loader.GeneratedByteCode; overridden method does not throw
java.lang.Exception
    public Object e1() throws StandardException, Exception {
                  ^
d4142generated.java:77: e0() in org.apache.derby.exe.d4142generated cannot implement e0()
in org.apache.derby.iapi.services.loader.GeneratedByteCode; overridden method does not throw
java.lang.Exception
    public Object e0() throws StandardException, Exception {
                  ^
d4142generated.java:86: incompatible types
found   : org.apache.derby.iapi.sql.Row
required: org.apache.derby.iapi.sql.execute.ExecRow
	    = /*TYPE_ERROR*/ row;
	                     ^

I suspect the last one is our problem, and will work to fix that issue first.


      was (Author: myrna):
    I'm attaching the recompile result of the decompile with jode (as Rick had said he's had
good results it seemed worthwhile trying it out).
I then turned the class into d4142generated.java (to simplify the name, also attached) and
then compiled that class with javac. 
This gives:

d4142generated.java:100: e2() in org.apache.derby.exe.d4142generated cannot implement e2()
in org.apache.derby.iapi.services.loader.GeneratedByteCode; overridden method does not throw
java.lang.Exception
    public Object e2() throws StandardException, Exception {
                  ^
d4142generated.java:81: e1() in org.apache.derby.exe.d4142generated cannot implement e1()
in org.apache.derby.iapi.services.loader.GeneratedByteCode; overridden method does not throw
java.lang.Exception
    public Object e1() throws StandardException, Exception {
                  ^
d4142generated.java:77: e0() in org.apache.derby.exe.d4142generated cannot implement e0()
in org.apache.derby.iapi.services.loader.GeneratedByteCode; overridden method does not throw
java.lang.Exception
    public Object e0() throws StandardException, Exception {
                  ^
d4142generated.java:86: incompatible types
found   : org.apache.derby.iapi.sql.Row
required: org.apache.derby.iapi.sql.execute.ExecRow
	    = /*TYPE_ERROR*/ row;
	                     ^

I suspect the last one is our problem, and will work to fix that issue first.

  
> java.lang.VerifyError causing java.sql.SQLException: Cannot create an instance of generated
class ... in lang.GeneratedColumnsTest and GeneratedColumnsPermsTest  on IBM iseries
> --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: DERBY-4142
>                 URL: https://issues.apache.org/jira/browse/DERBY-4142
>             Project: Derby
>          Issue Type: Bug
>    Affects Versions: 10.5.1.1
>         Environment: IBM iseries (AS 400) with ibm 1.5 (build 1.5.0_13-b05)
>            Reporter: Myrna van Lunteren
>         Attachments: create.sql, d4142generated.java, decompile.out, derby.properties,
repro.sql, runjodedecompile.out, verify.out
>
>
> This results in 22 errors.
> Here's the stack trace with an insane build:
> 1) test_005_basicInsert(org.apache.derbyTesting.functionTests.tests.lang.GeneratedColumnsTest)java.sql.SQLException:
Cannot create an instance of generated class org.apache.derby.exe.acd83d18d1x0120x62bdx2dffxffffb19003081.
> 	at java.lang.Throwable.<init>(Throwable.java:196)
> 	at java.lang.Exception.<init>(Exception.java:41)
> 	at java.sql.SQLException.<init>(SQLException.java:40)
> 	at org.apache.derby.impl.jdbc.EmbedSQLException.<init>(Unknown Source)
> 	at org.apache.derby.impl.jdbc.SQLExceptionFactory.getSQLException(Unknown Source)
> 	at org.apache.derby.impl.jdbc.Util.newEmbedSQLException(Unknown Source)
> 	at org.apache.derby.impl.jdbc.Util.seeNextException(Unknown Source)
> 	at org.apache.derby.impl.jdbc.TransactionResourceImpl.wrapInSQLException(Unknown Source)
> 	at org.apache.derby.impl.jdbc.TransactionResourceImpl.handleException(Unknown Source)
> 	at org.apache.derby.impl.jdbc.EmbedConnection.handleException(Unknown Source)
> 	at org.apache.derby.impl.jdbc.ConnectionChild.handleException(Unknown Source)
> 	at org.apache.derby.impl.jdbc.EmbedPreparedStatement.<init>(Unknown Source)
> 	at org.apache.derby.impl.jdbc.EmbedPreparedStatement20.<init>(Unknown Source)
> 	at org.apache.derby.impl.jdbc.EmbedPreparedStatement30.<init>(Unknown Source)
> 	at org.apache.derby.jdbc.Driver30.newEmbedPreparedStatement(Unknown Source)
> 	at org.apache.derby.impl.jdbc.EmbedConnection.prepareStatement(Unknown Source)
> 	at org.apache.derby.impl.jdbc.EmbedConnection.prepareStatement(Unknown Source)
> 	at org.apache.derbyTesting.functionTests.tests.lang.GeneratedColumnsHelper.chattyPrepare(GeneratedColumnsHelper.java:147)
> 	at org.apache.derbyTesting.functionTests.tests.lang.GeneratedColumnsHelper.goodStatement(GeneratedColumnsHelper.java:125)
> 	at org.apache.derbyTesting.functionTests.tests.lang.GeneratedColumnsTest.test_005_basicInsert(GeneratedColumnsTest.java:427)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> 	at org.apache.derbyTesting.junit.BaseTestCase.runBare(BaseTestCase.java:105)
> 	at junit.extensions.TestDecorator.basicRun(TestDecorator.java:22)
> 	at junit.extensions.TestSetup$1.protect(TestSetup.java:19)
> 	at junit.extensions.TestSetup.run(TestSetup.java:23)
> 	at org.apache.derbyTesting.junit.BaseTestSetup.run(BaseTestSetup.java:57)
> 	at junit.extensions.TestDecorator.basicRun(TestDecorator.java:22)
> 	at junit.extensions.TestSetup$1.protect(TestSetup.java:19)
> 	at junit.extensions.TestSetup.run(TestSetup.java:23)
> Caused by: java.sql.SQLException: Java exception: 'org/apache/derby/exe/acd83d18d1x0120x62bdx2dffxffffb19003081
0000 0000 : java.lang.VerifyError'.
> 	at java.lang.Throwable.<init>(Throwable.java:196)
> 	at java.lang.Exception.<init>(Exception.java:41)
> 	at java.sql.SQLException.<init>(SQLException.java:40)
> 	at org.apache.derby.impl.jdbc.EmbedSQLException.<init>(Unknown Source)
> 	at org.apache.derby.impl.jdbc.SQLExceptionFactory.getSQLException(Unknown Source)
> 	at org.apache.derby.impl.jdbc.Util.newEmbedSQLException(Unknown Source)
> 	at org.apache.derby.impl.jdbc.Util.javaException(Unknown Source)
> 	at org.apache.derby.impl.jdbc.TransactionResourceImpl.wrapInSQLException(Unknown Source)
> 	... 43 more
> Caused by: java.lang.VerifyError: org/apache/derby/exe/acd83d18d1x0120x62bdx2dffxffffb19003081
0000 0000 
> 	at java.lang.Throwable.<init>(Throwable.java:196)
> 	at java.lang.Error.<init>(Error.java:49)
> 	at java.lang.VerifyError.<init>(VerifyError.java:34)
> 	at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
> 	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
> 	at java.lang.reflect.Constructor.newInstance(Constructor.java:494)
> 	at org.apache.derby.iapi.services.loader.ClassInfo.getNewInstance(Unknown Source)
> 	at org.apache.derby.impl.services.reflect.LoadedGeneratedClass.newInstance(Unknown Source)
> 	at org.apache.derby.impl.services.reflect.ReflectGeneratedClass.newInstance(Unknown
Source)
> 	at org.apache.derby.impl.sql.GenericActivationHolder.<init>(Unknown Source)
> 	at org.apache.derby.impl.sql.GenericPreparedStatement.getActivation(Unknown Source)
> 	... 39 more

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


Mime
View raw message