Subject Re: [firebird-support] garbage collection aspects
Author Ann W. Harrison
kopaka wrote:
>
> 1.
> I have table where is very often more records (up to 100) inserted and
> deleted. Deleted records is garbage what will be removed by garbage
> collector when records will be read. There is no natural read of this
> table so by this way records are not cleaned.

Backing up the database with gbak will read all records and remove
deleted records. You don't need to restore the backup.

> 2.
> When more records (in my case cca 5 milions) are deleted from table,
> then next time when garbage collection is run, it will take very much
> time. On my test db. I run for select count(*) from table and after 12
> hours I broke it without result. I read about it that is time consuming
> but what garbage collection is doing on deleted pages and how to
> estimate time duration roughly ?

Garbage collection affects both data and indexes, and when it takes very
long time, the problem is often indexes. If you can disable them before
the massive delete and re-enable them after garbage collection you can
save a lot of time.

> 3.
> Now I am doing some test about speed between FB 1.5.2 and FB 2.0.3 and
> seems to me, that when I am repeating an action which involves table I
> spoke about it under point 1 (it's records are deleted and again
> inserted so garbage is growing in this table ) then FB 2 speed is
> constantly slowing - more garbage more slow, while under FB 1.5 not.
> Does anyone have some suggestion about it ?

That I don't know anything about.

Regards,


Ann