Subject | Re: [firebird-support] How does sweeping works? |
---|---|
Author | Dimitry Sibiryakov |
Post date | 2009-08-26T18:16:59Z |
> If I understand all the documention about sweeping right,Wrong. Space is reused after garbage collection, not sweep. Sweep
> deleted row-space is reused for insertion.
> Row-space which was free'd by a rollback only becomes reused if a
> database sweep runs.
> The database size never shrinks (like on VACUUM in other db systems),
> thats only possible with backup&restore.
> ...right?
causes garbage collection, right, but GC may start without sweep.
Sweep is required to clean up badly finished transactions. And sweep
interval doesn't mean number of transactions between two sweeps, but
difference between oldest interested transaction (OIT) and next
transaction numbers. When this gap grows because of badly programmed
client application or accidents, automatic sweep is started, moving (if
possible) OIT marker.
SY, SD.