Re: Re: Buffer access rules, and a probable bug

From: Hiroshi Inoue <Inoue(at)tpf(dot)co(dot)jp>
To: "Mikheev, Vadim" <vmikheev(at)SECTORBASE(dot)COM>
Cc: "'Tom Lane'" <tgl(at)sss(dot)pgh(dot)pa(dot)us>, pgsql-hackers(at)postgresql(dot)org
Subject: Re: Re: Buffer access rules, and a probable bug
Date: 2001-07-06 01:22:38
Message-ID: 3B4512DE.D857F888@tpf.co.jp
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

"Mikheev, Vadim" wrote:
>
> > What I'm wondering is if you had any other intended use for "mark for
> > cleanup" than VACUUM. The cheapest implementation would allow only
> > one process to be waiting for cleanup on a given buffer, which is OK
> > for VACUUM because we'll only allow one VACUUM at a time on a relation
> > anyway. But if you had some other uses in mind, maybe the code needs
> > to support multiple waiters.
>
> I was going to use it for UNDO but it seems that UNDO w/o OSMGR is not
> popular and OSMGR will require different approaches anyway, so -
> do whatever you want.
>

How is UNDO now ?
I've wanted a partial rollback functionality for a long
time and I've never seen the practical solution other
than UNDO.

I'm thinking the following rstricted UNDO.

UNDO is never invoked for an entire rollback of a transaction.
The implicit savepoint at the beginning of a transaction isn't
needed. If there's no savepoints, UNDO is never invoked.
Especially UNDO is never invoked for commands outside the
transaction block. WAL logs before savepoints could be
discarded at CheckPoint.

Comments ?

regards,
Hiroshi Inoue

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message Tom Lane 2001-07-06 01:33:17 Re: Re: Backup and Recovery
Previous Message Bruce Momjian 2001-07-06 00:15:36 Re: Re: Backup and Recovery