Subject Re: [firebird-support] Database-Errors
Author Ann Harrison
Richard wrote:

>Some problems are that some entries are not deleted but without any
>error-message prompted for the user (we are checking if our Zeos-
>Components dont work properly). But there are also no entries in the
>interbase.log that show me a problem within the database until i make
>a validation of the DB.
>
Many many years ago, when InterBase was just starting, we got a call
from a group at a large aerospace company saying that the database was
deleting records. Jim grabbed a disk with a debugging copy of InterBase
and went directly to the company - if I recall, without other luggage.
The chief technical person there said "I'll bet my life we're not
deleting that record." The debugger traceback gave Jim that poor guy's
life. A database with a reputation for losing - or regenerating -
records doesn't have much future.

>It's strange: After the Validation the interbase-log show me errors
>in a table that is not the table i have the delete-problem.
>
>e.g. a interbase.log:
>SERVER (Server) Fri Jul 18 10:18:59 2003
> Database: C:\DATEN_IB\ELITE.GDB
> Relation has 33925 orphan backversions (13 in use) in table
>RUNINFO (306)
>
Orphaned back versions happen when the engine stops in the process of
garbage collection. When a back version is to be released, first the
pointer to it in its successor is set to 0, then the "pointer on page"
for the record version is set to zero on the page that contains the
version. If the system stops between those two steps, the record
version is orphaned and will sit there, wasting space until you do a
validate. The errors in the log were probably generated by the
validation pass. Aside from a slight waste of space, orphaned back
versions are benign.

>But the table where Records are not deleted are RSVBUCH, RSVZEIT,
>RSVZIM.
>
I think the problems are independent.

>A additional question:
>What does this mean:
>SERVER (Server) Mon Nov 11 15:15:22 2002
> INET/inet_error: read errno = 10054
>
That means that the client exited without closing its connection to the
database.

>How can a Firebird-Datebase be demaged?
>We have WIN NT 4.0, WIN 2000 SERVERS and WIN-XP (Single-User).
>Have Force-Write enabled. But i dont know what can cause a database
>Error. We thought that firebird is stable und we have done everything
>to make it stable on a windows-System.
>
First, look for a reason why clients are exiting without closing their
connections. They may also be exiting without closing their
transactions, which might explain a lot. Second, look for any evidence
of server crashes - guardian restarting the server when you haven't
asked the server to stop.

Regards,


Ann