forked frompostgres/postgres
- Notifications
You must be signed in to change notification settings - Fork6
Commit04c8785
committed
Restructure planning of nestloop inner indexscans so that the set of usable
joinclauses is determined accurately for each join. Formerly, the code onlyconsidered joinclauses that used all of the rels from the outer side of thejoin; thus for exampleFROM (a CROSS JOIN b) JOIN c ON (c.f1 = a.x AND c.f2 = b.y)could not exploit a two-column index on c(f1,f2), since neither of thequal clauses would be in the joininfo list it looked in. The new code doesthis correctly, and also is able to eliminate redundant clauses, thus fixingthe problem noted 24-Oct-02 by Hans-Jürgen Schönig.1 parent6bfc09b commit04c8785
File tree
19 files changed
+742
-579
lines changed- src
- backend
- nodes
- optimizer
- path
- plan
- util
- include
- nodes
- optimizer
19 files changed
+742
-579
lines changedLines changed: 29 additions & 4 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 |
| |
| |||
1148 | 1148 |
| |
1149 | 1149 |
| |
1150 | 1150 |
| |
1151 |
| - | |
| 1151 | + | |
| 1152 | + | |
| 1153 | + | |
1152 | 1154 |
| |
1153 | 1155 |
| |
1154 | 1156 |
| |
| |||
1200 | 1202 |
| |
1201 | 1203 |
| |
1202 | 1204 |
| |
| 1205 | + | |
| 1206 | + | |
| 1207 | + | |
1203 | 1208 |
| |
1204 | 1209 |
| |
1205 | 1210 |
| |
| |||
1262 | 1267 |
| |
1263 | 1268 |
| |
1264 | 1269 |
| |
1265 |
| - | |
1266 |
| - | |
1267 | 1270 |
| |
1268 | 1271 |
| |
1269 | 1272 |
| |
| |||
1491 | 1494 |
| |
1492 | 1495 |
| |
1493 | 1496 |
| |
| 1497 | + | |
| 1498 | + | |
| 1499 | + | |
| 1500 | + | |
| 1501 | + | |
| 1502 | + | |
| 1503 | + | |
| 1504 | + | |
| 1505 | + | |
| 1506 | + | |
| 1507 | + | |
| 1508 | + | |
| 1509 | + | |
| 1510 | + | |
| 1511 | + | |
| 1512 | + | |
| 1513 | + | |
| 1514 | + | |
| 1515 | + | |
1494 | 1516 |
| |
1495 | 1517 |
| |
1496 | 1518 |
| |
| |||
2952 | 2974 |
| |
2953 | 2975 |
| |
2954 | 2976 |
| |
| 2977 | + | |
| 2978 | + | |
| 2979 | + | |
2955 | 2980 |
| |
2956 | 2981 |
| |
2957 | 2982 |
| |
|
Lines changed: 20 additions & 11 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
20 | 20 |
| |
21 | 21 |
| |
22 | 22 |
| |
23 |
| - | |
| 23 | + | |
24 | 24 |
| |
25 | 25 |
| |
26 | 26 |
| |
| |||
429 | 429 |
| |
430 | 430 |
| |
431 | 431 |
| |
432 |
| - | |
433 |
| - | |
434 |
| - | |
435 |
| - | |
436 | 432 |
| |
437 | 433 |
| |
438 | 434 |
| |
| |||
548 | 544 |
| |
549 | 545 |
| |
550 | 546 |
| |
551 |
| - | |
552 |
| - | |
553 |
| - | |
554 |
| - | |
| 547 | + | |
| 548 | + | |
| 549 | + | |
| 550 | + | |
555 | 551 |
| |
556 |
| - | |
557 |
| - | |
558 | 552 |
| |
559 | 553 |
| |
560 | 554 |
| |
| |||
576 | 570 |
| |
577 | 571 |
| |
578 | 572 |
| |
| 573 | + | |
| 574 | + | |
| 575 | + | |
| 576 | + | |
| 577 | + | |
| 578 | + | |
| 579 | + | |
| 580 | + | |
| 581 | + | |
| 582 | + | |
| 583 | + | |
| 584 | + | |
579 | 585 |
| |
580 | 586 |
| |
581 | 587 |
| |
| |||
2120 | 2126 |
| |
2121 | 2127 |
| |
2122 | 2128 |
| |
| 2129 | + | |
| 2130 | + | |
| 2131 | + | |
2123 | 2132 |
| |
2124 | 2133 |
| |
2125 | 2134 |
| |
|
Lines changed: 41 additions & 1 deletion
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
8 | 8 |
| |
9 | 9 |
| |
10 | 10 |
| |
11 |
| - | |
| 11 | + | |
12 | 12 |
| |
13 | 13 |
| |
14 | 14 |
| |
| |||
372 | 372 |
| |
373 | 373 |
| |
374 | 374 |
| |
| 375 | + | |
| 376 | + | |
| 377 | + | |
| 378 | + | |
| 379 | + | |
| 380 | + | |
| 381 | + | |
| 382 | + | |
| 383 | + | |
| 384 | + | |
| 385 | + | |
| 386 | + | |
| 387 | + | |
| 388 | + | |
| 389 | + | |
| 390 | + | |
| 391 | + | |
| 392 | + | |
| 393 | + | |
| 394 | + | |
| 395 | + | |
| 396 | + | |
| 397 | + | |
| 398 | + | |
| 399 | + | |
| 400 | + | |
| 401 | + | |
| 402 | + | |
| 403 | + | |
| 404 | + | |
| 405 | + | |
| 406 | + | |
| 407 | + | |
| 408 | + | |
| 409 | + | |
| 410 | + | |
| 411 | + | |
| 412 | + | |
| 413 | + | |
| 414 | + | |
375 | 415 |
| |
376 | 416 |
| |
377 | 417 |
| |
|
Lines changed: 3 additions & 7 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
5 | 5 |
| |
6 | 6 |
| |
7 | 7 |
| |
8 |
| - | |
| 8 | + | |
9 | 9 |
| |
10 | 10 |
| |
11 | 11 |
| |
| |||
1067 | 1067 |
| |
1068 | 1068 |
| |
1069 | 1069 |
| |
1070 |
| - | |
1071 |
| - | |
1072 |
| - | |
1073 |
| - | |
1074 |
| - | |
1075 |
| - | |
| 1070 | + | |
| 1071 | + | |
1076 | 1072 |
| |
1077 | 1073 |
| |
1078 | 1074 |
| |
|
Lines changed: 1 addition & 8 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 |
| |
| |||
1824 | 1824 |
| |
1825 | 1825 |
| |
1826 | 1826 |
| |
1827 |
| - | |
1828 |
| - | |
1829 |
| - | |
1830 |
| - | |
1831 |
| - | |
1832 |
| - | |
1833 |
| - | |
1834 | 1827 |
| |
1835 | 1828 |
| |
1836 | 1829 |
| |
|
0 commit comments
Comments
(0)