forked frompostgres/postgres
- Notifications
You must be signed in to change notification settings - Fork6
Commitce6e31d
committed
Teach the planner to treat a partial unique index as proving a variable is
unique for a particular query, if the index predicate is satisfied. Thisrequires a bit of reordering of operations so that we check the predicatesbefore doing any selectivity estimates, but shouldn't really cause anynoticeable slowdown. Per a comment from Michal Politowski.1 parent57b5984 commitce6e31d
File tree
5 files changed
+70
-39
lines changed- src/backend
- optimizer
- path
- util
- utils/adt
5 files changed
+70
-39
lines changedLines changed: 11 additions & 5 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
8 | 8 |
| |
9 | 9 |
| |
10 | 10 |
| |
11 |
| - | |
| 11 | + | |
12 | 12 |
| |
13 | 13 |
| |
14 | 14 |
| |
| |||
225 | 225 |
| |
226 | 226 |
| |
227 | 227 |
| |
| 228 | + | |
| 229 | + | |
| 230 | + | |
| 231 | + | |
| 232 | + | |
| 233 | + | |
228 | 234 |
| |
229 | 235 |
| |
230 | 236 |
| |
231 |
| - | |
232 |
| - | |
233 |
| - | |
234 | 237 |
| |
235 | 238 |
| |
236 | 239 |
| |
237 |
| - | |
| 240 | + | |
238 | 241 |
| |
239 | 242 |
| |
| 243 | + | |
| 244 | + | |
240 | 245 |
| |
| 246 | + | |
241 | 247 |
| |
242 | 248 |
| |
243 | 249 |
| |
|
Lines changed: 10 additions & 3 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
9 | 9 |
| |
10 | 10 |
| |
11 | 11 |
| |
12 |
| - | |
| 12 | + | |
13 | 13 |
| |
14 | 14 |
| |
15 | 15 |
| |
| |||
1367 | 1367 |
| |
1368 | 1368 |
| |
1369 | 1369 |
| |
1370 |
| - | |
1371 |
| - | |
| 1370 | + | |
| 1371 | + | |
| 1372 | + | |
| 1373 | + | |
| 1374 | + | |
| 1375 | + | |
1372 | 1376 |
| |
1373 | 1377 |
| |
1374 | 1378 |
| |
| |||
1383 | 1387 |
| |
1384 | 1388 |
| |
1385 | 1389 |
| |
| 1390 | + | |
| 1391 | + | |
| 1392 | + | |
1386 | 1393 |
| |
1387 | 1394 |
| |
1388 | 1395 |
| |
|
Lines changed: 2 additions & 2 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
8 | 8 |
| |
9 | 9 |
| |
10 | 10 |
| |
11 |
| - | |
| 11 | + | |
12 | 12 |
| |
13 | 13 |
| |
14 | 14 |
| |
| |||
181 | 181 |
| |
182 | 182 |
| |
183 | 183 |
| |
184 |
| - | |
| 184 | + | |
185 | 185 |
| |
186 | 186 |
|
Lines changed: 7 additions & 6 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
9 | 9 |
| |
10 | 10 |
| |
11 | 11 |
| |
12 |
| - | |
| 12 | + | |
13 | 13 |
| |
14 | 14 |
| |
15 | 15 |
| |
| |||
939 | 939 |
| |
940 | 940 |
| |
941 | 941 |
| |
942 |
| - | |
943 |
| - | |
944 |
| - | |
945 |
| - | |
| 942 | + | |
| 943 | + | |
| 944 | + | |
| 945 | + | |
| 946 | + | |
946 | 947 |
| |
947 | 948 |
| |
948 | 949 |
| |
949 | 950 |
| |
950 |
| - | |
| 951 | + | |
951 | 952 |
| |
952 | 953 |
| |
953 | 954 |
| |
|
Lines changed: 40 additions & 23 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
15 | 15 |
| |
16 | 16 |
| |
17 | 17 |
| |
18 |
| - | |
| 18 | + | |
19 | 19 |
| |
20 | 20 |
| |
21 | 21 |
| |
| |||
234 | 234 |
| |
235 | 235 |
| |
236 | 236 |
| |
| 237 | + | |
| 238 | + | |
| 239 | + | |
| 240 | + | |
| 241 | + | |
| 242 | + | |
| 243 | + | |
| 244 | + | |
| 245 | + | |
237 | 246 |
| |
238 | 247 |
| |
239 | 248 |
| |
| |||
357 | 366 |
| |
358 | 367 |
| |
359 | 368 |
| |
| 369 | + | |
| 370 | + | |
| 371 | + | |
| 372 | + | |
| 373 | + | |
| 374 | + | |
| 375 | + | |
| 376 | + | |
| 377 | + | |
360 | 378 |
| |
361 | 379 |
| |
362 | 380 |
| |
| |||
3969 | 3987 |
| |
3970 | 3988 |
| |
3971 | 3989 |
| |
| 3990 | + | |
| 3991 | + | |
3972 | 3992 |
| |
3973 | 3993 |
| |
3974 | 3994 |
| |
| |||
4005 | 4025 |
| |
4006 | 4026 |
| |
4007 | 4027 |
| |
| 4028 | + | |
4008 | 4029 |
| |
4009 | 4030 |
| |
4010 | 4031 |
| |
| |||
4121 | 4142 |
| |
4122 | 4143 |
| |
4123 | 4144 |
| |
4124 |
| - | |
4125 |
| - | |
4126 |
| - | |
4127 |
| - | |
4128 |
| - | |
4129 |
| - | |
4130 |
| - | |
4131 | 4145 |
| |
4132 | 4146 |
| |
4133 | 4147 |
| |
| |||
4147 | 4161 |
| |
4148 | 4162 |
| |
4149 | 4163 |
| |
4150 |
| - | |
| 4164 | + | |
4151 | 4165 |
| |
4152 |
| - | |
| 4166 | + | |
| 4167 | + | |
| 4168 | + | |
| 4169 | + | |
| 4170 | + | |
| 4171 | + | |
| 4172 | + | |
| 4173 | + | |
| 4174 | + | |
| 4175 | + | |
| 4176 | + | |
4153 | 4177 |
| |
4154 | 4178 |
| |
4155 | 4179 |
| |
| |||
4163 | 4187 |
| |
4164 | 4188 |
| |
4165 | 4189 |
| |
4166 |
| - | |
| 4190 | + | |
4167 | 4191 |
| |
4168 | 4192 |
| |
4169 | 4193 |
| |
| |||
4254 | 4278 |
| |
4255 | 4279 |
| |
4256 | 4280 |
| |
4257 |
| - | |
4258 |
| - | |
| 4281 | + | |
| 4282 | + | |
| 4283 | + | |
4259 | 4284 |
| |
4260 |
| - | |
4261 |
| - | |
4262 |
| - | |
4263 |
| - | |
4264 |
| - | |
4265 |
| - | |
4266 |
| - | |
4267 |
| - | |
4268 |
| - | |
4269 |
| - | |
| 4285 | + | |
| 4286 | + | |
4270 | 4287 |
| |
4271 | 4288 |
| |
4272 | 4289 |
| |
|
0 commit comments
Comments
(0)