IBSurgeon library

Common InterBase/Firebird errors caused by corruptions and their recovery chances

Alexey Kovyazin, 31-03-2014

Below is the description of common errors and problems in InterBase/Firebird databases and their recovery chances.

To get exact recovery price and time please contact us via email.

For approximate pricing please see “Firebird and InterBase Recovery” service description. There is no 100% warranty that described errors exactly correspond to the described reasons.

Internal gds software consistency check (cannot find tip page (165))

Error description

Database cannot be opened using Firebird or InterBase engine, and the following message appears: Internal gds software consistency check (cannot find tip page (165))

Abnormal shutdown or physical database file corruption. Transaction inventory page has been lost (TIP). Corruption area can vary from several pages to the whole database, so additional investigation needed.

Reason (why it happened?) The most probable reasons are abnormal server shutdown (using Reset button), wrong backup approach or backup tools. On Windows XP such corruption can be caused by “System Restore” feature for “gdb” files.

Recovery process

First, the database should be scanned with FirstAID Diagnostician. If FirstAID does not warn about serious corruption, corruption can be fixed with the full version of FirstAID.

In the case of serious corruption, the custom recovery needed.

Chances to fix corruption

99%

Database file appears corrupt. Wrong page type. Page NNN is of wrong type (expected X, found Y)

Error description

Error message appeared in standard output or in firebird.log or interbase.log:

Database file appears corrupt. Wrong page type. Page NNN is of wrong type (expected X, found Y)

Due to the physical corruption or another reason, the sequence of database file pages has been changed, or wrong values appeared on pointer pages or index root pages, etc.

Reason

The most probable reasons are abnormal server shutdown (using Reset button), wrong backup procedure or wrong backup tools/approach.

Recovery process

First, the database should be scanned with FirstAID Diagnostician. If FirstAID does not warn about serious corruption, corruption can be fixed with the full version of FirstAID.

Otherwise, custom recovery process needed.

Chances to fix corruption

95%.

Unknown database I/O error for file “*.gdb”. Error while trying to read from file

Error description

The database cannot be open, and the following error message appears: Unknown database I/O error for file “*.gdb”. Error while trying to read from the file.

Reason

Due to the abnormal server shutdown, the most recent database pages were not written to the disk.

Recovery process

Custom recovery process. Database is checked by gfix and backup/restore.

Recovery chances

95%

Decompression overran buffer

Error description

Error message appears: Internal gds software consistency check (decompression overran buffer (179))

Reason

It is a serious database corruption: system tables could be damaged. Sometimes this error occurs after database transfer to the new server/computer. Investigation needed.

Recovery process

Database structure analysis, generation of new pages, several iterations needed.

Recovery chances

95%

Wrong record length

Error description

An error message appears: Internal gds software consistency check. Wrong record length

Reason

Most often “Wrong record length” error are caused by bad RAM. We strongly recommend checking memory ( RAM) at the server.

Recovery process

Locate and delete wrong records using IBSurgeon’s low-level tools. Several iterations needed.

Recovery chances

97%

Database file appears corrupt. Bad checksum

Error description

Database file appears corrupt. Bad checksum. Checksum error on database page XX.

Reason

Bad RAM. We strongly recommend checking memory ( RAM) at the server.

Recovery process

Custom recovery process. Several iterations needed.

Recovery chances

99%

Cannot find record back version

Error description

The database seems to be working, but gbak cannot complete backup.

Error text:

Internal gds software consistency check (cannot find record back version (291))

gds_$receive failed. Exiting before completion due to errors. internal gds software consistency check (can’t continue after bug check).

Reason

Most probable reason is wrong transaction management. Transactions’ performance investigation.

Recovery process

The database requires detailed analysis, and usually the solution is to find and delete problem database objects and then recreate them. Sometimes it is necessary to transfer data to the new database.

Recovery chances

99%

Next transaction older than oldest active transaction

Error showings

Internal gds software consistency check (next transaction older than oldest active transaction (266))

Reason

This seldom error occurs in InterBase 4.x-5.x, it’s a bug.

Recovery process

Custom recovery process

Recovery chances

99%

Corrupted header

Error description

The database cannot be opened and Firebird/InterBase does not consider it as a valid database.

Reason

Physical corruption, HDD crash.

Recovery process

Custom recovery process

Recovery chances

80%

Database file size exceeds implementation limit

Error description

It happens on InterBase 4.x-5.x servers and early Firebird (0.9.x) betas. The database cannot be opened, database file size is 4Gb.

Reason

Implementation limit of InterBase 4.x-5.x-6.0.x, and early Firebird 0.9.x.

Recovery process

Custom recovery process.

Recovery chances

Usually, we can save all data (i.e., 100%), but sometimes it can be less than 70%.

Conversion error from string

Error description

Error text: Conversion error from string “XXX”.

Reason

Preliminary diagnosis is impossible, on-site investigation needed.

Recovery process

Custom recovery process.

Recovery chances

99%

INET/inet_error: read errno = 10054 or 10038 or 10093

Error showings

Multiple entries in firebird.log or interbase.log with errors 10054, 10038, 10093, etc.

Reason

These errors are caused by network problems - check your hubs, network adapters, etc. It is not a Firebird/InterBase error itself, but it may impact Firebird/InterBase.

Recovery process

We offer FBScanner tool to solve “10054 errors” problem (among other issues). See details here.

Recovery chances

Not applicable.

Partner index description not found (175))

Error description

Error messages text: internal gds software consistency check (partner index description not found (175))

Missed index for a primary or foreign key.

Reason

It may be caused by physical corruption or internal server bugs.

Recovery process

Custom recovery process.

Recovery chances

100%

Other errors

Error description

Below there is a list of seldom Firebird/InterBase errors, which can be caused by different reasons. Do not hesitate to send us the description of your problem - we can help you.

Wrong UDF may cause the following errors in interbase.log:

SCH_validate – not entered

SCH_validate – wrong thread

Index corruption may cause the following message in interbase.log:

Page 34672 is an orphan

And this error can occur during intensive inserts/update/delete during the single transaction:

internal gds software consistency check (Too many savepoints (287))

It is hard to recognize the reason without investigation of database in case of the following errors:

internal gds software consistency check (error during savepoint backout (290))

internal gds Software consistency check (size of opt block exceeded (286))

internal gds software consistency check (invalid SEND request (167))

Probable Reason

Different reasons. We need to investigate corrupted database.

Recovery process

Custom recovery process.

Recovery chances

Various