- Notifications
You must be signed in to change notification settings - Fork28
Commit63f9282
committed
Tighten integrity checks on ALTER TABLE ... ALTER COLUMN ... RENAME.
When a column is renamed, we recursively rename the same column inall descendent tables. But if one of those tables also inherits thatcolumn from a table outside the inheritance hierarchy rooted at thenamed table, we must throw an error. The previous coding correctlyprohibited the rename when the parent had inherited the column fromelsewhere, but overlooked the case where the parent was OK but a childtable also inherited the same column from a second, unrelated parent.For now, not backpatched due to lack of complaints from the field.KaiGai Kohei, with further changes by me.Reviewed by Bernd Helme and Tom Lane.1 parent1526d4e commit63f9282
File tree
9 files changed
+211
-29
lines changed- src
- backend
- catalog
- commands
- optimizer/prep
- include
- catalog
- commands
- test/regress
- expected
- sql
9 files changed
+211
-29
lines changedLines changed: 37 additions & 4 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
13 | 13 |
| |
14 | 14 |
| |
15 | 15 |
| |
16 |
| - | |
| 16 | + | |
17 | 17 |
| |
18 | 18 |
| |
19 | 19 |
| |
| |||
148 | 148 |
| |
149 | 149 |
| |
150 | 150 |
| |
| 151 | + | |
| 152 | + | |
| 153 | + | |
151 | 154 |
| |
152 | 155 |
| |
153 | 156 |
| |
154 | 157 |
| |
155 | 158 |
| |
156 | 159 |
| |
157 | 160 |
| |
158 |
| - | |
| 161 | + | |
159 | 162 |
| |
160 |
| - | |
| 163 | + | |
161 | 164 |
| |
162 | 165 |
| |
163 | 166 |
| |
| |||
168 | 171 |
| |
169 | 172 |
| |
170 | 173 |
| |
| 174 | + | |
171 | 175 |
| |
172 | 176 |
| |
173 | 177 |
| |
174 | 178 |
| |
175 | 179 |
| |
| 180 | + | |
176 | 181 |
| |
177 | 182 |
| |
178 | 183 |
| |
| |||
184 | 189 |
| |
185 | 190 |
| |
186 | 191 |
| |
187 |
| - | |
| 192 | + | |
| 193 | + | |
| 194 | + | |
| 195 | + | |
| 196 | + | |
| 197 | + | |
| 198 | + | |
| 199 | + | |
| 200 | + | |
| 201 | + | |
| 202 | + | |
| 203 | + | |
| 204 | + | |
| 205 | + | |
| 206 | + | |
| 207 | + | |
| 208 | + | |
| 209 | + | |
| 210 | + | |
| 211 | + | |
| 212 | + | |
| 213 | + | |
| 214 | + | |
| 215 | + | |
| 216 | + | |
188 | 217 |
| |
189 | 218 |
| |
| 219 | + | |
| 220 | + | |
| 221 | + | |
| 222 | + | |
190 | 223 |
| |
191 | 224 |
| |
192 | 225 |
| |
|
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 |
| |
| |||
126 | 126 |
| |
127 | 127 |
| |
128 | 128 |
| |
129 |
| - | |
| 129 | + | |
130 | 130 |
| |
131 | 131 |
| |
132 | 132 |
| |
|
Lines changed: 3 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 |
| |
| |||
1390 | 1390 |
| |
1391 | 1391 |
| |
1392 | 1392 |
| |
1393 |
| - | |
| 1393 | + | |
| 1394 | + | |
1394 | 1395 |
| |
1395 | 1396 |
| |
1396 | 1397 |
| |
|
Lines changed: 29 additions & 15 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 |
| |
| |||
824 | 824 |
| |
825 | 825 |
| |
826 | 826 |
| |
827 |
| - | |
| 827 | + | |
828 | 828 |
| |
829 | 829 |
| |
830 | 830 |
| |
| |||
1943 | 1943 |
| |
1944 | 1944 |
| |
1945 | 1945 |
| |
1946 |
| - | |
| 1946 | + | |
1947 | 1947 |
| |
1948 | 1948 |
| |
1949 | 1949 |
| |
| |||
1987 | 1987 |
| |
1988 | 1988 |
| |
1989 | 1989 |
| |
1990 |
| - | |
1991 |
| - | |
| 1990 | + | |
| 1991 | + | |
1992 | 1992 |
| |
1993 |
| - | |
| 1993 | + | |
| 1994 | + | |
| 1995 | + | |
| 1996 | + | |
| 1997 | + | |
| 1998 | + | |
| 1999 | + | |
1994 | 2000 |
| |
1995 | 2001 |
| |
1996 | 2002 |
| |
1997 | 2003 |
| |
1998 | 2004 |
| |
1999 | 2005 |
| |
2000 |
| - | |
| 2006 | + | |
2001 | 2007 |
| |
2002 |
| - | |
| 2008 | + | |
| 2009 | + | |
2003 | 2010 |
| |
2004 | 2011 |
| |
2005 | 2012 |
| |
2006 | 2013 |
| |
2007 |
| - | |
| 2014 | + | |
2008 | 2015 |
| |
2009 | 2016 |
| |
2010 | 2017 |
| |
2011 | 2018 |
| |
2012 | 2019 |
| |
2013 | 2020 |
| |
2014 | 2021 |
| |
| 2022 | + | |
| 2023 | + | |
2015 | 2024 |
| |
2016 |
| - | |
| 2025 | + | |
2017 | 2026 |
| |
2018 | 2027 |
| |
2019 | 2028 |
| |
| |||
2039 | 2048 |
| |
2040 | 2049 |
| |
2041 | 2050 |
| |
2042 |
| - | |
2043 |
| - | |
| 2051 | + | |
| 2052 | + | |
| 2053 | + | |
| 2054 | + | |
| 2055 | + | |
| 2056 | + | |
| 2057 | + | |
2044 | 2058 |
| |
2045 |
| - | |
| 2059 | + | |
2046 | 2060 |
| |
2047 | 2061 |
| |
2048 | 2062 |
| |
| |||
3410 | 3424 |
| |
3411 | 3425 |
| |
3412 | 3426 |
| |
3413 |
| - | |
| 3427 | + | |
3414 | 3428 |
| |
3415 | 3429 |
| |
3416 | 3430 |
| |
| |||
7233 | 7247 |
| |
7234 | 7248 |
| |
7235 | 7249 |
| |
7236 |
| - | |
| 7250 | + | |
7237 | 7251 |
| |
7238 | 7252 |
| |
7239 | 7253 |
| |
|
Lines changed: 2 additions & 2 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
22 | 22 |
| |
23 | 23 |
| |
24 | 24 |
| |
25 |
| - | |
| 25 | + | |
26 | 26 |
| |
27 | 27 |
| |
28 | 28 |
| |
| |||
1180 | 1180 |
| |
1181 | 1181 |
| |
1182 | 1182 |
| |
1183 |
| - | |
| 1183 | + | |
1184 | 1184 |
| |
1185 | 1185 |
| |
1186 | 1186 |
| |
|
Lines changed: 3 additions & 2 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
7 | 7 |
| |
8 | 8 |
| |
9 | 9 |
| |
10 |
| - | |
| 10 | + | |
11 | 11 |
| |
12 | 12 |
| |
13 | 13 |
| |
| |||
18 | 18 |
| |
19 | 19 |
| |
20 | 20 |
| |
21 |
| - | |
| 21 | + | |
| 22 | + | |
22 | 23 |
| |
23 | 24 |
| |
24 | 25 |
| |
|
Lines changed: 2 additions & 2 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
7 | 7 |
| |
8 | 8 |
| |
9 | 9 |
| |
10 |
| - | |
| 10 | + | |
11 | 11 |
| |
12 | 12 |
| |
13 | 13 |
| |
| |||
43 | 43 |
| |
44 | 44 |
| |
45 | 45 |
| |
46 |
| - | |
| 46 | + | |
47 | 47 |
| |
48 | 48 |
| |
49 | 49 |
| |
|
Lines changed: 94 additions & 0 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
1053 | 1053 |
| |
1054 | 1054 |
| |
1055 | 1055 |
| |
| 1056 | + | |
| 1057 | + | |
| 1058 | + | |
| 1059 | + | |
| 1060 | + | |
| 1061 | + | |
| 1062 | + | |
| 1063 | + | |
| 1064 | + | |
| 1065 | + | |
| 1066 | + | |
| 1067 | + | |
| 1068 | + | |
| 1069 | + | |
| 1070 | + | |
| 1071 | + | |
| 1072 | + | |
| 1073 | + | |
| 1074 | + | |
| 1075 | + | |
| 1076 | + | |
| 1077 | + | |
| 1078 | + | |
| 1079 | + | |
| 1080 | + | |
| 1081 | + | |
| 1082 | + | |
| 1083 | + | |
| 1084 | + | |
| 1085 | + | |
| 1086 | + | |
| 1087 | + | |
| 1088 | + | |
| 1089 | + | |
| 1090 | + | |
| 1091 | + | |
| 1092 | + | |
| 1093 | + | |
| 1094 | + | |
| 1095 | + | |
| 1096 | + | |
| 1097 | + | |
| 1098 | + | |
| 1099 | + | |
| 1100 | + | |
| 1101 | + | |
| 1102 | + | |
| 1103 | + | |
| 1104 | + | |
| 1105 | + | |
| 1106 | + | |
| 1107 | + | |
| 1108 | + | |
| 1109 | + | |
| 1110 | + | |
| 1111 | + | |
| 1112 | + | |
| 1113 | + | |
| 1114 | + | |
| 1115 | + | |
| 1116 | + | |
| 1117 | + | |
| 1118 | + | |
| 1119 | + | |
| 1120 | + | |
| 1121 | + | |
| 1122 | + | |
| 1123 | + | |
| 1124 | + | |
| 1125 | + | |
| 1126 | + | |
| 1127 | + | |
| 1128 | + | |
| 1129 | + | |
| 1130 | + | |
| 1131 | + | |
| 1132 | + | |
| 1133 | + | |
| 1134 | + | |
| 1135 | + | |
| 1136 | + | |
| 1137 | + | |
| 1138 | + | |
| 1139 | + | |
| 1140 | + | |
| 1141 | + | |
| 1142 | + | |
| 1143 | + | |
| 1144 | + | |
| 1145 | + | |
| 1146 | + | |
| 1147 | + | |
| 1148 | + | |
| 1149 | + |
0 commit comments
Comments
(0)