Re: Snapshot synchronization, again... - Mailing list pgsql-hackers

From Robert Haas
Subject Re: Snapshot synchronization, again...
Date
Msg-id AANLkTikQABMFxa_uaeG2mdiWxq-07Yq7yd8GeThQGNcj@mail.gmail.com
Whole thread Raw
In response to Re: Snapshot synchronization, again...  (Joachim Wieland <joe@mcknight.de>)
Responses Re: Snapshot synchronization, again...  (Tom Lane <tgl@sss.pgh.pa.us>)
Re: Snapshot synchronization, again...  (Joachim Wieland <joe@mcknight.de>)
List pgsql-hackers
On Sun, Feb 27, 2011 at 8:33 PM, Joachim Wieland <joe@mcknight.de> wrote:
> On Sun, Feb 27, 2011 at 3:04 PM, Heikki Linnakangas
> <heikki.linnakangas@enterprisedb.com> wrote:
>>> Why exactly, Heikki do you think the hash is more troublesome?
>> It just feels wrong to rely on cryptography just to save some shared memory.
>
> Remember that it's not only about saving shared memory, it's also
> about making sure that the snapshot reflects a state of the database
> that has actually existed at some point in the past. Furthermore, we
> can easily invalidate a snapshot that we have published earlier by
> deleting its checksum in shared memory as soon as the original
> transaction commits/aborts. And for these two a checksum seems to be a
> good fit. Saving memory then comes as a benefit and makes all those
> happy who don't want to argue about how many slots to reserve in
> shared memory or don't want to have another GUC for what will probably
> be a low-usage feature.

But you can do all of this with files too, can't you?  Just remove or
truncate the file when the snapshot is no longer valid.

-- 
Robert Haas
EnterpriseDB: http://www.enterprisedb.com
The Enterprise PostgreSQL Company


pgsql-hackers by date:

Previous
From: Tom Lane
Date:
Subject: Re: PL/pgSQL return value in after triggers
Next
From: Peter Eisentraut
Date:
Subject: Re: pl/python custom exceptions for SPI