IndexChanger.doDelete throws NullPointerException
-------------------------------------------------
Key: DERBY-4585
URL: https://issues.apache.org/jira/browse/DERBY-4585
Project: Derby
Issue Type: Bug
Affects Versions: 10.5.3.0
Environment: Various operating systems, Java 1.6.0_18
Reporter: Martin Keller
After a bunch of DELETE and DROP-Commands, the following error occurs in our
application:
2010-03-16 12:54:23.070 GMT Thread[DRDAConnThread_4,5,derby.daemons] (XID =
15898), (SESSIONID = 1), (DATABASE = ixintrexx), (DRDAID =
NF000001.PAA8-4469821361421447518{2}), Cleanup action starting
2010-03-16 12:54:23.070 GMT Thread[DRDAConnThread_4,5,derby.daemons] (XID =
15898), (SESSIONID = 1), (DATABASE = ixintrexx), (DRDAID =
NF000001.PAA8-4469821361421447518{2}), Failed Statement is: DELETE FROM
LCAPPCHILDCONTROLTITLE WHERE STRCHILDCONTROLGUID IN (SELECT STRGUID FROM
LCAPPCHILDCONTROL WHERE STRAPPCONTROLDRGUID IN (SELECT A.STRGUID FROM
LCAPPCONTROLDR A, LCAPPFUP B WHERE A.STRAPPFUPGUID = B.STRGUID AND B.STRAPPGUID
= '93A720B90BB6C25703701E67D0DA75220B7D2FFC'))
java.lang.NullPointerException
at
org.apache.derby.impl.sql.execute.IndexChanger.doDelete(IndexChanger.java:369)
at
org.apache.derby.impl.sql.execute.IndexChanger.delete(IndexChanger.java:544)
at
org.apache.derby.impl.sql.execute.IndexSetChanger.delete(IndexSetChanger.java:250)
at
org.apache.derby.impl.sql.execute.RowChangerImpl.deleteRow(RowChangerImpl.java:476)
at
org.apache.derby.impl.sql.execute.DeleteResultSet.collectAffectedRows(DeleteResultSet.java:405)
at
org.apache.derby.impl.sql.execute.DeleteResultSet.open(DeleteResultSet.java:137)
at
org.apache.derby.impl.sql.GenericPreparedStatement.executeStmt(GenericPreparedStatement.java:416)
at
org.apache.derby.impl.sql.GenericPreparedStatement.execute(GenericPreparedStatement.java:297)
at
org.apache.derby.impl.jdbc.EmbedStatement.executeStatement(EmbedStatement.java:1235)
at
org.apache.derby.impl.jdbc.EmbedStatement.execute(EmbedStatement.java:625)
at
org.apache.derby.impl.jdbc.EmbedStatement.executeUpdate(EmbedStatement.java:175)
at
org.apache.derby.impl.drda.DRDAConnThread.parseEXCSQLIMM(DRDAConnThread.java:5022)
at
org.apache.derby.impl.drda.DRDAConnThread.processCommands(DRDAConnThread.java:750)
at
org.apache.derby.impl.drda.DRDAConnThread.run(DRDAConnThread.java:290)
Cleanup action completed
The database seems to be corrupt, after this exception has been thrown.
As you can see, I already compiled Derby to get the line number where the error
occurs. I must apologize for not having a sufficient test case yet, but the
code leading to this issue is very complex. If one wants to reproduce this bug,
I can send a download link for our product and instructions to reproduce the
problem.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.