Subject Re: [firebird-support] Garbage clean
Author Ann W. Harrison
At 04:43 AM 3/21/2004, Doru Constantin wrote:
> select count(*) from table_where_the_rows_was_deleted
>can clean the garbage ?

In a multi-versioning concurrency model, old versions of records must be
kept until the end of the last transaction that was running before the
update or delete was committed. Once that happens, the next transaction
that encounters the deleted record will remove it.

Count (*) visits all the records in a table, so running it after the
deletion is committed and all other concurrent transaction have exited
causes the garbage collection.