forked frompostgres/postgres
- Notifications
You must be signed in to change notification settings - Fork6
Commit29c4ad9
committed
Support "x IS NOT NULL" clauses as indexscan conditions. This turns out
to be just a minor extension of the previous patch that made "x IS NULL"indexable, because we can treat the IS NOT NULL condition as if it were"x < NULL" or "x > NULL" (depending on the index's NULLS FIRST/LAST option),just like IS NULL is treated like "x = NULL". Aside from any possibleusefulness in its own right, this is an important improvement forindex-optimized MAX/MIN aggregates: it is now reliably possible to geta column's min or max value cheaply, even when there are a lot of nullscluttering the interesting end of the index.1 parent15faca2 commit29c4ad9
File tree
18 files changed
+295
-120
lines changed- doc/src/sgml
- src
- backend
- access
- common
- gist
- nbtree
- executor
- optimizer
- path
- plan
- utils/adt
- include
- access
- catalog
- nodes
- optimizer
- test/regress
- expected
- sql
18 files changed
+295
-120
lines changedLines changed: 2 additions & 2 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
1 |
| - | |
| 1 | + | |
2 | 2 |
| |
3 | 3 |
| |
4 | 4 |
| |
| |||
466 | 466 |
| |
467 | 467 |
| |
468 | 468 |
| |
469 |
| - | |
| 469 | + | |
470 | 470 |
| |
471 | 471 |
| |
472 | 472 |
| |
|
Lines changed: 3 additions & 2 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
1 |
| - | |
| 1 | + | |
2 | 2 |
| |
3 | 3 |
| |
4 | 4 |
| |
| |||
134 | 134 |
| |
135 | 135 |
| |
136 | 136 |
| |
137 |
| - | |
| 137 | + | |
| 138 | + | |
138 | 139 |
| |
139 | 140 |
| |
140 | 141 |
| |
|
Lines changed: 5 additions & 6 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
1 |
| - | |
| 1 | + | |
2 | 2 |
| |
3 | 3 |
| |
4 | 4 |
| |
| |||
147 | 147 |
| |
148 | 148 |
| |
149 | 149 |
| |
150 |
| - | |
151 |
| - | |
| 150 | + | |
| 151 | + | |
152 | 152 |
| |
153 | 153 |
| |
154 | 154 |
| |
| |||
180 | 180 |
| |
181 | 181 |
| |
182 | 182 |
| |
183 |
| - | |
184 |
| - | |
| 183 | + | |
185 | 184 |
| |
186 | 185 |
| |
187 | 186 |
| |
| |||
1025 | 1024 |
| |
1026 | 1025 |
| |
1027 | 1026 |
| |
1028 |
| - | |
| 1027 | + | |
1029 | 1028 |
| |
1030 | 1029 |
| |
1031 | 1030 |
| |
|
Lines changed: 3 additions & 3 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 |
| |
| |||
21 | 21 |
| |
22 | 22 |
| |
23 | 23 |
| |
24 |
| - | |
| 24 | + | |
25 | 25 |
| |
26 | 26 |
| |
27 | 27 |
| |
| |||
45 | 45 |
| |
46 | 46 |
| |
47 | 47 |
| |
48 |
| - | |
| 48 | + | |
49 | 49 |
| |
50 | 50 |
| |
51 | 51 |
| |
|
Lines changed: 14 additions & 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 |
| |
| |||
413 | 413 |
| |
414 | 414 |
| |
415 | 415 |
| |
416 |
| - | |
417 |
| - | |
| 416 | + | |
| 417 | + | |
418 | 418 |
| |
419 |
| - | |
420 |
| - | |
421 |
| - | |
422 |
| - | |
423 |
| - | |
| 419 | + | |
| 420 | + | |
| 421 | + | |
| 422 | + | |
| 423 | + | |
| 424 | + | |
| 425 | + | |
| 426 | + | |
| 427 | + | |
| 428 | + | |
| 429 | + | |
424 | 430 |
| |
425 | 431 |
| |
426 | 432 |
| |
|
Lines changed: 8 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 |
| |
| |||
92 | 92 |
| |
93 | 93 |
| |
94 | 94 |
| |
95 |
| - | |
| 95 | + | |
| 96 | + | |
96 | 97 |
| |
97 | 98 |
| |
98 | 99 |
| |
99 |
| - | |
| 100 | + | |
100 | 101 |
| |
101 |
| - | |
| 102 | + | |
| 103 | + | |
| 104 | + | |
102 | 105 |
| |
103 |
| - | |
| 106 | + | |
104 | 107 |
| |
105 | 108 |
| |
106 | 109 |
| |
|
Lines changed: 109 additions & 35 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 |
| |
| |||
276 | 276 |
| |
277 | 277 |
| |
278 | 278 |
| |
| 279 | + | |
| 280 | + | |
| 281 | + | |
| 282 | + | |
| 283 | + | |
279 | 284 |
| |
280 | 285 |
| |
281 | 286 |
| |
| |||
284 | 289 |
| |
285 | 290 |
| |
286 | 291 |
| |
| 292 | + | |
| 293 | + | |
| 294 | + | |
| 295 | + | |
| 296 | + | |
| 297 | + | |
| 298 | + | |
| 299 | + | |
| 300 | + | |
| 301 | + | |
| 302 | + | |
| 303 | + | |
| 304 | + | |
| 305 | + | |
| 306 | + | |
287 | 307 |
| |
288 | 308 |
| |
289 | 309 |
| |
| |||
320 | 340 |
| |
321 | 341 |
| |
322 | 342 |
| |
323 |
| - | |
| 343 | + | |
324 | 344 |
| |
325 | 345 |
| |
326 | 346 |
| |
| |||
329 | 349 |
| |
330 | 350 |
| |
331 | 351 |
| |
| 352 | + | |
| 353 | + | |
| 354 | + | |
| 355 | + | |
| 356 | + | |
| 357 | + | |
| 358 | + | |
| 359 | + | |
| 360 | + | |
| 361 | + | |
| 362 | + | |
| 363 | + | |
| 364 | + | |
| 365 | + | |
| 366 | + | |
332 | 367 |
| |
333 | 368 |
| |
334 | 369 |
| |
| |||
365 | 400 |
| |
366 | 401 |
| |
367 | 402 |
| |
368 |
| - | |
369 |
| - | |
370 |
| - | |
371 |
| - | |
372 |
| - | |
373 |
| - | |
374 |
| - | |
375 | 403 |
| |
376 | 404 |
| |
377 | 405 |
| |
| |||
484 | 512 |
| |
485 | 513 |
| |
486 | 514 |
| |
487 |
| - | |
488 |
| - | |
489 |
| - | |
490 |
| - | |
491 |
| - | |
492 |
| - | |
493 |
| - | |
494 |
| - | |
495 |
| - | |
496 |
| - | |
497 |
| - | |
498 |
| - | |
499 |
| - | |
500 |
| - | |
501 |
| - | |
502 |
| - | |
503 |
| - | |
504 | 515 |
| |
505 | 516 |
| |
506 | 517 |
| |
| |||
534 | 545 |
| |
535 | 546 |
| |
536 | 547 |
| |
537 |
| - | |
538 |
| - | |
| 548 | + | |
539 | 549 |
| |
540 | 550 |
| |
541 | 551 |
| |
| |||
555 | 565 |
| |
556 | 566 |
| |
557 | 567 |
| |
558 |
| - | |
559 |
| - | |
| 568 | + | |
560 | 569 |
| |
561 | 570 |
| |
562 | 571 |
| |
| |||
571 | 580 |
| |
572 | 581 |
| |
573 | 582 |
| |
| 583 | + | |
| 584 | + | |
| 585 | + | |
| 586 | + | |
| 587 | + | |
| 588 | + | |
| 589 | + | |
| 590 | + | |
| 591 | + | |
| 592 | + | |
| 593 | + | |
| 594 | + | |
| 595 | + | |
| 596 | + | |
| 597 | + | |
| 598 | + | |
| 599 | + | |
| 600 | + | |
| 601 | + | |
| 602 | + | |
| 603 | + | |
| 604 | + | |
| 605 | + | |
| 606 | + | |
| 607 | + | |
| 608 | + | |
| 609 | + | |
| 610 | + | |
| 611 | + | |
| 612 | + | |
| 613 | + | |
| 614 | + | |
| 615 | + | |
| 616 | + | |
| 617 | + | |
| 618 | + | |
| 619 | + | |
| 620 | + | |
| 621 | + | |
| 622 | + | |
| 623 | + | |
| 624 | + | |
| 625 | + | |
| 626 | + | |
| 627 | + | |
| 628 | + | |
| 629 | + | |
| 630 | + | |
| 631 | + | |
| 632 | + | |
| 633 | + | |
| 634 | + | |
| 635 | + | |
| 636 | + | |
| 637 | + | |
| 638 | + | |
| 639 | + | |
| 640 | + | |
574 | 641 |
| |
575 | 642 |
| |
576 | 643 |
| |
| |||
844 | 911 |
| |
845 | 912 |
| |
846 | 913 |
| |
847 |
| - | |
848 |
| - | |
849 |
| - | |
850 |
| - | |
851 |
| - | |
| 914 | + | |
| 915 | + | |
| 916 | + | |
| 917 | + | |
| 918 | + | |
| 919 | + | |
| 920 | + | |
| 921 | + | |
| 922 | + | |
| 923 | + | |
| 924 | + | |
| 925 | + | |
852 | 926 |
| |
853 | 927 |
| |
854 | 928 |
| |
|
0 commit comments
Comments
(0)