Re: Index-only scans and non-MVCC snapshots

From: Ryan Johnson <ryan(dot)johnson(at)cs(dot)utoronto(dot)ca>
To: Andres Freund <andres(at)2ndquadrant(dot)com>
Cc: pgsql-hackers(at)postgresql(dot)org
Subject: Re: Index-only scans and non-MVCC snapshots
Date: 2014-06-27 14:39:13
Message-ID: 53AD8211.1040108@cs.utoronto.ca
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On 27/06/2014 3:14 AM, Andres Freund wrote:
> On 2014-06-26 22:47:47 -0600, Ryan Johnson wrote:
>> Hi,
>>
>> As part of a research project, I'm trying to change Read Committed isolation
>> to use HeapTupleSatisfiesNow rather than acquiring a new snapshot at every
>> command [1]. Things appear to have gone reasonably well so far, except
>> certain queries fail with "ERROR: non-MVCC snapshots are not supported in
>> index-only scans."
> You're aware that unless you employ additional locking you can simply
> miss individual rows or see them several times because of concurrent
> updates?
> The reason it has worked (< 9.4) for system catalogs is that updates of
> rows were only performed while objects were locked access exclusively -
> that's the reason why some places in the code use inplace updates btw...
Yes, I was aware of the need for locking. The documentation just made it
sound that locking was already in place for non-MVCC index scans. I was
hoping I'd missed some easy way to activate it.

Regards,
Ryan

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Michael Paquier 2014-06-27 14:39:16 Re: WAL replay bugs
Previous Message Alvaro Herrera 2014-06-27 14:20:20 Re: Index-only scans and non-MVCC snapshots