You are viewing a plain text version of this content. The canonical link for it is here.
Posted to derby-dev@db.apache.org by "Knut Anders Hatlen (JIRA)" <ji...@apache.org> on 2011/03/08 16:17:59 UTC

[jira] Commented: (DERBY-5105) NoSuchMethodError in upgrade tests (testTriggerBasic)

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

Knut Anders Hatlen commented on DERBY-5105:
-------------------------------------------

To reproduce outside of the upgrade tests, and without using Java 7 or phoneME, perform the following steps:

1) Using Derby 10.5.3.0, execute the following SQL statements:

CREATE TABLE Trigger_t1 
(c1 INTEGER NOT NULL GENERATED ALWAYS 
AS IDENTITY (START WITH 1, INCREMENT BY 1), 
max_size INTEGER NOT NULL, 
CONSTRAINT c1_pk PRIMARY KEY (c1));

CREATE TABLE Trigger_t2 
(c1 INTEGER DEFAULT 0 NOT NULL);

CREATE TRIGGER gls_blt_trg 
AFTER INSERT ON Trigger_t1 FOR EACH ROW MODE DB2SQL
INSERT INTO Trigger_t2(c1) 
VALUES ( (select max(c1) from Trigger_t1));

INSERT INTO Trigger_t1(max_size)  VALUES(20);

2) Connect to the same database using Derby 10.7.1.1 or Derby trunk, and execute the following SQL statement:

INSERT INTO Trigger_t1(max_size) VALUES(20);

3) Connect to the database again using Derby 10.5.3.0, and execute the INSERT statement again. You'll then see the NoSuchMethodError:

ij> INSERT INTO Trigger_t1(max_size)  VALUES(20);
ERROR XJ001: Java exception: 'org.apache.derby.iapi.sql.execute.ResultSetFactory.getProjectRestrictResultSet(Lorg/apache/derby/iapi/sql/execute/NoPutResultSet;Lorg/apache/derby/iapi/services/loader/GeneratedMethod;Lorg/apache/derby/iapi/services/loader/GeneratedMethod;ILorg/apache/derby/iapi/services/loader/GeneratedMethod;IIZZDD)Lorg/apache/derby/iapi/sql/execute/NoPutResultSet;: java.lang.NoSuchMethodError'.

> NoSuchMethodError in upgrade tests (testTriggerBasic)
> -----------------------------------------------------
>
>                 Key: DERBY-5105
>                 URL: https://issues.apache.org/jira/browse/DERBY-5105
>             Project: Derby
>          Issue Type: Bug
>          Components: SQL
>    Affects Versions: 10.7.1.1, 10.8.0.0
>            Reporter: Knut Anders Hatlen
>
> If the test case BasicSetup.testTriggerBasic runs after the test cases testCreateTable and testIndex, the upgrade test will fail with a NoSuchMethodError in the post soft upgrade phase when testing upgrade from 10.5.x.
> Example from the nightly testing:
> http://dbtg.foundry.sun.com/derby/test/Daily/jvm1.7/testing/testlog/lin/1076682-suitesAll_diff.txt
> 2) testTriggerBasic(org.apache.derbyTesting.functionTests.tests.upgradeTests.BasicSetup)java.sql.SQLException: Java exception: 'org.apache.derby.iapi.sql.execute.ResultSetFactory.getProjectRestrictResultSet(Lorg/apache/derby/iapi/sql/execute/NoPutResultSet;Lorg/apache/derby/iapi/services/loader/GeneratedMethod;Lorg/apache/derby/iapi/services/loader/GeneratedMethod;ILorg/apache/derby/iapi/services/loader/GeneratedMethod;IIZZDD)Lorg/apache/derby/iapi/sql/execute/NoPutResultSet;: java.lang.NoSuchMethodError'.
> 	at org.apache.derby.impl.jdbc.SQLExceptionFactory40.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)
> 	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.EmbedStatement.executeStatement(Unknown Source)
> 	at org.apache.derby.impl.jdbc.EmbedStatement.execute(Unknown Source)
> 	at org.apache.derby.impl.jdbc.EmbedStatement.executeUpdate(Unknown Source)
> 	at org.apache.derbyTesting.functionTests.tests.upgradeTests.BasicSetup.testTriggerBasic(BasicSetup.java:82)
> It's seen occasionally on Java 7 and consistently on phoneME.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira