- Notifications
You must be signed in to change notification settings - Fork4.9k
Commitb08df9c
committed
Teach predtest.c about CHECK clauses to fix partitioning bugs.
In a CHECK clause, a null result means true, whereas in a WHERE clauseit means false. predtest.c provided different functions depending onwhich set of semantics applied to the predicate being proved, but hadno option to control what a null meant in the clauses provided asaxioms. Add one.Use that in the partitioning code when figuring out whether thevalidation scan on a new partition can be skipped. Rip out theold logic that attempted (not very successfully) to compensatefor the absence of the necessary support in predtest.c.Ashutosh Bapat and Robert Haas, reviewed by Amit Langote andincorporating feedback from Tom Lane.Discussion:http://postgr.es/m/CAFjFpReT_kq_uwU_B8aWDxR7jNGE=P0iELycdq5oupi=xSQTOw@mail.gmail.com1 parenta12c09a commitb08df9c
File tree
9 files changed
+129
-132
lines changed- src
- backend
- commands
- optimizer
- path
- plan
- util
- utils/adt
- include/optimizer
- test/regress
- expected
- sql
9 files changed
+129
-132
lines changedLines changed: 1 addition & 59 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
13410 | 13410 |
| |
13411 | 13411 |
| |
13412 | 13412 |
| |
13413 |
| - | |
13414 | 13413 |
| |
13415 | 13414 |
| |
13416 | 13415 |
| |
| |||
13596 | 13595 |
| |
13597 | 13596 |
| |
13598 | 13597 |
| |
13599 |
| - | |
13600 |
| - | |
13601 |
| - | |
13602 |
| - | |
13603 |
| - | |
13604 | 13598 |
| |
13605 | 13599 |
| |
13606 | 13600 |
| |
| |||
13630 | 13624 |
| |
13631 | 13625 |
| |
13632 | 13626 |
| |
13633 |
| - | |
13634 | 13627 |
| |
13635 | 13628 |
| |
13636 | 13629 |
| |
| |||
13664 | 13657 |
| |
13665 | 13658 |
| |
13666 | 13659 |
| |
13667 |
| - | |
| 13660 | + | |
13668 | 13661 |
| |
13669 |
| - | |
13670 |
| - | |
13671 |
| - | |
13672 |
| - | |
13673 |
| - | |
13674 |
| - | |
13675 |
| - | |
13676 |
| - | |
13677 |
| - | |
13678 |
| - | |
13679 |
| - | |
13680 |
| - | |
13681 |
| - | |
13682 |
| - | |
13683 |
| - | |
13684 |
| - | |
13685 |
| - | |
13686 |
| - | |
13687 |
| - | |
13688 |
| - | |
13689 |
| - | |
13690 |
| - | |
13691 |
| - | |
13692 |
| - | |
13693 |
| - | |
13694 |
| - | |
13695 |
| - | |
13696 |
| - | |
13697 |
| - | |
13698 |
| - | |
13699 |
| - | |
13700 |
| - | |
13701 |
| - | |
13702 |
| - | |
13703 |
| - | |
13704 |
| - | |
13705 |
| - | |
13706 |
| - | |
13707 |
| - | |
13708 |
| - | |
13709 |
| - | |
13710 |
| - | |
13711 |
| - | |
13712 |
| - | |
13713 |
| - | |
13714 |
| - | |
13715 |
| - | |
13716 |
| - | |
13717 |
| - | |
13718 |
| - | |
13719 |
| - | |
13720 | 13662 |
| |
13721 | 13663 |
| |
13722 | 13664 |
| |
|
Lines changed: 6 additions & 5 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
1210 | 1210 |
| |
1211 | 1211 |
| |
1212 | 1212 |
| |
1213 |
| - | |
| 1213 | + | |
1214 | 1214 |
| |
1215 | 1215 |
| |
1216 |
| - | |
| 1216 | + | |
1217 | 1217 |
| |
1218 | 1218 |
| |
1219 | 1219 |
| |
| |||
1519 | 1519 |
| |
1520 | 1520 |
| |
1521 | 1521 |
| |
1522 |
| - | |
| 1522 | + | |
1523 | 1523 |
| |
1524 | 1524 |
| |
1525 | 1525 |
| |
| |||
2871 | 2871 |
| |
2872 | 2872 |
| |
2873 | 2873 |
| |
2874 |
| - | |
| 2874 | + | |
| 2875 | + | |
2875 | 2876 |
| |
2876 | 2877 |
| |
2877 | 2878 |
| |
| |||
2886 | 2887 |
| |
2887 | 2888 |
| |
2888 | 2889 |
| |
2889 |
| - | |
| 2890 | + | |
2890 | 2891 |
| |
2891 | 2892 |
| |
2892 | 2893 |
| |
|
Lines changed: 4 additions & 3 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
2576 | 2576 |
| |
2577 | 2577 |
| |
2578 | 2578 |
| |
2579 |
| - | |
| 2579 | + | |
2580 | 2580 |
| |
2581 | 2581 |
| |
2582 | 2582 |
| |
| |||
2737 | 2737 |
| |
2738 | 2738 |
| |
2739 | 2739 |
| |
2740 |
| - | |
| 2740 | + | |
2741 | 2741 |
| |
2742 | 2742 |
| |
2743 | 2743 |
| |
| |||
2968 | 2968 |
| |
2969 | 2969 |
| |
2970 | 2970 |
| |
2971 |
| - | |
| 2971 | + | |
| 2972 | + | |
2972 | 2973 |
| |
2973 | 2974 |
| |
2974 | 2975 |
| |
|
Lines changed: 3 additions & 3 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
776 | 776 |
| |
777 | 777 |
| |
778 | 778 |
| |
779 |
| - | |
| 779 | + | |
780 | 780 |
| |
781 | 781 |
| |
782 | 782 |
| |
| |||
1399 | 1399 |
| |
1400 | 1400 |
| |
1401 | 1401 |
| |
1402 |
| - | |
| 1402 | + | |
1403 | 1403 |
| |
1404 | 1404 |
| |
1405 | 1405 |
| |
| |||
1438 | 1438 |
| |
1439 | 1439 |
| |
1440 | 1440 |
| |
1441 |
| - | |
| 1441 | + | |
1442 | 1442 |
| |
1443 | 1443 |
| |
1444 | 1444 |
| |
|
0 commit comments
Comments
(0)