Subject | firebird hates it if you run out of disk space |
---|---|
Author | Dan Wilson |
Post date | 2004-12-07T15:39:24Z |
This is just a "don't ever ever do this" reminder to everyone running firebird.
Firebird doesn't handle no disk space conditions at all well. The worst part of it is that after you fix the condition, firebird may continue running and acting as if everything is well, but the odds seem to be very good that all is very much not well. I have a database that was being actively written to when the disk space ran out, and gfix now reports literally millions of errors like the following:
DBSERVER (Server) Tue Dec 07 10:08:08 2004
Database: E:\DB\PTDB.FDB
Page 7803123 doubly allocated
It is possible there are other errors buried in the log, too. However, once fbserver reached the bad spot in the database, the firebird.log message literally grew in a matter of 3 or 4 minutes to from empty to 10 GB in size, so I'm not going to even try to browse through the log to see what else is hiding in there. Since clearing the log out about 15 minutes ago, it is already back up to 170 MB.
My assumption is that this is unfixable. So I'm off to pull the last backup and then reprocess all the transactions that happened since that backup.
I could wish firebird was more forgiving of this condition, but I recognize that it was my poor system design that allowed the HD to be used for two separate purposes instead of reserving the whole disk for Firebird. Needless to say, I've fixed that.
Just a word of warning to everyone else. Be careful.
Dan.
Firebird doesn't handle no disk space conditions at all well. The worst part of it is that after you fix the condition, firebird may continue running and acting as if everything is well, but the odds seem to be very good that all is very much not well. I have a database that was being actively written to when the disk space ran out, and gfix now reports literally millions of errors like the following:
DBSERVER (Server) Tue Dec 07 10:08:08 2004
Database: E:\DB\PTDB.FDB
Page 7803123 doubly allocated
It is possible there are other errors buried in the log, too. However, once fbserver reached the bad spot in the database, the firebird.log message literally grew in a matter of 3 or 4 minutes to from empty to 10 GB in size, so I'm not going to even try to browse through the log to see what else is hiding in there. Since clearing the log out about 15 minutes ago, it is already back up to 170 MB.
My assumption is that this is unfixable. So I'm off to pull the last backup and then reprocess all the transactions that happened since that backup.
I could wish firebird was more forgiving of this condition, but I recognize that it was my poor system design that allowed the HD to be used for two separate purposes instead of reserving the whole disk for Firebird. Needless to say, I've fixed that.
Just a word of warning to everyone else. Be careful.
Dan.