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

From Joachim Wieland
Subject Re: Snapshot synchronization, again...
Date
Msg-id AANLkTi=pJ7YnDA4r15WW2vXoNv3cq9C=r8B6MhdSFRFD@mail.gmail.com
Whole thread Raw
In response to Re: Snapshot synchronization, again...  (Heikki Linnakangas <heikki.linnakangas@enterprisedb.com>)
Responses Re: Snapshot synchronization, again...  (Robert Haas <robertmhaas@gmail.com>)
Re: Snapshot synchronization, again...  (Heikki Linnakangas <heikki.linnakangas@enterprisedb.com>)
List pgsql-hackers
On Tue, Feb 22, 2011 at 3:34 PM, Heikki Linnakangas
<heikki.linnakangas@enterprisedb.com> wrote:
> On 22.02.2011 16:29, Robert Haas wrote:
>> On Tue, Feb 22, 2011 at 8:58 AM, Heikki Linnakangas
>> <heikki.linnakangas@enterprisedb.com>  wrote:
>>> No, the hash is stored in shared memory. The hash of the garbage has to
>>> match.
>>
>> Oh.  Well that's really silly.  At that point you might as well just
>> store the snapshot and an integer identifier in shared memory, right?
>
> Yes, that's the point I was trying to make. I believe the idea of a hash was
> that it takes less memory than storing the whole snapshot (and more
> importantly, a fixed amount of memory per snapshot). But I'm not convinced
> either that dealing with a hash is any less troublesome.

Both Tom and Robert voted quite explicitly against the
store-in-shared-memory idea. Others don't want to allow people request
arbitrary snapshots and again others wanted to pass the snapshot
through the client so that in the future we could also request
snapshots from standby servers. The hash idea seemed to at least make
nobody unhappy.

For easier review, here are a few links to the previous discusion:

http://archives.postgresql.org/pgsql-hackers/2010-12/msg00361.php
http://archives.postgresql.org/pgsql-hackers/2010-12/msg00383.php
http://archives.postgresql.org/pgsql-hackers/2010-12/msg00481.php
http://archives.postgresql.org/pgsql-hackers/2010-12/msg02454.php

Why exactly, Heikki do you think the hash is more troublesome? And how
could we validate/invalidate snapshots without the checksum (assuming
the through-the-client approach instead of storing the whole snapshot
in shared memory)?


Joachim


pgsql-hackers by date:

Previous
From: Tom Lane
Date:
Subject: Re: review: FDW API
Next
From: Robert Haas
Date:
Subject: Re: Binary in/out for aclitem