- Notifications
You must be signed in to change notification settings - Fork5
Commit543d22f
committed
Prevent invoking I/O conversion casts via functional/attribute notation.
PG 8.4 added a built-in feature for casting pretty much any data type tostring types (text, varchar, etc). We allowed this to work in any of thehistorically-allowed syntaxes: CAST(x AS text), x::text, text(x), orx.text. However, multiple complaints have shown that it's too easy toinvoke such casts unintentionally in the latter two styles, particularlyfield selection. To cure the problem with the narrowest possible changeof behavior, disallow use of I/O conversion casts from composite types tostring types via functional/attribute syntax. The new functionality isstill available via cast syntax.In passing, document the equivalence of functional and attribute syntaxin a more visible place.1 parente43fb60 commit543d22f
File tree
6 files changed
+126
-11
lines changed- doc/src/sgml
- ref
- src
- backend/parser
- test/regress
- expected
- sql
6 files changed
+126
-11
lines changedLines changed: 21 additions & 6 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
38 | 38 |
| |
39 | 39 |
| |
40 | 40 |
| |
41 |
| - | |
| 41 | + | |
42 | 42 |
| |
43 | 43 |
| |
44 | 44 |
| |
| |||
64 | 64 |
| |
65 | 65 |
| |
66 | 66 |
| |
67 |
| - | |
| 67 | + | |
68 | 68 |
| |
69 | 69 |
| |
70 |
| - | |
| 70 | + | |
| 71 | + | |
| 72 | + | |
| 73 | + | |
71 | 74 |
| |
72 | 75 |
| |
73 | 76 |
| |
| |||
218 | 221 |
| |
219 | 222 |
| |
220 | 223 |
| |
221 |
| - | |
| 224 | + | |
222 | 225 |
| |
223 | 226 |
| |
224 | 227 |
| |
| |||
278 | 281 |
| |
279 | 282 |
| |
280 | 283 |
| |
281 |
| - | |
| 284 | + | |
282 | 285 |
| |
283 |
| - | |
| 286 | + | |
284 | 287 |
| |
285 | 288 |
| |
286 | 289 |
| |
| |||
366 | 369 |
| |
367 | 370 |
| |
368 | 371 |
| |
| 372 | + | |
| 373 | + | |
| 374 | + | |
| 375 | + | |
| 376 | + | |
| 377 | + | |
| 378 | + | |
| 379 | + | |
| 380 | + | |
| 381 | + | |
| 382 | + | |
| 383 | + | |
369 | 384 |
| |
370 | 385 |
| |
371 | 386 |
| |
|
Lines changed: 13 additions & 0 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
1522 | 1522 |
| |
1523 | 1523 |
| |
1524 | 1524 |
| |
| 1525 | + | |
| 1526 | + | |
| 1527 | + | |
| 1528 | + | |
| 1529 | + | |
| 1530 | + | |
| 1531 | + | |
| 1532 | + | |
| 1533 | + | |
| 1534 | + | |
| 1535 | + | |
| 1536 | + | |
| 1537 | + | |
1525 | 1538 |
| |
1526 | 1539 |
| |
1527 | 1540 |
| |
|
Lines changed: 7 additions & 1 deletion
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
271 | 271 |
| |
272 | 272 |
| |
273 | 273 |
| |
274 |
| - | |
| 274 | + | |
275 | 275 |
| |
276 | 276 |
| |
277 | 277 |
| |
| |||
492 | 492 |
| |
493 | 493 |
| |
494 | 494 |
| |
| 495 | + | |
| 496 | + | |
| 497 | + | |
| 498 | + | |
| 499 | + | |
| 500 | + | |
495 | 501 |
| |
496 | 502 |
| |
497 | 503 |
| |
|
Lines changed: 24 additions & 4 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
985 | 985 |
| |
986 | 986 |
| |
987 | 987 |
| |
988 |
| - | |
989 |
| - | |
| 988 | + | |
| 989 | + | |
| 990 | + | |
| 991 | + | |
| 992 | + | |
| 993 | + | |
| 994 | + | |
990 | 995 |
| |
991 | 996 |
| |
992 | 997 |
| |
| |||
1017 | 1022 |
| |
1018 | 1023 |
| |
1019 | 1024 |
| |
1020 |
| - | |
1021 |
| - | |
| 1025 | + | |
| 1026 | + | |
| 1027 | + | |
| 1028 | + | |
| 1029 | + | |
| 1030 | + | |
| 1031 | + | |
| 1032 | + | |
| 1033 | + | |
| 1034 | + | |
| 1035 | + | |
| 1036 | + | |
| 1037 | + | |
| 1038 | + | |
| 1039 | + | |
| 1040 | + | |
| 1041 | + | |
1022 | 1042 |
| |
1023 | 1043 |
| |
1024 | 1044 |
| |
|
Lines changed: 46 additions & 0 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
324 | 324 |
| |
325 | 325 |
| |
326 | 326 |
| |
| 327 | + | |
| 328 | + | |
| 329 | + | |
| 330 | + | |
| 331 | + | |
| 332 | + | |
| 333 | + | |
| 334 | + | |
| 335 | + | |
| 336 | + | |
| 337 | + | |
| 338 | + | |
| 339 | + | |
| 340 | + | |
| 341 | + | |
| 342 | + | |
| 343 | + | |
| 344 | + | |
| 345 | + | |
| 346 | + | |
| 347 | + | |
| 348 | + | |
| 349 | + | |
| 350 | + | |
| 351 | + | |
| 352 | + | |
| 353 | + | |
| 354 | + | |
| 355 | + | |
| 356 | + | |
| 357 | + | |
| 358 | + | |
| 359 | + | |
| 360 | + | |
| 361 | + | |
| 362 | + | |
| 363 | + | |
| 364 | + | |
| 365 | + | |
| 366 | + | |
| 367 | + | |
| 368 | + | |
| 369 | + | |
| 370 | + | |
| 371 | + | |
| 372 | + |
Lines changed: 15 additions & 0 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
157 | 157 |
| |
158 | 158 |
| |
159 | 159 |
| |
| 160 | + | |
| 161 | + | |
| 162 | + | |
| 163 | + | |
| 164 | + | |
| 165 | + | |
| 166 | + | |
| 167 | + | |
| 168 | + | |
| 169 | + | |
| 170 | + | |
| 171 | + | |
| 172 | + | |
| 173 | + | |
| 174 | + |
0 commit comments
Comments
(0)