Alvaro Herrera <alvherre@2ndquadrant.com> writes:
> I think a safer proposition would be to replace all current
> BufferGetPage() calls (there are about 500) by adding the necessary
> arguments: buffer, snapshot, rel, and an integer "flags". All this
> without adding the feature. Then a subsequent commit would add the
> TestForOldSnapshot inside BufferGetPage, *except* when a
> BUFFER_NO_SNAPSHOT_TEST flag is passed. That way, new code always get
> the snapshot test by default.
That seems awfully invasive, not to mention performance-killing if
the expectation is that most such calls are going to need a snapshot
check. (Quite aside from the calls themselves, are they all in
routines that are being passed the right snapshot today?)
TBH, I think that shoving in something like this at the end of the last
commitfest would be a bad idea even if there were widespread consensus
that we wanted the feature ... which I am not sure there is.
I think it might be time to bounce this one to 9.7.
regards, tom lane