Tim Dudgeon <[email protected]> writes:
> I have a report from a user of our app that uses embedded Derby (10.4.2.0). > The exception is attached. > It looks like a temporary file was expected to be present but could > not be found. > > As it's a report from user I can't really tell what could have caused this. > The action that led to this was a simple delete row statement. > > Any ideas what could have happened? It looks as if the creating of a temporary file failed. Does the path exist (C:\Users\Csizi\Documents\IJCProjects\ijc-project\.config\localdb\db\tmp), and if so, is it writable for this account? Dag > > Tim > java.io.FileNotFoundException: > C:\Users\Csizi\Documents\IJCProjects\ijc-project\.config\localdb\db\tmp\T1242138251428.tmp > (The system cannot find the path specified) > at java.io.RandomAccessFile.open(Native Method) > at java.io.RandomAccessFile.<init>(Unknown Source) > at org.apache.derby.impl.io.DirRandomAccessFile.<init>(Unknown Source) > at org.apache.derby.impl.io.DirRandomAccessFile4.<init>(Unknown Source) > at org.apache.derby.impl.io.DirFile4.getRandomAccessFile(Unknown Source) > at org.apache.derby.impl.store.raw.data.RAFContainer.run(Unknown Source) > at java.security.AccessController.doPrivileged(Native Method) > at > org.apache.derby.impl.store.raw.data.RAFContainer.createContainer(Unknown > Source) > at org.apache.derby.impl.store.raw.data.FileContainer.createIdent(Unknown > Source) > at > org.apache.derby.impl.store.raw.data.RAFContainer.createIdentity(Unknown > Source) > at org.apache.derby.impl.services.cache.ConcurrentCache.create(Unknown > Source) > at > org.apache.derby.impl.store.raw.data.BaseDataFileFactory.addContainer(Unknown > Source) > at org.apache.derby.impl.store.raw.xact.Xact.addContainer(Unknown Source) > at org.apache.derby.impl.store.access.heap.Heap.create(Unknown Source) > at > org.apache.derby.impl.store.access.heap.HeapConglomerateFactory.createConglomerate(Unknown > Source) > at > org.apache.derby.impl.store.access.RAMTransaction.createConglomerate(Unknown > Source) > at org.apache.derby.impl.sql.execute.TemporaryRowHolderImpl.insert(Unknown > Source) > at > org.apache.derby.impl.sql.execute.DeleteResultSet.collectAffectedRows(Unknown > Source) > at > org.apache.derby.impl.sql.execute.DeleteCascadeResultSet.collectAffectedRows(Unknown > Source) > at org.apache.derby.impl.sql.execute.DeleteCascadeResultSet.open(Unknown > Source) > at org.apache.derby.impl.sql.GenericPreparedStatement.execute(Unknown > Source) > Caused: java.sql.SQLException: Java exception: > 'C:\Users\Csizi\Documents\IJCProjects\ijc-project\.config\localdb\db\tmp\T1242138251428.tmp > (The system cannot find the path specified): java.io.FileNotFoundException'. > at org.apache.derby.impl.jdbc.SQLExceptionFactory.getSQLException(Unknown > Source) > at > org.apache.derby.impl.jdbc.SQLExceptionFactory40.wrapArgsForTransportAcrossDRDA(Unknown > Source) > 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) > Caused: java.sql.SQLException: Exception during creation of file > C:\Users\Csizi\Documents\IJCProjects\ijc-project\.config\localdb\db\tmp\T1242138251428.tmp > for container > at org.apache.derby.impl.jdbc.SQLExceptionFactory.getSQLException(Unknown > Source) > at > org.apache.derby.impl.jdbc.SQLExceptionFactory40.wrapArgsForTransportAcrossDRDA(Unknown > Source) > Caused: java.sql.SQLException: Exception during creation of file > C:\Users\Csizi\Documents\IJCProjects\ijc-project\.config\localdb\db\tmp\T1242138251428.tmp > for container > 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.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.EmbedStatement.executeStatement(Unknown > Source) > at > org.apache.derby.impl.jdbc.EmbedPreparedStatement.executeStatement(Unknown > Source) > at org.apache.derby.impl.jdbc.EmbedPreparedStatement.executeUpdate(Unknown > Source) > at > org.apache.commons.dbcp.DelegatingPreparedStatement.executeUpdate(DelegatingPreparedStatement.java:102) > at > org.apache.commons.dbcp.DelegatingPreparedStatement.executeUpdate(DelegatingPreparedStatement.java:102) > at > org.springframework.jdbc.core.JdbcTemplate$2.doInPreparedStatement(JdbcTemplate.java:773) > at > org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:566) > Caused: org.springframework.jdbc.UncategorizedSQLException: > PreparedStatementCallback; uncategorized SQLException for SQL [DELETE FROM > IJC_SCHEMA WHERE SCHEMA_ID = ? AND PARENT_ID = ? AND ITEM_ID = ?]; SQL state > [XSDF1]; error code [20000]; Exception during creation of file > C:\Users\Csizi\Documents\IJCProjects\ijc-project\.config\localdb\db\tmp\T1242138251428.tmp > for container; nested exception is java.sql.SQLException: Exception during > creation of file > C:\Users\Csizi\Documents\IJCProjects\ijc-project\.config\localdb\db\tmp\T1242138251428.tmp > for container > at > org.springframework.jdbc.support.SQLStateSQLExceptionTranslator.translate(SQLStateSQLExceptionTranslator.java:121) > at > org.springframework.jdbc.support.SQLErrorCodeSQLExceptionTranslator.translate(SQLErrorCodeSQLExceptionTranslator.java:322) > at > org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:582) > at org.springframework.jdbc.core.JdbcTemplate.update(JdbcTemplate.java:767) > at org.springframework.jdbc.core.JdbcTemplate.update(JdbcTemplate.java:825) > at org.springframework.jdbc.core.JdbcTemplate.update(JdbcTemplate.java:829) >
