I've done this, and I'll see if that leads to more useful info. With only derby.infolog.append=true, I did find the following error (which may be the crux of our problem). I can't say for certain whether this conincided with a database rollback, but I suspect it may have. 2005-08-30 16:40:49.671 GMT: Booting Derby version The Apache Software Foundation - Apache Derby - 10.0.2.1 - (106978): instance c013800d-0106-0843-1b00-000075ccda01 on database directory /Users/scotty/k2db-data/k2db/pkb ------------ BEGIN ERROR MESSAGE ------------- System may be in a inconsistent state, missing file /Users/scotty/k2db- data/k2db/pkb/log/log1.dat ------------ END ERROR MESSAGE ------------- Database Class Loader started - derby.database.classpath='' 2005-08-30 16:40:53.181 GMT Thread [javawsApplicationMain,5,javawsApplicationThreadGroup] (XID = 5), (SESSIONID = 0), (DATABASE = pkb), (DRDAID = null), Committing 2005-08-30 16:40:53.182 GMT Thread [javawsApplicationMain,5,javawsApplicationThreadGroup] (XID = 5), (SESSIONID = 0), (DATABASE = pkb), (DATABASE = pkb), (DRDAID = null), Rolling back 2005-08-30 16:40:58.040 GMT Thread[AWT-EventQueue-0,6,main] (XID = 6), (SESSIONID = 1), (DATABASE = pkb), (DRDAID = null), Committing What does log1.dat store? Would the nonexistence of this file on boot cause the sort of behavior I'm seeing?
Yes. log1.dat will contain the transaction log , that is used to redo the transactions in case of a crash. So files in the log directory are essential to bring database to a consistent state during the reboot after the crash and also for transaction rollbacks ..etc.
I wonder how log1.dat is missing , have not seen any bugs regarding this. Some how the log files are vanishing:
1) By chance , are the files in the database base log directory (<database-name>/log) are compressed by some automatic/manual process?
2) is there some automatic mechanism that is deleting the files in the Users directory ?
3) Is some one manually deleting these files, thinking they are just error log files ?
Try running the application on different disk/location and check if you are missing committed transactions, there also.
Thanks -suresht
