Subject Re: [ib-support] FB1.0 Problem with updates ? Database-file keeps on growing without adding reco
Author Helen Borrie
At 10:08 PM 10-12-02 +0100, Zdeno wrote:
>Hello, luc_decaluwe,
>Interbase has a multigeneration architecture - it means, there is no
>difference between update and insert (old data are NOT deleted).

This isn't what multi-generational architecture means. MGA means that the
database engine creates a new version of a record when a transaction
requests an update or an insert.

However, MGA requires a housecleaning process to clear space occupied by
obsolete record versions. That is what the garbage collection process is for.

If the new record version is committed (made permanent in the database),
the old versions of those records, along with record versions made obsolete
by deletion, become candidates for garbage collection. Garbage collection
runs as a background thread whenever the database is active. Provided
garbage collection is not inhibited by careless transaction control in
client applications, these spaces are constantly being cleared and made
available for re-use.

Note that the background garbage collection is not dependent on any
sweeping that is set up.