AW: AW: Plans for solving the VACUUM problem

From: Zeugswetter Andreas SB <ZeugswetterA(at)wien(dot)spardat(dot)at>
To: "'Vadim Mikheev'" <vmikheev(at)sectorbase(dot)com>
Cc: "'pgsql-hackers(at)postgresql(dot)org'" <pgsql-hackers(at)postgresql(dot)org>
Subject: AW: AW: Plans for solving the VACUUM problem
Date: 2001-05-29 07:35:01
Message-ID: 11C1E6749A55D411A9670001FA6879633682F8@sdexcsrv1.f000.d0188.sd.spardat.at
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers


> > > > > You mean it is restored in session that is running the transaction ?
> > >
> > > Depends on what you mean with restored. It first reads the heap page,
> > > sees that it needs an older version and thus reads it from the "rollback segment".
> >
> > So are whole pages stored in rollback segments or just the modified data?
>
> This is implementation dependent. Storing whole pages is much easy to do,
> but obviously it's better to store just modified data.

I am not sure it is necessarily better. Seems to be a tradeoff here.
pros of whole pages:
a possible merge with physical log (for first modification of a page after checkpoint
there would be no overhead compared to current since it is already written now)
in a clever implementation a page already in the "rollback segment" might satisfy the
modification of another row on that page, and thus would not need any additional io.

Andreas

Browse pgsql-hackers by date

  From Date Subject
Next Message Zeugswetter Andreas SB 2001-05-29 08:02:02 AW: Re: charin(), text_char() should return something e lse for empty input
Previous Message Zeugswetter Andreas SB 2001-05-29 07:28:26 AW: User functions and AIX