Subject Corruption in Firebird Classic
Author will.honor
I am running four Firebird Classic Servers. All of these
servers run on Dual Xeon 2.8Ghz Machines one Has 2Gb Ram and runs
Windows 2000 server the rest have 4Gb ram and Windows server 2003.
These servers have been running mostly without problems for about 18
Over the past couple of months the busiest server has shown three
occasions where Index level corruption has occured. This leads to a
lengthy backup and restore cycle and a lot of complaints about
downtime. The corruption always happens on the busiest table. This
table sees approx 750 inserts per day and many thousands of reads and
This morning I have encountered the same problem on a test database
on the lowest spec server. This server is very lightly used with no
inserts and only a few hundred reads.
The application using this database is a three tier solution. The
server executable runs on the same machine as the database and holds a
pool of 15 connections permanently open. The busy database has a page
size of 4096 and 10000 cache pages, I know this is large for Classic
but does seem to give good query performance. The test database has
2048 cache pages.
When the databases go corrupt I see errors in firebird.log such as :

KSSHEPRFX Mon Oct 23 10:23:02 2006
Index 19 is corrupt on page 953471 in table ACTIONS (162)

KSSHEPRFX Mon Oct 23 10:23:09 2006
Relation has 1691 orphan backversions (1 in use) in table ACTIONS (162)

KSSHEPRFX Mon Oct 23 10:27:26 2006
Page 881515 is an orphan

What could be going on here? Am I doing somthing wrong or is this some
sort of bug?
also is there a way to identify which index is going corrupt.