This is more of a general Store question precipitated by a specific error I've come across during execution of the backup procedure.

Typically, I know that the seg0 folder maintains a file per conglomerate in the format of cXXX.dat where XXX is the hex value of the conglomerate id (Thank you Mr. Pendleton's blog). In what case would Derby expect or create a .dat file starting with 'd'?

The instance of Derby in question is running fine under normal operation, however when running a backup, the procedure fails due to a missing .dat file that happens to being with 'd' (exception posted below.). Is there any way to tell from the system tables, why derby believes this file should be there, or more specifically, what derby thinks should be stored in this file? Is it another conglomerate that is perhaps corrupted?

This is from 10.8.3.0.

Mon Mar 11 12:59:26 EDT 2013 Thread[DRDAConnThread_5,5,main] (XID = 4666255288), (SESSIONID = 1), (DATABASE = db), (DRDAID = ????????.??-593347887885188381{1}), Cleanup action starting
Mon Mar 11 12:59:26 EDT 2013 Thread[DRDAConnThread_5,5,main] (XID = 4666255288), (SESSIONID = 1), (DATABASE = db), (DRDAID = ????????.??-593347887885188381{1}), Failed Statement is: CALL SYSCS_UTIL.SYSCS_BACKUP_DATABASE_NOWAIT('./backup')
ERROR XSRS5: Error copying file (during backup) from /derby/db/seg0/D2f410.DAT to ./backup/db/seg0/D2f410.DAT.
at org.apache.derby.iapi.error.StandardException.newException(StandardException.java:303)
at org.apache.derby.impl.store.raw.data.RAFContainer.privBackupContainer(RAFContainer.java:1071)
at org.apache.derby.impl.store.raw.data.RAFContainer.run(RAFContainer.java:1650)
at java.security.AccessController.doPrivileged(Native Method)
at org.apache.derby.impl.store.raw.data.RAFContainer.backupContainer(RAFContainer.java:980)
at org.apache.derby.impl.store.raw.data.BaseContainerHandle.backupContainer(BaseContainerHandle.java:1031)
at org.apache.derby.impl.store.raw.data.BaseDataFileFactory.backupDataFiles(BaseDataFileFactory.java:2551)
at org.apache.derby.impl.store.raw.RawStore.backup(RawStore.java:944)
at org.apache.derby.impl.store.raw.RawStore.backup(RawStore.java:653)
at org.apache.derby.impl.store.access.RAMAccessManager.backup(RAMAccessManager.java:964)
at org.apache.derby.impl.db.BasicDatabase.backup(BasicDatabase.java:419)
at org.apache.derby.catalog.SystemProcedures.SYSCS_BACKUP_DATABASE_NOWAIT(SystemProcedures.java:875)
at org.apache.derby.exe.acf81e0010x013dx5a5fxee17x0000105f54e52.g0(Unknown Source)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.apache.derby.impl.services.reflect.ReflectMethod.invoke(ReflectMethod.java:46)
at org.apache.derby.impl.sql.execute.CallStatementResultSet.open(CallStatementResultSet.java:75)
at org.apache.derby.impl.sql.GenericPreparedStatement.executeStmt(GenericPreparedStatement.java:438)
at org.apache.derby.impl.sql.GenericPreparedStatement.execute(GenericPreparedStatement.java:319)
at org.apache.derby.impl.jdbc.EmbedStatement.executeStatement(EmbedStatement.java:1242)
at org.apache.derby.impl.jdbc.EmbedPreparedStatement.executeStatement(EmbedPreparedStatement.java:1692)
at org.apache.derby.impl.jdbc.EmbedCallableStatement.executeStatement(EmbedCallableStatement.java:117)
at org.apache.derby.impl.jdbc.EmbedPreparedStatement.execute(EmbedPreparedStatement.java:1347)
at org.apache.derby.impl.drda.DRDAStatement.execute(DRDAStatement.java:706)
at org.apache.derby.impl.drda.DRDAConnThread.parseEXCSQLSTT(DRDAConnThread.java:4164)
at org.apache.derby.impl.drda.DRDAConnThread.processCommands(DRDAConnThread.java:1037)
at org.apache.derby.impl.drda.DRDAConnThread.run(DRDAConnThread.java:295)
Cleanup action completed