IOException: Incorrect function on rollback after expected duplicate key error
(23505)
--------------------------------------------------------------------------------------
Key: DERBY-4234
URL: https://issues.apache.org/jira/browse/DERBY-4234
Project: Derby
Issue Type: Bug
Affects Versions: 10.4.2.1
Environment: windows 2000, Service pack 4, ibm 1.5, (SR7).
Reporter: Myrna van Lunteren
I saw this failure in running access.sql with DES
(derbyall/encryptionAll/encryptionDES/access) on a build off the 10.4 branch
(build: 774615).
There were no recent changes, not to the codeline nor to the machine, and
subsequent runs haven't popped this again either...
There was also no stack trace saved in the .tmp, just the errors.
Still, here's the relevant stack trace from derby.log:
--------------------------------------------------------------------------------
insert into foo (select foo2.a, 'even2', foo2.c from foo2)
ERROR 23505: The statement was aborted because it would have caused a duplicate
key value in a unique or primary key constraint or unique index identified by
'A' defined on 'FOO'.
at org.apache.derby.iapi.error.StandardException.newException(Unknown
Source)
at
org.apache.derby.impl.sql.execute.IndexChanger.insertAndCheckDups(Unknown
Source)
at org.apache.derby.impl.sql.execute.IndexChanger.doInsert(Unknown
Source)
at org.apache.derby.impl.sql.execute.IndexChanger.insert(Unknown Source)
at org.apache.derby.impl.sql.execute.IndexSetChanger.insert(Unknown
Source)
at org.apache.derby.impl.sql.execute.RowChangerImpl.insertRow(Unknown
Source)
at
org.apache.derby.impl.sql.execute.InsertResultSet.normalInsertCore(Unknown
Source)
at org.apache.derby.impl.sql.execute.InsertResultSet.open(Unknown
Source)
at org.apache.derby.impl.sql.GenericPreparedStatement.execute(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.execute(Unknown Source)
at org.apache.derby.impl.tools.ij.ij.executeImmediate(Unknown Source)
at org.apache.derby.impl.tools.ij.utilMain.doCatch(Unknown Source)
at org.apache.derby.impl.tools.ij.utilMain.runScriptGuts(Unknown Source)
at org.apache.derby.impl.tools.ij.utilMain.go(Unknown Source)
at org.apache.derby.impl.tools.ij.Main.go(Unknown Source)
at org.apache.derby.impl.tools.ij.Main.mainCore(Unknown Source)
at org.apache.derby.impl.tools.ij.Main.main(Unknown Source)
at org.apache.derby.tools.ij.main(Unknown Source)
Cleanup action completed
------------ BEGIN SHUTDOWN ERROR STACK -------------
ERROR XSLA5: Cannot read log stream for some reason to rollback transaction {0}.
at org.apache.derby.iapi.error.StandardException.newException(Unknown
Source)
at org.apache.derby.impl.store.raw.log.FileLogger.undo(Unknown Source)
at org.apache.derby.impl.store.raw.xact.Xact.abort(Unknown Source)
at org.apache.derby.impl.store.access.RAMTransaction.abort(Unknown
Source)
at
org.apache.derby.impl.sql.conn.GenericLanguageConnectionContext.doRollback(Unknown
Source)
at
org.apache.derby.impl.sql.conn.GenericLanguageConnectionContext.userRollback(Unknown
Source)
at org.apache.derby.impl.jdbc.TransactionResourceImpl.rollback(Unknown
Source)
at org.apache.derby.impl.jdbc.EmbedConnection.rollback(Unknown Source)
at org.apache.derby.impl.tools.ij.ij.RollbackStatement(Unknown Source)
at org.apache.derby.impl.tools.ij.ij.ijStatement(Unknown Source)
at org.apache.derby.impl.tools.ij.utilMain.runScriptGuts(Unknown Source)
at org.apache.derby.impl.tools.ij.utilMain.go(Unknown Source)
at org.apache.derby.impl.tools.ij.Main.go(Unknown Source)
at org.apache.derby.impl.tools.ij.Main.mainCore(Unknown Source)
at org.apache.derby.impl.tools.ij.Main.main(Unknown Source)
at org.apache.derby.tools.ij.main(Unknown Source)
Caused by: java.io.IOException: Incorrect function.
at java.io.RandomAccessFile.writeBytes(Native Method)
at java.io.RandomAccessFile.write(RandomAccessFile.java:493)
at org.apache.derby.impl.store.raw.log.LogAccessFile.writeToLog(Unknown
Source)
at
org.apache.derby.impl.store.raw.log.LogAccessFile.flushDirtyBuffers(Unknown
Source)
at
org.apache.derby.impl.store.raw.log.LogAccessFile.flushLogAccessFile(Unknown
Source)
at org.apache.derby.impl.store.raw.log.LogToFile.flushBuffer(Unknown
Source)
at
org.apache.derby.impl.store.raw.log.LogToFile.openBackwardsScan(Unknown Source)
... 15 more
============= begin nested exception, level (1) ===========
java.io.IOException: Incorrect function.
at java.io.RandomAccessFile.writeBytes(Native Method)
at java.io.RandomAccessFile.write(RandomAccessFile.java:493)
at org.apache.derby.impl.store.raw.log.LogAccessFile.writeToLog(Unknown
Source)
at
org.apache.derby.impl.store.raw.log.LogAccessFile.flushDirtyBuffers(Unknown
Source)
at
org.apache.derby.impl.store.raw.log.LogAccessFile.flushLogAccessFile(Unknown
Source)
at org.apache.derby.impl.store.raw.log.LogToFile.flushBuffer(Unknown
Source)
at
org.apache.derby.impl.store.raw.log.LogToFile.openBackwardsScan(Unknown Source)
at org.apache.derby.impl.store.raw.log.FileLogger.undo(Unknown Source)
at org.apache.derby.impl.store.raw.xact.Xact.abort(Unknown Source)
at org.apache.derby.impl.store.access.RAMTransaction.abort(Unknown
Source)
at
org.apache.derby.impl.sql.conn.GenericLanguageConnectionContext.doRollback(Unknown
Source)
at
org.apache.derby.impl.sql.conn.GenericLanguageConnectionContext.userRollback(Unknown
Source)
at org.apache.derby.impl.jdbc.TransactionResourceImpl.rollback(Unknown
Source)
at org.apache.derby.impl.jdbc.EmbedConnection.rollback(Unknown Source)
at org.apache.derby.impl.tools.ij.ij.RollbackStatement(Unknown Source)
at org.apache.derby.impl.tools.ij.ij.ijStatement(Unknown Source)
at org.apache.derby.impl.tools.ij.utilMain.runScriptGuts(Unknown Source)
at org.apache.derby.impl.tools.ij.utilMain.go(Unknown Source)
at org.apache.derby.impl.tools.ij.Main.go(Unknown Source)
at org.apache.derby.impl.tools.ij.Main.mainCore(Unknown Source)
at org.apache.derby.impl.tools.ij.Main.main(Unknown Source)
at org.apache.derby.tools.ij.main(Unknown Source)
============= end nested exception, level (1) ===========
------------ END SHUTDOWN ERROR STACK -------------
2009-05-14 12:18:14.547 GMT Thread[main,5,main] (XID = 4137), (SESSIONID = 0),
(DATABASE = wombat), (DRDAID = null), Cleanup action starting
2009-05-14 12:18:14.547 GMT Thread[main,5,main] (XID = 4137), (SESSIONID = 0),
(DATABASE = wombat), (DRDAID = null), Failed Statement is: null
ERROR XSTB0: An exception was thrown during transaction abort.
at org.apache.derby.iapi.error.StandardException.newException(Unknown
Source)
at org.apache.derby.impl.store.raw.xact.Xact.abort(Unknown Source)
at org.apache.derby.impl.store.access.RAMTransaction.abort(Unknown
Source)
at
org.apache.derby.impl.sql.conn.GenericLanguageConnectionContext.doRollback(Unknown
Source)
at
org.apache.derby.impl.sql.conn.GenericLanguageConnectionContext.userRollback(Unknown
Source)
at org.apache.derby.impl.jdbc.TransactionResourceImpl.rollback(Unknown
Source)
at org.apache.derby.impl.jdbc.EmbedConnection.rollback(Unknown Source)
at org.apache.derby.impl.tools.ij.ij.RollbackStatement(Unknown Source)
at org.apache.derby.impl.tools.ij.ij.ijStatement(Unknown Source)
at org.apache.derby.impl.tools.ij.utilMain.runScriptGuts(Unknown Source)
at org.apache.derby.impl.tools.ij.utilMain.go(Unknown Source)
at org.apache.derby.impl.tools.ij.Main.go(Unknown Source)
at org.apache.derby.impl.tools.ij.Main.mainCore(Unknown Source)
at org.apache.derby.impl.tools.ij.Main.main(Unknown Source)
at org.apache.derby.tools.ij.main(Unknown Source)
Caused by: ERROR XSLA5: Cannot read log stream for some reason to rollback
transaction {0}.
at org.apache.derby.iapi.error.StandardException.newException(Unknown
Source)
at org.apache.derby.impl.store.raw.log.FileLogger.undo(Unknown Source)
... 14 more
Caused by: java.io.IOException: Incorrect function.
at java.io.RandomAccessFile.writeBytes(Native Method)
at java.io.RandomAccessFile.write(RandomAccessFile.java:493)
at org.apache.derby.impl.store.raw.log.LogAccessFile.writeToLog(Unknown
Source)
at
org.apache.derby.impl.store.raw.log.LogAccessFile.flushDirtyBuffers(Unknown
Source)
at
org.apache.derby.impl.store.raw.log.LogAccessFile.flushLogAccessFile(Unknown
Source)
at org.apache.derby.impl.store.raw.log.LogToFile.flushBuffer(Unknown
Source)
at
org.apache.derby.impl.store.raw.log.LogToFile.openBackwardsScan(Unknown Source)
... 15 more
============= begin nested exception, level (1) ===========
ERROR XSLA5: Cannot read log stream for some reason to rollback transaction {0}.
at org.apache.derby.iapi.error.StandardException.newException(Unknown
Source)
at org.apache.derby.impl.store.raw.log.FileLogger.undo(Unknown Source)
at org.apache.derby.impl.store.raw.xact.Xact.abort(Unknown Source)
at org.apache.derby.impl.store.access.RAMTransaction.abort(Unknown
Source)
at
org.apache.derby.impl.sql.conn.GenericLanguageConnectionContext.doRollback(Unknown
Source)
at
org.apache.derby.impl.sql.conn.GenericLanguageConnectionContext.userRollback(Unknown
Source)
at org.apache.derby.impl.jdbc.TransactionResourceImpl.rollback(Unknown
Source)
at org.apache.derby.impl.jdbc.EmbedConnection.rollback(Unknown Source)
at org.apache.derby.impl.tools.ij.ij.RollbackStatement(Unknown Source)
at org.apache.derby.impl.tools.ij.ij.ijStatement(Unknown Source)
at org.apache.derby.impl.tools.ij.utilMain.runScriptGuts(Unknown Source)
at org.apache.derby.impl.tools.ij.utilMain.go(Unknown Source)
at org.apache.derby.impl.tools.ij.Main.go(Unknown Source)
at org.apache.derby.impl.tools.ij.Main.mainCore(Unknown Source)
at org.apache.derby.impl.tools.ij.Main.main(Unknown Source)
at org.apache.derby.tools.ij.main(Unknown Source)
Caused by: java.io.IOException: Incorrect function.
at java.io.RandomAccessFile.writeBytes(Native Method)
at java.io.RandomAccessFile.write(RandomAccessFile.java:493)
at org.apache.derby.impl.store.raw.log.LogAccessFile.writeToLog(Unknown
Source)
at
org.apache.derby.impl.store.raw.log.LogAccessFile.flushDirtyBuffers(Unknown
Source)
at
org.apache.derby.impl.store.raw.log.LogAccessFile.flushLogAccessFile(Unknown
Source)
at org.apache.derby.impl.store.raw.log.LogToFile.flushBuffer(Unknown
Source)
at
org.apache.derby.impl.store.raw.log.LogToFile.openBackwardsScan(Unknown Source)
... 15 more
============= end nested exception, level (1) ===========
============= begin nested exception, level (2) ===========
java.io.IOException: Incorrect function.
at java.io.RandomAccessFile.writeBytes(Native Method)
at java.io.RandomAccessFile.write(RandomAccessFile.java:493)
at org.apache.derby.impl.store.raw.log.LogAccessFile.writeToLog(Unknown
Source)
at
org.apache.derby.impl.store.raw.log.LogAccessFile.flushDirtyBuffers(Unknown
Source)
at
org.apache.derby.impl.store.raw.log.LogAccessFile.flushLogAccessFile(Unknown
Source)
at org.apache.derby.impl.store.raw.log.LogToFile.flushBuffer(Unknown
Source)
at
org.apache.derby.impl.store.raw.log.LogToFile.openBackwardsScan(Unknown Source)
at org.apache.derby.impl.store.raw.log.FileLogger.undo(Unknown Source)
at org.apache.derby.impl.store.raw.xact.Xact.abort(Unknown Source)
at org.apache.derby.impl.store.access.RAMTransaction.abort(Unknown
Source)
at
org.apache.derby.impl.sql.conn.GenericLanguageConnectionContext.doRollback(Unknown
Source)
at
org.apache.derby.impl.sql.conn.GenericLanguageConnectionContext.userRollback(Unknown
Source)
at org.apache.derby.impl.jdbc.TransactionResourceImpl.rollback(Unknown
Source)
at org.apache.derby.impl.jdbc.EmbedConnection.rollback(Unknown Source)
at org.apache.derby.impl.tools.ij.ij.RollbackStatement(Unknown Source)
at org.apache.derby.impl.tools.ij.ij.ijStatement(Unknown Source)
at org.apache.derby.impl.tools.ij.utilMain.runScriptGuts(Unknown Source)
at org.apache.derby.impl.tools.ij.utilMain.go(Unknown Source)
at org.apache.derby.impl.tools.ij.Main.go(Unknown Source)
at org.apache.derby.impl.tools.ij.Main.mainCore(Unknown Source)
at org.apache.derby.impl.tools.ij.Main.main(Unknown Source)
at org.apache.derby.tools.ij.main(Unknown Source)
============= end nested exception, level (2) ===========
2009-05-14 12:18:14.547 GMT Thread[main,5,main] Less severe exception raised
during cleanup (ignored) An attempt was made to close a transaction that was
still active. The transaction has been aborted.
ERROR 40XT4: An attempt was made to close a transaction that was still active.
The transaction has been aborted.
at org.apache.derby.iapi.error.StandardException.newException(Unknown
Source)
at org.apache.derby.impl.store.raw.xact.Xact.close(Unknown Source)
at
org.apache.derby.impl.store.raw.xact.XactContext.cleanupOnError(Unknown Source)
at
org.apache.derby.iapi.services.context.ContextManager.cleanupOnError(Unknown
Source)
at
org.apache.derby.impl.jdbc.TransactionResourceImpl.cleanupOnError(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.EmbedConnection.rollback(Unknown Source)
at org.apache.derby.impl.tools.ij.ij.RollbackStatement(Unknown Source)
at org.apache.derby.impl.tools.ij.ij.ijStatement(Unknown Source)
at org.apache.derby.impl.tools.ij.utilMain.runScriptGuts(Unknown Source)
at org.apache.derby.impl.tools.ij.utilMain.go(Unknown Source)
at org.apache.derby.impl.tools.ij.Main.go(Unknown Source)
at org.apache.derby.impl.tools.ij.Main.mainCore(Unknown Source)
at org.apache.derby.impl.tools.ij.Main.main(Unknown Source)
at org.apache.derby.tools.ij.main(Unknown Source)
2009-05-14 12:18:14.547 GMT Thread[main,5,main] Shutting down due to severe
error.An exception was thrown during transaction abort.
2009-05-14 12:18:14.547 GMT:
Shutting down instance a816c00e-0121-3f0e-8722-000012749b32
-------------------------------------------------
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.