]> granicus.if.org Git - postgresql/commit
Revert misguided change to postgres_fdw FOR UPDATE/SHARE code.
authorTom Lane <tgl@sss.pgh.pa.us>
Fri, 12 Dec 2014 17:41:55 +0000 (12:41 -0500)
committerTom Lane <tgl@sss.pgh.pa.us>
Fri, 12 Dec 2014 17:41:55 +0000 (12:41 -0500)
commitcfc878a45c4834ce8a09523d0d72b42ece8bab7a
tree99ed384ec419552df6e72adc14edea27b90010d1
parent2ae8a01ca1af074c166e3f882869dfe307b91b2c
Revert misguided change to postgres_fdw FOR UPDATE/SHARE code.

In commit 462bd95705a0c23ba0b0ba60a78d32566a0384c1, I changed postgres_fdw
to rely on get_plan_rowmark() instead of get_parse_rowmark().  I still
think that's a good idea in the long run, but as Etsuro Fujita pointed out,
it doesn't work today because planner.c forces PlanRowMarks to have
markType = ROW_MARK_COPY for all foreign tables.  There's no urgent reason
to change this in the back branches, so let's just revert that part of
yesterday's commit rather than trying to design a better solution under
time pressure.

Also, add a regression test case showing what postgres_fdw does with FOR
UPDATE/SHARE.  I'd blithely assumed there was one already, else I'd have
realized yesterday that this code didn't work.
contrib/postgres_fdw/expected/postgres_fdw.out
contrib/postgres_fdw/postgres_fdw.c
contrib/postgres_fdw/sql/postgres_fdw.sql