forked frompostgres/postgres
- Notifications
You must be signed in to change notification settings - Fork6
Commit2679a10
committed
Track nesting depth correctly when drilling down into RECORD Vars.
expandRecordVariable() failed to adjust the parse nesting structurecorrectly when recursing to inspect an outer-level Var. This couldresult in assertion failures or core dumps in corner cases.Likewise, get_name_for_var_field() failed to adjust the deparsenamespace stack correctly when recursing to inspect an outer-levelVar. In this case the likely result was a "bogus varno" errorwhile deparsing a view.Per bug #18077 from Jingzhou Fu. Back-patch to all supportedbranches.Richard Guo, with some adjustments by meDiscussion:https://postgr.es/m/18077-b9db97c6e0ab45d8@postgresql.org1 parentfe60434 commit2679a10
File tree
4 files changed
+120
-22
lines changed- src
- backend
- parser
- utils/adt
- test/regress
- expected
- sql
4 files changed
+120
-22
lines changedLines changed: 13 additions & 7 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
1504 | 1504 |
| |
1505 | 1505 |
| |
1506 | 1506 |
| |
1507 |
| - | |
| 1507 | + | |
| 1508 | + | |
1508 | 1509 |
| |
1509 | 1510 |
| |
1510 | 1511 |
| |
| |||
1592 | 1593 |
| |
1593 | 1594 |
| |
1594 | 1595 |
| |
1595 |
| - | |
| 1596 | + | |
| 1597 | + | |
| 1598 | + | |
| 1599 | + | |
1596 | 1600 |
| |
1597 |
| - | |
| 1601 | + | |
| 1602 | + | |
1598 | 1603 |
| |
1599 |
| - | |
| 1604 | + | |
| 1605 | + | |
| 1606 | + | |
1600 | 1607 |
| |
1601 | 1608 |
| |
1602 | 1609 |
| |
| |||
1647 | 1654 |
| |
1648 | 1655 |
| |
1649 | 1656 |
| |
1650 |
| - | |
| 1657 | + | |
1651 | 1658 |
| |
1652 |
| - | |
| 1659 | + | |
1653 | 1660 |
| |
1654 | 1661 |
| |
1655 |
| - | |
1656 | 1662 |
| |
1657 | 1663 |
| |
1658 | 1664 |
| |
|
Lines changed: 22 additions & 15 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
7845 | 7845 |
| |
7846 | 7846 |
| |
7847 | 7847 |
| |
7848 |
| - | |
| 7848 | + | |
| 7849 | + | |
| 7850 | + | |
| 7851 | + | |
7849 | 7852 |
| |
| 7853 | + | |
| 7854 | + | |
7850 | 7855 |
| |
7851 | 7856 |
| |
7852 | 7857 |
| |
| 7858 | + | |
| 7859 | + | |
| 7860 | + | |
7853 | 7861 |
| |
7854 |
| - | |
| 7862 | + | |
7855 | 7863 |
| |
7856 |
| - | |
7857 |
| - | |
| 7864 | + | |
7858 | 7865 |
| |
7859 | 7866 |
| |
7860 | 7867 |
| |
7861 | 7868 |
| |
7862 |
| - | |
7863 |
| - | |
| 7869 | + | |
7864 | 7870 |
| |
7865 | 7871 |
| |
7866 | 7872 |
| |
| |||
7952 | 7958 |
| |
7953 | 7959 |
| |
7954 | 7960 |
| |
7955 |
| - | |
| 7961 | + | |
7956 | 7962 |
| |
7957 | 7963 |
| |
7958 | 7964 |
| |
7959 | 7965 |
| |
7960 | 7966 |
| |
7961 | 7967 |
| |
7962 | 7968 |
| |
7963 |
| - | |
7964 |
| - | |
7965 |
| - | |
| 7969 | + | |
| 7970 | + | |
| 7971 | + | |
7966 | 7972 |
| |
7967 | 7973 |
| |
7968 |
| - | |
| 7974 | + | |
7969 | 7975 |
| |
7970 | 7976 |
| |
7971 | 7977 |
| |
| 7978 | + | |
| 7979 | + | |
| 7980 | + | |
7972 | 7981 |
| |
7973 |
| - | |
| 7982 | + | |
7974 | 7983 |
| |
7975 |
| - | |
7976 |
| - | |
7977 |
| - | |
| 7984 | + | |
7978 | 7985 |
| |
7979 | 7986 |
| |
7980 | 7987 |
| |
|
Lines changed: 60 additions & 0 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
1209 | 1209 |
| |
1210 | 1210 |
| |
1211 | 1211 |
| |
| 1212 | + | |
| 1213 | + | |
| 1214 | + | |
| 1215 | + | |
| 1216 | + | |
| 1217 | + | |
| 1218 | + | |
| 1219 | + | |
| 1220 | + | |
| 1221 | + | |
| 1222 | + | |
| 1223 | + | |
| 1224 | + | |
| 1225 | + | |
| 1226 | + | |
| 1227 | + | |
| 1228 | + | |
| 1229 | + | |
| 1230 | + | |
| 1231 | + | |
| 1232 | + | |
| 1233 | + | |
| 1234 | + | |
| 1235 | + | |
| 1236 | + | |
| 1237 | + | |
| 1238 | + | |
| 1239 | + | |
| 1240 | + | |
| 1241 | + | |
| 1242 | + | |
| 1243 | + | |
| 1244 | + | |
| 1245 | + | |
| 1246 | + | |
| 1247 | + | |
| 1248 | + | |
| 1249 | + | |
| 1250 | + | |
| 1251 | + | |
| 1252 | + | |
| 1253 | + | |
| 1254 | + | |
| 1255 | + | |
| 1256 | + | |
| 1257 | + | |
| 1258 | + | |
| 1259 | + | |
| 1260 | + | |
| 1261 | + | |
| 1262 | + | |
| 1263 | + | |
| 1264 | + | |
| 1265 | + | |
| 1266 | + | |
| 1267 | + | |
| 1268 | + | |
| 1269 | + | |
| 1270 | + | |
| 1271 | + | |
1212 | 1272 |
| |
1213 | 1273 |
| |
1214 | 1274 |
| |
|
Lines changed: 25 additions & 0 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
487 | 487 |
| |
488 | 488 |
| |
489 | 489 |
| |
| 490 | + | |
| 491 | + | |
| 492 | + | |
| 493 | + | |
| 494 | + | |
| 495 | + | |
| 496 | + | |
| 497 | + | |
| 498 | + | |
| 499 | + | |
| 500 | + | |
| 501 | + | |
| 502 | + | |
| 503 | + | |
| 504 | + | |
| 505 | + | |
| 506 | + | |
| 507 | + | |
| 508 | + | |
| 509 | + | |
| 510 | + | |
| 511 | + | |
| 512 | + | |
| 513 | + | |
| 514 | + | |
490 | 515 |
| |
491 | 516 |
| |
492 | 517 |
| |
|
0 commit comments
Comments
(0)