- Notifications
You must be signed in to change notification settings - Fork4.9k
Commit219dfae
committed
Make plpgsql provide the typmods for its variables to the main parser.
Historically we didn't do this, even though we had the information, becauseplpgsql passed its Params via SPI APIs that only include type OIDs nottypmods. Now that plpgsql uses parser callbacks to create Params, it'seasy to insert the right typmod. This should generally result in lowersurprise factors, because a plpgsql variable that is declared with a typmodwill now work more like a table column with the same typmod. In particularit's the "right" way to fix bug #6020, in which plpgsql's attempt to returnan anonymous record type is defeated by stricter record-type matchingchecks that were added in 9.0. However, it's not impossible that thiscould result in subtle behavioral changes that could break somebody'sexisting plpgsql code, so I'm afraid to back-patch this change intoreleased branches. In those branches we'll have to lobotomize therecord-type checks instead.1 parentfae625e commit219dfae
3 files changed
+64
-21
lines changedLines changed: 5 additions & 3 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
1267 | 1267 |
| |
1268 | 1268 |
| |
1269 | 1269 |
| |
1270 |
| - | |
1271 |
| - | |
1272 |
| - | |
| 1270 | + | |
| 1271 | + | |
| 1272 | + | |
| 1273 | + | |
| 1274 | + | |
1273 | 1275 |
| |
1274 | 1276 |
| |
1275 | 1277 |
| |
|
Lines changed: 56 additions & 16 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
4307 | 4307 |
| |
4308 | 4308 |
| |
4309 | 4309 |
| |
4310 |
| - | |
| 4310 | + | |
| 4311 | + | |
| 4312 | + | |
| 4313 | + | |
4311 | 4314 |
| |
4312 |
| - | |
4313 |
| - | |
4314 |
| - | |
| 4315 | + | |
| 4316 | + | |
| 4317 | + | |
| 4318 | + | |
4315 | 4319 |
| |
4316 |
| - | |
4317 |
| - | |
4318 | 4320 |
| |
4319 | 4321 |
| |
4320 | 4322 |
| |
4321 | 4323 |
| |
4322 | 4324 |
| |
4323 | 4325 |
| |
4324 |
| - | |
| 4326 | + | |
| 4327 | + | |
| 4328 | + | |
4325 | 4329 |
| |
4326 | 4330 |
| |
4327 | 4331 |
| |
4328 | 4332 |
| |
| 4333 | + | |
| 4334 | + | |
| 4335 | + | |
| 4336 | + | |
| 4337 | + | |
| 4338 | + | |
| 4339 | + | |
| 4340 | + | |
| 4341 | + | |
| 4342 | + | |
| 4343 | + | |
| 4344 | + | |
| 4345 | + | |
| 4346 | + | |
| 4347 | + | |
4329 | 4348 |
| |
4330 |
| - | |
4331 |
| - | |
4332 |
| - | |
| 4349 | + | |
| 4350 | + | |
| 4351 | + | |
| 4352 | + | |
| 4353 | + | |
| 4354 | + | |
| 4355 | + | |
| 4356 | + | |
| 4357 | + | |
| 4358 | + | |
| 4359 | + | |
| 4360 | + | |
| 4361 | + | |
| 4362 | + | |
| 4363 | + | |
| 4364 | + | |
| 4365 | + | |
| 4366 | + | |
4333 | 4367 |
| |
4334 | 4368 |
| |
4335 | 4369 |
| |
| |||
4350 | 4384 |
| |
4351 | 4385 |
| |
4352 | 4386 |
| |
4353 |
| - | |
| 4387 | + | |
| 4388 | + | |
| 4389 | + | |
| 4390 | + | |
| 4391 | + | |
| 4392 | + | |
| 4393 | + | |
4354 | 4394 |
| |
4355 |
| - | |
| 4395 | + | |
4356 | 4396 |
| |
4357 |
| - | |
| 4397 | + | |
4358 | 4398 |
| |
4359 | 4399 |
| |
4360 | 4400 |
| |
4361 | 4401 |
| |
4362 | 4402 |
| |
4363 |
| - | |
| 4403 | + | |
| 4404 | + | |
| 4405 | + | |
4364 | 4406 |
| |
4365 | 4407 |
| |
4366 |
| - | |
4367 |
| - | |
4368 | 4408 |
| |
4369 | 4409 |
| |
4370 | 4410 |
| |
|
Lines changed: 3 additions & 2 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
905 | 905 |
| |
906 | 906 |
| |
907 | 907 |
| |
908 |
| - | |
909 |
| - | |
| 908 | + | |
| 909 | + | |
| 910 | + | |
910 | 911 |
| |
911 | 912 |
| |
912 | 913 |
| |
|
0 commit comments
Comments
(0)