forked frompostgres/postgres
- Notifications
You must be signed in to change notification settings - Fork6
Commitd50d172

Etsuro Fujita
postgres_fdw: Perform the (FINAL, NULL) upperrel operations remotely.
The upper-planner pathification allows FDWs to arrange to push downdifferent types of upper-stage operations to the remote side. Thiscommit 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 commandsso that it 1) skips the LockRows step (if any) (note that this issafe since it performs early locking) and 2) pushes down the LIMITand/or OFFSET restrictions (if any) to the remote side. This doesn'thandle the INSERT/UPDATE/DELETE cases.Author: Etsuro FujitaReviewed-By: Antonin Houska and Jeff JanesDiscussion:https://postgr.es/m/87pnz1aby9.fsf@news-spur.riddles.org.uk1 parentaef65db commitd50d172
File tree
7 files changed
+656
-390
lines changed- contrib/postgres_fdw
- expected
- sql
- src
- backend/optimizer/plan
- include/nodes
7 files changed
+656
-390
lines changedLines changed: 35 additions & 2 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
169 | 169 |
| |
170 | 170 |
| |
171 | 171 |
| |
| 172 | + | |
172 | 173 |
| |
173 | 174 |
| |
174 | 175 |
| |
| |||
930 | 931 |
| |
931 | 932 |
| |
932 | 933 |
| |
933 |
| - | |
| 934 | + | |
934 | 935 |
| |
935 | 936 |
| |
936 | 937 |
| |
| |||
988 | 989 |
| |
989 | 990 |
| |
990 | 991 |
| |
| 992 | + | |
| 993 | + | |
| 994 | + | |
| 995 | + | |
991 | 996 |
| |
992 | 997 |
| |
993 | 998 |
| |
| |||
1591 | 1596 |
| |
1592 | 1597 |
| |
1593 | 1598 |
| |
1594 |
| - | |
| 1599 | + | |
| 1600 | + | |
1595 | 1601 |
| |
1596 | 1602 |
| |
1597 | 1603 |
| |
| |||
3160 | 3166 |
| |
3161 | 3167 |
| |
3162 | 3168 |
| |
| 3169 | + | |
| 3170 | + | |
| 3171 | + | |
| 3172 | + | |
| 3173 | + | |
| 3174 | + | |
| 3175 | + | |
| 3176 | + | |
| 3177 | + | |
| 3178 | + | |
| 3179 | + | |
| 3180 | + | |
| 3181 | + | |
| 3182 | + | |
| 3183 | + | |
| 3184 | + | |
| 3185 | + | |
| 3186 | + | |
| 3187 | + | |
| 3188 | + | |
| 3189 | + | |
| 3190 | + | |
| 3191 | + | |
| 3192 | + | |
| 3193 | + | |
| 3194 | + | |
| 3195 | + | |
3163 | 3196 |
| |
3164 | 3197 |
| |
3165 | 3198 |
| |
|
Lines changed: 251 additions & 369 deletions
Large diffs are not rendered by default.
0 commit comments
Comments
(0)