On 2013-07-20 00:49:11 +0900, Hiroshi Inoue wrote:
> (2013/07/18 21:46), Robert Haas wrote:
> >There seems to be a consensus that we should try to get rid of
> >SnapshotNow entirely now that we have MVCC catalog scans, so I'm
> >attaching two patches that together come close to achieving that goal:
>
> ...
>
> >With that done, the only remaining uses of SnapshotNow in our code
> >base will be in currtid_byreloid() and currtid_byrelname(). So far no
> >one on this list has been able to understand clearly what the purpose
> >of those functions is, so I'm copying this email to pgsql-odbc in case
> >someone there can provide more insight. If I were a betting man, I'd
> >bet that they are used in contexts where the difference between
> >SnapshotNow and SnapshotSelf wouldn't matter there, either.
>
> Using SnapshotSelf instead of SnapshotNow for currtid_ () wouldn't
> matter.
I think it actually might. You could get into dicey situations if you
use currtid_ in a query performing updates or inserts because it would
see the to-be-inserted tuple...
Greetings,
Andres Freund
--
Andres Freund http://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Training & Services