Re: Proposal: Snapshot cloning

From: "Simon Riggs" <simon(at)2ndquadrant(dot)com>
To: "Jan Wieck" <JanWieck(at)Yahoo(dot)com>
Cc: "PostgreSQL Development" <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: Proposal: Snapshot cloning
Date: 2007-01-26 12:25:47
Message-ID: 1169814348.3772.308.camel@silverbirch.site
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Thu, 2007-01-25 at 22:19 -0500, Jan Wieck wrote:

> The idea is to clone an existing serializable transactions snapshot
> visibility information from one backend to another. The semantics would
> be like this:
>
> backend1: start transaction;
> backend1: set transaction isolation level serializable;
> backend1: select pg_backend_pid();
> backend1: select publish_snapshot(); -- will block

Great idea. It can also be used by pg_dump to publish its snapshot so
that we can make VACUUM continue to process effectively while it pg_dump
is running.

Two questions:
- why does it have to block? I don't see any reason - the first process
can begin doing useful work. The second process might fail or itself be
blocked by something.

- why just serializable snapshots?

--
Simon Riggs
EnterpriseDB http://www.enterprisedb.com

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Gregory Stark 2007-01-26 13:06:52 Re: Proposal: Snapshot cloning
Previous Message Heikki Linnakangas 2007-01-26 12:11:10 Re: crash on 8.2 and cvshead - failed to add item to the