postgresql/contrib/postgres_fdw
Etsuro Fujita d50d172e51 postgres_fdw: Perform the (FINAL, NULL) upperrel operations remotely.
The upper-planner pathification allows FDWs to arrange to push down
different types of upper-stage operations to the remote side.  This
commit teaches postgres_fdw to do it for the (FINAL, NULL) upperrel,
which is responsible for doing LockRows, LIMIT, and/or ModifyTable.
This provides the ability for postgres_fdw to handle SELECT commands
so that it 1) skips the LockRows step (if any) (note that this is
safe since it performs early locking) and 2) pushes down the LIMIT
and/or OFFSET restrictions (if any) to the remote side.  This doesn't
handle the INSERT/UPDATE/DELETE cases.

Author: Etsuro Fujita
Reviewed-By: Antonin Houska and Jeff Janes
Discussion: https://postgr.es/m/87pnz1aby9.fsf@news-spur.riddles.org.uk
2019-04-02 20:30:45 +09:00
..
expected postgres_fdw: Perform the (FINAL, NULL) upperrel operations remotely. 2019-04-02 20:30:45 +09:00
sql postgres_fdw: Perform the (FINAL, NULL) upperrel operations remotely. 2019-04-02 20:30:45 +09:00
.gitignore Add postgres_fdw contrib module. 2013-02-21 05:27:16 -05:00
Makefile Prevent accidental linking of system-supplied copies of libpq.so etc. 2018-04-03 16:26:05 -04:00
connection.c Update copyright for 2019 2019-01-02 12:44:25 -05:00
deparse.c postgres_fdw: Perform the (FINAL, NULL) upperrel operations remotely. 2019-04-02 20:30:45 +09:00
option.c Update copyright for 2019 2019-01-02 12:44:25 -05:00
postgres_fdw--1.0.sql Add postgres_fdw contrib module. 2013-02-21 05:27:16 -05:00
postgres_fdw.c postgres_fdw: Perform the (FINAL, NULL) upperrel operations remotely. 2019-04-02 20:30:45 +09:00
postgres_fdw.control Add postgres_fdw contrib module. 2013-02-21 05:27:16 -05:00
postgres_fdw.h postgres_fdw: Perform the (FINAL, NULL) upperrel operations remotely. 2019-04-02 20:30:45 +09:00
shippable.c Update copyright for 2019 2019-01-02 12:44:25 -05:00