]> 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:49 +0000 (12:41 -0500)
committerTom Lane <tgl@sss.pgh.pa.us>
Fri, 12 Dec 2014 17:41:49 +0000 (12:41 -0500)
commit8ec8760fc87ecde0516e511f1c55aec627b01ea7
tree5c7130c19b17f0b9e5f56f1d64969e961bdb6d54
parent237a8824430c607fce1eafde0c625744d50a455c
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