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 2009/12/17 12:50:18 UTC
[jira] Updated: (DERBY-4479) after rename table a to b then create
table a statement execute cause null point exception
[ https://issues.apache.org/jira/browse/DERBY-4479?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Knut Anders Hatlen updated DERBY-4479:
--------------------------------------
Component/s: (was: JDBC)
SQL
Issue & fix info: [Repro attached]
Affects Version/s: 10.6.0.0
10.0.2.1
10.1.1.0
10.2.2.0
10.3.3.0
10.4.2.0
Bug behavior facts: (was: [Deviation from standard])
Here's a simplified version of the repro:
ij> create table a (x int not null primary key);
0 rows inserted/updated/deleted
ij> rename table a to b;
0 rows inserted/updated/deleted
ij> create table a (x int not null primary key);
ERROR XJ001: Java exception: ': java.lang.NullPointerException'.
Note that the two CREATE TABLE statements must be identical. Even a simple whitespace change makes the second CREATE TABLE succeed:
ij> create table a (x int not null primary key);
0 rows inserted/updated/deleted
ij> rename table a to b;
0 rows inserted/updated/deleted
ij> create table a ( x int not null primary key);
0 rows inserted/updated/deleted
This may indicate that the CREATE TABLE statement is not properly invalidated in the statement cache when RENAME TABLE is performed.
> after rename table a to b then create table a statement execute cause null point exception
> ------------------------------------------------------------------------------------------
>
> Key: DERBY-4479
> URL: https://issues.apache.org/jira/browse/DERBY-4479
> Project: Derby
> Issue Type: Bug
> Components: SQL
> Affects Versions: 10.0.2.1, 10.1.1.0, 10.2.2.0, 10.3.3.0, 10.4.2.0, 10.5.3.0, 10.6.0.0
> Environment: Windows XP SP2
> java version "1.5.0_16"
> Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_16-b02)
> Java HotSpot(TM) Client VM (build 1.5.0_16-b02, mixed mode, sharing)
> Reporter: dragon lee
> Priority: Minor
>
> step 1 : create original table
> CREATE TABLE BPEL_ARCHIVE (
> EVENT_TIME CHAR(17) NOT NULL,
> BUSINESS_ID VARCHAR(100) NOT NULL,
> EVENT_TYPE INT,
> EVENT_CONTENT BLOB,
> PRIMARY KEY ( EVENT_TIME )
> )
> step 2 : rename original table to backup table
> RENAME TABLE BPEL_ARCHIVE TO BPEL_ARCHIVE_200912171148_200912171148
> step 3 : create original table
> cause error...
> java.sql.SQLException: Java exception: ': java.lang.NullPointerException'.
> 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)
> 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 world.dragon.service.bpel.event.derby.DerbyArchiveEndpoint.switchTargetTable(DerbyArchiveEndpoint.java:295)
> ...................................
> Caused by: java.lang.NullPointerException
> at org.apache.derby.impl.sql.execute.CreateIndexConstantAction.executeConstantAction(Unknown Source)
> at org.apache.derby.impl.sql.execute.CreateConstraintConstantAction.executeConstantAction(Unknown Source)
> at org.apache.derby.impl.sql.execute.CreateTableConstantAction.executeConstantAction(Unknown Source)
> at org.apache.derby.impl.sql.execute.MiscResultSet.open(Unknown Source)
> at org.apache.derby.impl.sql.GenericPreparedStatement.executeStmt(Unknown Source)
> at org.apache.derby.impl.sql.GenericPreparedStatement.execute(Unknown Source)
> ... 28 more
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.