Re: Index-only scans and non-MVCC snapshots - Mailing list pgsql-hackers

From Andres Freund
Subject Re: Index-only scans and non-MVCC snapshots
Date
Msg-id 20140627144101.GC18288@awork2.anarazel.de
Whole thread Raw
In response to Re: Index-only scans and non-MVCC snapshots  (Ryan Johnson <ryan.johnson@cs.utoronto.ca>)
List pgsql-hackers
On 2014-06-27 08:39:13 -0600, Ryan Johnson wrote:
> 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.

Well, it is/was for the places (i.e. DDL) that actually use non-MVCC
scans.

Greetings,

Andres Freund

-- Andres Freund                       http://www.2ndQuadrant.com/PostgreSQL Development, 24x7 Support, Training &
Services



pgsql-hackers by date:

Previous
From: Ryan Johnson
Date:
Subject: Re: Index-only scans and non-MVCC snapshots
Next
From: Noah Misch
Date:
Subject: pgstat_heap() consults freed memory