Subject | Re: [firebird-support] Sweep and general maintenance (newbie question) |
---|---|
Author | Martijn Tonies |
Post date | 2004-04-27T10:58:18Z |
> > > That's part of the story. The other part is that sweeping is the onlyway
> > > (apart from an actual restore) that will free space that was occupiedby
> > > deleted rows.the
> >
> >Perhaps I am mistaken, but shouldn't the garbage collector thread
> >do just that? And if not, what does that one do?
> >
> >Oh darn, do I still don't get it?
>
> The GC thread gets rid of old record versions (from deletes and updates)
> that belonged to transactions that have the status "committed". But it
> doesn't release space from deletes: that just sits there as a stump until
> sweep comes along and releases it. Updates don't have "stumps" because
> newest version overwrites the older version.Ugh, now that you mention it ... I knew this :-)
>
> Another thing sweep does that GC can't do is fix up the flotsam and jetsam
> from transactions that never completed because of an abnormal
> disconnection; and deals with rolled back transactions, i.e. changes them
> to "committed", ultimately, and either garbage-collects the associated
> unwanted recversions itself, or leaves them for the next GC to pick up.
Guess last weekend is catching up on me *g*
Thanks.
With regards,
Martijn Tonies
Database Workbench - developer tool for InterBase, Firebird, MySQL & MS SQL
Server.
Upscene Productions
http://www.upscene.com