forked frompostgres/postgres
- Notifications
You must be signed in to change notification settings - Fork6
Commit01f7d29
committed
Improve plpgsql's handling of record field references by forcing all potential
field references in SQL expressions to have RECFIELD datum-array entries atparse time. If it turns out that the reference is actually to a SQL column,the RECFIELD entry is useless, but it costs little. This allows us to get ridof the previous use of FieldSelect applied to a whole-row Param for the recordvariable; which was not only slower than a direct RECFIELD reference, butfailed for references to system columns of a trigger's NEW or OLD record.Per report and fix suggestion from Dean Rasheed.1 parentf537e7d commit01f7d29
4 files changed
+77
-74
lines changedLines changed: 19 additions & 19 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 |
| |
| |||
369 | 369 |
| |
370 | 370 |
| |
371 | 371 |
| |
372 |
| - | |
| 372 | + | |
373 | 373 |
| |
374 | 374 |
| |
375 | 375 |
| |
376 | 376 |
| |
377 | 377 |
| |
378 | 378 |
| |
379 |
| - | |
| 379 | + | |
380 | 380 |
| |
381 | 381 |
| |
382 | 382 |
| |
383 | 383 |
| |
384 | 384 |
| |
385 | 385 |
| |
386 |
| - | |
| 386 | + | |
387 | 387 |
| |
388 | 388 |
| |
389 | 389 |
| |
| |||
401 | 401 |
| |
402 | 402 |
| |
403 | 403 |
| |
404 |
| - | |
| 404 | + | |
405 | 405 |
| |
406 | 406 |
| |
407 | 407 |
| |
| |||
2121 | 2121 |
| |
2122 | 2122 |
| |
2123 | 2123 |
| |
2124 |
| - | |
| 2124 | + | |
2125 | 2125 |
| |
2126 | 2126 |
| |
2127 | 2127 |
| |
2128 | 2128 |
| |
2129 | 2129 |
| |
2130 | 2130 |
| |
2131 | 2131 |
| |
2132 |
| - | |
2133 |
| - | |
2134 |
| - | |
| 2132 | + | |
| 2133 | + | |
| 2134 | + | |
2135 | 2135 |
| |
2136 | 2136 |
| |
2137 | 2137 |
| |
| |||
2176 | 2176 |
| |
2177 | 2177 |
| |
2178 | 2178 |
| |
2179 |
| - | |
| 2179 | + | |
2180 | 2180 |
| |
2181 | 2181 |
| |
2182 | 2182 |
| |
| |||
2221 | 2221 |
| |
2222 | 2222 |
| |
2223 | 2223 |
| |
2224 |
| - | |
2225 |
| - | |
| 2224 | + | |
| 2225 | + | |
2226 | 2226 |
| |
2227 | 2227 |
| |
2228 | 2228 |
| |
| |||
2327 | 2327 |
| |
2328 | 2328 |
| |
2329 | 2329 |
| |
2330 |
| - | |
| 2330 | + | |
2331 | 2331 |
| |
2332 | 2332 |
| |
2333 | 2333 |
| |
| |||
2341 | 2341 |
| |
2342 | 2342 |
| |
2343 | 2343 |
| |
2344 |
| - | |
2345 |
| - | |
2346 |
| - | |
| 2344 | + | |
| 2345 | + | |
| 2346 | + | |
2347 | 2347 |
| |
2348 | 2348 |
| |
2349 | 2349 |
| |
| |||
2371 | 2371 |
| |
2372 | 2372 |
| |
2373 | 2373 |
| |
2374 |
| - | |
| 2374 | + | |
2375 | 2375 |
| |
2376 |
| - | |
| 2376 | + | |
2377 | 2377 |
| |
2378 | 2378 |
| |
2379 | 2379 |
| |
2380 |
| - | |
| 2380 | + | |
2381 | 2381 |
| |
2382 | 2382 |
| |
2383 | 2383 |
| |
|
Lines changed: 41 additions & 45 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 |
| |
| |||
1132 | 1132 |
| |
1133 | 1133 |
| |
1134 | 1134 |
| |
1135 |
| - | |
1136 |
| - | |
1137 |
| - | |
1138 |
| - | |
1139 |
| - | |
| 1135 | + | |
1140 | 1136 |
| |
1141 | 1137 |
| |
1142 | 1138 |
| |
| |||
1153 | 1149 |
| |
1154 | 1150 |
| |
1155 | 1151 |
| |
1156 |
| - | |
1157 |
| - | |
1158 |
| - | |
1159 |
| - | |
| 1152 | + | |
| 1153 | + | |
| 1154 | + | |
| 1155 | + | |
1160 | 1156 |
| |
1161 |
| - | |
1162 |
| - | |
1163 |
| - | |
1164 |
| - | |
1165 |
| - | |
1166 |
| - | |
1167 |
| - | |
1168 |
| - | |
1169 |
| - | |
1170 | 1157 |
| |
1171 | 1158 |
| |
1172 | 1159 |
| |
1173 | 1160 |
| |
1174 | 1161 |
| |
1175 | 1162 |
| |
1176 | 1163 |
| |
1177 |
| - | |
| 1164 | + | |
1178 | 1165 |
| |
1179 | 1166 |
| |
1180 | 1167 |
| |
| |||
1187 | 1174 |
| |
1188 | 1175 |
| |
1189 | 1176 |
| |
1190 |
| - | |
1191 |
| - | |
1192 |
| - | |
1193 |
| - | |
| 1177 | + | |
1194 | 1178 |
| |
1195 | 1179 |
| |
1196 | 1180 |
| |
| |||
1257 | 1241 |
| |
1258 | 1242 |
| |
1259 | 1243 |
| |
1260 |
| - | |
1261 |
| - | |
| 1244 | + | |
| 1245 | + | |
| 1246 | + | |
| 1247 | + | |
| 1248 | + | |
| 1249 | + | |
1262 | 1250 |
| |
1263 | 1251 |
| |
1264 | 1252 |
| |
| |||
1281 | 1269 |
| |
1282 | 1270 |
| |
1283 | 1271 |
| |
| 1272 | + | |
1284 | 1273 |
| |
1285 | 1274 |
| |
1286 | 1275 |
| |
| |||
1313 | 1302 |
| |
1314 | 1303 |
| |
1315 | 1304 |
| |
1316 |
| - | |
1317 |
| - | |
| 1305 | + | |
| 1306 | + | |
| 1307 | + | |
| 1308 | + | |
| 1309 | + | |
| 1310 | + | |
1318 | 1311 |
| |
1319 | 1312 |
| |
1320 | 1313 |
| |
| |||
1338 | 1331 |
| |
1339 | 1332 |
| |
1340 | 1333 |
| |
1341 |
| - | |
1342 |
| - | |
| 1334 | + | |
| 1335 | + | |
| 1336 | + | |
| 1337 | + | |
1343 | 1338 |
| |
1344 | 1339 |
| |
1345 | 1340 |
| |
| |||
1366 | 1361 |
| |
1367 | 1362 |
| |
1368 | 1363 |
| |
1369 |
| - | |
1370 |
| - | |
| 1364 | + | |
| 1365 | + | |
| 1366 | + | |
1371 | 1367 |
| |
1372 | 1368 |
| |
1373 | 1369 |
| |
| |||
1385 | 1381 |
| |
1386 | 1382 |
| |
1387 | 1383 |
| |
1388 |
| - | |
1389 |
| - | |
1390 |
| - | |
1391 |
| - | |
| 1384 | + | |
1392 | 1385 |
| |
1393 | 1386 |
| |
1394 | 1387 |
| |
| |||
1399 | 1392 |
| |
1400 | 1393 |
| |
1401 | 1394 |
| |
| 1395 | + | |
1402 | 1396 |
| |
1403 | 1397 |
| |
1404 | 1398 |
| |
| |||
1429 | 1423 |
| |
1430 | 1424 |
| |
1431 | 1425 |
| |
1432 |
| - | |
1433 |
| - | |
| 1426 | + | |
| 1427 | + | |
| 1428 | + | |
| 1429 | + | |
| 1430 | + | |
| 1431 | + | |
1434 | 1432 |
| |
1435 | 1433 |
| |
1436 | 1434 |
| |
| |||
1446 | 1444 |
| |
1447 | 1445 |
| |
1448 | 1446 |
| |
1449 |
| - | |
| 1447 | + | |
1450 | 1448 |
| |
1451 | 1449 |
| |
1452 | 1450 |
| |
| |||
1468 | 1466 |
| |
1469 | 1467 |
| |
1470 | 1468 |
| |
1471 |
| - | |
1472 |
| - | |
| 1469 | + | |
| 1470 | + | |
1473 | 1471 |
| |
1474 | 1472 |
| |
1475 | 1473 |
| |
| |||
1487 | 1485 |
| |
1488 | 1486 |
| |
1489 | 1487 |
| |
1490 |
| - | |
1491 |
| - | |
1492 |
| - | |
1493 |
| - | |
| 1488 | + | |
| 1489 | + | |
1494 | 1490 |
| |
1495 | 1491 |
| |
1496 | 1492 |
| |
|
Lines changed: 7 additions & 8 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
9 | 9 |
| |
10 | 10 |
| |
11 | 11 |
| |
12 |
| - | |
| 12 | + | |
13 | 13 |
| |
14 | 14 |
| |
15 | 15 |
| |
| |||
23 | 23 |
| |
24 | 24 |
| |
25 | 25 |
| |
26 |
| - | |
27 |
| - | |
| 26 | + | |
| 27 | + | |
28 | 28 |
| |
29 | 29 |
| |
30 | 30 |
| |
| |||
33 | 33 |
| |
34 | 34 |
| |
35 | 35 |
| |
36 |
| - | |
| 36 | + | |
37 | 37 |
| |
38 | 38 |
| |
39 |
| - | |
40 |
| - | |
| 39 | + | |
41 | 40 |
| |
42 | 41 |
| |
43 | 42 |
| |
| |||
193 | 192 |
| |
194 | 193 |
| |
195 | 194 |
| |
196 |
| - | |
| 195 | + | |
197 | 196 |
| |
198 | 197 |
| |
199 | 198 |
| |
| |||
567 | 566 |
| |
568 | 567 |
| |
569 | 568 |
| |
570 |
| - | |
| 569 | + | |
571 | 570 |
| |
572 | 571 |
| |
573 | 572 |
| |
|
0 commit comments
Comments
(0)