Commit af20e2d
committed
Fix ALTER TABLE code to update domain constraints when needed.
It's possible for dropping a column, or altering its type, to require
changes in domain CHECK constraint expressions; but the code was
previously only expecting to find dependent table CHECK constraints.
Make the necessary adjustments.
This is a fairly old oversight, but it's a lot easier to encounter
the problem in the context of domains over composite types than it
was before. Given the lack of field complaints, I'm not going to
bother with a back-patch, though I'd be willing to reconsider that
decision if someone does complain.
Patch by me, reviewed by Michael Paquier
Discussion: https://postgr.es/m/30656.1509128130@sss.pgh.pa.us1 parent 387ec70 commit af20e2d
File tree
5 files changed
+186
-25
lines changed- src
- backend
- commands
- utils/adt
- include/nodes
- test/regress
- expected
- sql
5 files changed
+186
-25
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
425 | 425 | | |
426 | 426 | | |
427 | 427 | | |
428 | | - | |
| 428 | + | |
| 429 | + | |
429 | 430 | | |
430 | 431 | | |
431 | 432 | | |
| |||
3319 | 3320 | | |
3320 | 3321 | | |
3321 | 3322 | | |
| 3323 | + | |
3322 | 3324 | | |
3323 | 3325 | | |
3324 | 3326 | | |
| |||
3819 | 3821 | | |
3820 | 3822 | | |
3821 | 3823 | | |
3822 | | - | |
| 3824 | + | |
| 3825 | + | |
| 3826 | + | |
3823 | 3827 | | |
3824 | 3828 | | |
3825 | 3829 | | |
| |||
3936 | 3940 | | |
3937 | 3941 | | |
3938 | 3942 | | |
| 3943 | + | |
| 3944 | + | |
| 3945 | + | |
| 3946 | + | |
| 3947 | + | |
| 3948 | + | |
| 3949 | + | |
3939 | 3950 | | |
3940 | 3951 | | |
3941 | 3952 | | |
| |||
9616 | 9627 | | |
9617 | 9628 | | |
9618 | 9629 | | |
9619 | | - | |
| 9630 | + | |
| 9631 | + | |
| 9632 | + | |
| 9633 | + | |
| 9634 | + | |
| 9635 | + | |
| 9636 | + | |
| 9637 | + | |
| 9638 | + | |
9620 | 9639 | | |
9621 | 9640 | | |
9622 | 9641 | | |
| |||
9753 | 9772 | | |
9754 | 9773 | | |
9755 | 9774 | | |
9756 | | - | |
| 9775 | + | |
9757 | 9776 | | |
9758 | 9777 | | |
9759 | 9778 | | |
| |||
9777 | 9796 | | |
9778 | 9797 | | |
9779 | 9798 | | |
9780 | | - | |
| 9799 | + | |
| 9800 | + | |
| 9801 | + | |
9781 | 9802 | | |
9782 | 9803 | | |
9783 | 9804 | | |
9784 | | - | |
| 9805 | + | |
9785 | 9806 | | |
9786 | | - | |
9787 | 9807 | | |
9788 | 9808 | | |
9789 | 9809 | | |
| |||
9797 | 9817 | | |
9798 | 9818 | | |
9799 | 9819 | | |
9800 | | - | |
| 9820 | + | |
| 9821 | + | |
| 9822 | + | |
9801 | 9823 | | |
9802 | 9824 | | |
9803 | 9825 | | |
9804 | 9826 | | |
9805 | 9827 | | |
9806 | 9828 | | |
| 9829 | + | |
| 9830 | + | |
| 9831 | + | |
| 9832 | + | |
| 9833 | + | |
| 9834 | + | |
| 9835 | + | |
| 9836 | + | |
| 9837 | + | |
| 9838 | + | |
| 9839 | + | |
| 9840 | + | |
| 9841 | + | |
| 9842 | + | |
| 9843 | + | |
| 9844 | + | |
| 9845 | + | |
| 9846 | + | |
| 9847 | + | |
| 9848 | + | |
| 9849 | + | |
| 9850 | + | |
| 9851 | + | |
| 9852 | + | |
| 9853 | + | |
| 9854 | + | |
9807 | 9855 | | |
9808 | 9856 | | |
9809 | 9857 | | |
| |||
9813 | 9861 | | |
9814 | 9862 | | |
9815 | 9863 | | |
9816 | | - | |
9817 | | - | |
| 9864 | + | |
| 9865 | + | |
| 9866 | + | |
| 9867 | + | |
| 9868 | + | |
| 9869 | + | |
| 9870 | + | |
| 9871 | + | |
9818 | 9872 | | |
9819 | 9873 | | |
9820 | 9874 | | |
9821 | | - | |
| 9875 | + | |
| 9876 | + | |
9822 | 9877 | | |
9823 | 9878 | | |
9824 | 9879 | | |
| |||
9829 | 9884 | | |
9830 | 9885 | | |
9831 | 9886 | | |
9832 | | - | |
| 9887 | + | |
9833 | 9888 | | |
9834 | | - | |
9835 | | - | |
9836 | | - | |
9837 | | - | |
| 9889 | + | |
| 9890 | + | |
| 9891 | + | |
| 9892 | + | |
| 9893 | + | |
| 9894 | + | |
| 9895 | + | |
| 9896 | + | |
| 9897 | + | |
| 9898 | + | |
| 9899 | + | |
| 9900 | + | |
| 9901 | + | |
| 9902 | + | |
| 9903 | + | |
9838 | 9904 | | |
9839 | 9905 | | |
9840 | 9906 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
460 | 460 | | |
461 | 461 | | |
462 | 462 | | |
| 463 | + | |
463 | 464 | | |
464 | 465 | | |
465 | 466 | | |
| |||
1867 | 1868 | | |
1868 | 1869 | | |
1869 | 1870 | | |
1870 | | - | |
1871 | | - | |
1872 | | - | |
1873 | | - | |
1874 | | - | |
1875 | | - | |
1876 | | - | |
1877 | | - | |
1878 | | - | |
| 1871 | + | |
| 1872 | + | |
| 1873 | + | |
| 1874 | + | |
| 1875 | + | |
| 1876 | + | |
| 1877 | + | |
| 1878 | + | |
| 1879 | + | |
| 1880 | + | |
| 1881 | + | |
| 1882 | + | |
| 1883 | + | |
| 1884 | + | |
| 1885 | + | |
| 1886 | + | |
| 1887 | + | |
| 1888 | + | |
| 1889 | + | |
| 1890 | + | |
| 1891 | + | |
1879 | 1892 | | |
1880 | 1893 | | |
1881 | 1894 | | |
| |||
10778 | 10791 | | |
10779 | 10792 | | |
10780 | 10793 | | |
| 10794 | + | |
| 10795 | + | |
| 10796 | + | |
| 10797 | + | |
| 10798 | + | |
| 10799 | + | |
| 10800 | + | |
| 10801 | + | |
| 10802 | + | |
| 10803 | + | |
| 10804 | + | |
| 10805 | + | |
| 10806 | + | |
| 10807 | + | |
| 10808 | + | |
| 10809 | + | |
| 10810 | + | |
| 10811 | + | |
| 10812 | + | |
| 10813 | + | |
| 10814 | + | |
| 10815 | + | |
| 10816 | + | |
| 10817 | + | |
| 10818 | + | |
| 10819 | + | |
| 10820 | + | |
| 10821 | + | |
| 10822 | + | |
| 10823 | + | |
| 10824 | + | |
| 10825 | + | |
| 10826 | + | |
| 10827 | + | |
| 10828 | + | |
| 10829 | + | |
10781 | 10830 | | |
10782 | 10831 | | |
10783 | 10832 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1713 | 1713 | | |
1714 | 1714 | | |
1715 | 1715 | | |
| 1716 | + | |
1716 | 1717 | | |
1717 | 1718 | | |
1718 | 1719 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
284 | 284 | | |
285 | 285 | | |
286 | 286 | | |
| 287 | + | |
| 288 | + | |
| 289 | + | |
| 290 | + | |
| 291 | + | |
| 292 | + | |
| 293 | + | |
| 294 | + | |
| 295 | + | |
| 296 | + | |
| 297 | + | |
| 298 | + | |
| 299 | + | |
| 300 | + | |
| 301 | + | |
| 302 | + | |
| 303 | + | |
| 304 | + | |
| 305 | + | |
| 306 | + | |
| 307 | + | |
| 308 | + | |
| 309 | + | |
| 310 | + | |
| 311 | + | |
287 | 312 | | |
288 | 313 | | |
289 | 314 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
159 | 159 | | |
160 | 160 | | |
161 | 161 | | |
| 162 | + | |
| 163 | + | |
| 164 | + | |
| 165 | + | |
| 166 | + | |
| 167 | + | |
| 168 | + | |
| 169 | + | |
| 170 | + | |
| 171 | + | |
| 172 | + | |
| 173 | + | |
| 174 | + | |
| 175 | + | |
| 176 | + | |
| 177 | + | |
| 178 | + | |
| 179 | + | |
| 180 | + | |
| 181 | + | |
162 | 182 | | |
163 | 183 | | |
164 | 184 | | |
| |||
0 commit comments