- Notifications
You must be signed in to change notification settings - Fork5.3k
Commitb140c8d
committed
Add SupportRequestInlineInFrom planner support request.
This request allows a support function to replace a function callappearing in FROM (typically a set-returning function) with anequivalent SELECT subquery. The subquery will then be subjectto the planner's usual optimizations, potentially allowing a muchbetter plan to be generated. While the planner has long done thisautomatically for simple SQL-language functions, it's now possiblefor extensions to do it for functions outside that group.Notably, this could be useful for functions that are presentlyimplemented in PL/pgSQL and work by generating and then EXECUTE'inga SQL query.Author: Paul A Jungwirth <pj@illuminatedcomputing.com>Reviewed-by: Tom Lane <tgl@sss.pgh.pa.us>Discussion:https://postgr.es/m/09de6afa-c33d-4d94-a5cb-afc6cea0d2bb@illuminatedcomputing.com1 parentc0bc9af commitb140c8d
File tree
9 files changed
+465
-125
lines changed- doc/src/sgml
- src
- backend/optimizer
- prep
- util
- include
- nodes
- optimizer
- test/regress
- expected
- sql
- tools/pgindent
9 files changed
+465
-125
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
4159 | 4159 | | |
4160 | 4160 | | |
4161 | 4161 | | |
| 4162 | + | |
| 4163 | + | |
| 4164 | + | |
| 4165 | + | |
| 4166 | + | |
| 4167 | + | |
| 4168 | + | |
| 4169 | + | |
| 4170 | + | |
| 4171 | + | |
| 4172 | + | |
| 4173 | + | |
| 4174 | + | |
| 4175 | + | |
| 4176 | + | |
| 4177 | + | |
| 4178 | + | |
| 4179 | + | |
| 4180 | + | |
| 4181 | + | |
| 4182 | + | |
| 4183 | + | |
| 4184 | + | |
| 4185 | + | |
| 4186 | + | |
4162 | 4187 | | |
4163 | 4188 | | |
4164 | 4189 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1066 | 1066 | | |
1067 | 1067 | | |
1068 | 1068 | | |
1069 | | - | |
| 1069 | + | |
1070 | 1070 | | |
1071 | | - | |
| 1071 | + | |
1072 | 1072 | | |
1073 | | - | |
1074 | | - | |
1075 | | - | |
| 1073 | + | |
| 1074 | + | |
| 1075 | + | |
| 1076 | + | |
| 1077 | + | |
1076 | 1078 | | |
1077 | 1079 | | |
1078 | 1080 | | |
| |||
1107 | 1109 | | |
1108 | 1110 | | |
1109 | 1111 | | |
1110 | | - | |
| 1112 | + | |
1111 | 1113 | | |
1112 | 1114 | | |
1113 | 1115 | | |
| |||
0 commit comments
Comments
(0)