forked frompostgres/postgres
- Notifications
You must be signed in to change notification settings - Fork6
Commit3db6524
committed
Mark some more I/O-conversion-invoking functions as stable not volatile.
When written, textanycat, anytextcat, quote_literal, and quote_nullablewere marked volatile, because they could invoke arbitrary type-specificoutput functions as part of casting their anyelement arguments to text.Since then, we have defined a project policy that I/O functions must notbe volatile, as per commitaab353a.So these functions can safely be downgraded to stable. Most of the timethis makes no difference since they'll get inlined anyway, but as notedby Andrew Dunstan, there are cases where the volatile marking preventsoptimizations that the planner does before function inlining. (I thinkI might have overlooked these functions in the earlier commit on thegrounds that inlining would make it moot, but not so --- tgl)This change results in a change in the expected output of the jsonregression tests, because the planner can now flatten a sub-selectthat it failed to before. The old output is preferable, but gettingthat back will require some as-yet-unfinished work on RowExpr handling.Marti Raudsepp1 parentc138979 commit3db6524
File tree
3 files changed
+28
-28
lines changed- src
- include/catalog
- test/regress/expected
3 files changed
+28
-28
lines changedLines changed: 1 addition & 1 deletion
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
53 | 53 |
| |
54 | 54 |
| |
55 | 55 |
| |
56 |
| - | |
| 56 | + | |
57 | 57 |
| |
58 | 58 |
|
Lines changed: 4 additions & 4 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
2273 | 2273 |
| |
2274 | 2274 |
| |
2275 | 2275 |
| |
2276 |
| - | |
| 2276 | + | |
2277 | 2277 |
| |
2278 | 2278 |
| |
2279 | 2279 |
| |
2280 |
| - | |
| 2280 | + | |
2281 | 2281 |
| |
2282 | 2282 |
| |
2283 | 2283 |
| |
| |||
2753 | 2753 |
| |
2754 | 2754 |
| |
2755 | 2755 |
| |
2756 |
| - | |
2757 |
| - | |
| 2756 | + | |
| 2757 | + | |
2758 | 2758 |
| |
2759 | 2759 |
| |
2760 | 2760 |
| |
|
Lines changed: 23 additions & 23 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
284 | 284 |
| |
285 | 285 |
| |
286 | 286 |
| |
287 |
| - | |
288 |
| - | |
289 |
| - | |
| 287 | + | |
| 288 | + | |
| 289 | + | |
290 | 290 |
| |
291 | 291 |
| |
292 | 292 |
| |
| |||
315 | 315 |
| |
316 | 316 |
| |
317 | 317 |
| |
318 |
| - | |
319 |
| - | |
320 |
| - | |
321 |
| - | |
322 |
| - | |
323 |
| - | |
| 318 | + | |
| 319 | + | |
| 320 | + | |
| 321 | + | |
| 322 | + | |
| 323 | + | |
324 | 324 |
| |
325 | 325 |
| |
326 | 326 |
| |
| |||
330 | 330 |
| |
331 | 331 |
| |
332 | 332 |
| |
333 |
| - | |
334 |
| - | |
335 |
| - | |
336 |
| - | |
337 |
| - | |
338 |
| - | |
339 |
| - | |
340 |
| - | |
341 |
| - | |
342 |
| - | |
343 |
| - | |
344 |
| - | |
345 |
| - | |
346 |
| - | |
| 333 | + | |
| 334 | + | |
| 335 | + | |
| 336 | + | |
| 337 | + | |
| 338 | + | |
| 339 | + | |
| 340 | + | |
| 341 | + | |
| 342 | + | |
| 343 | + | |
| 344 | + | |
| 345 | + | |
| 346 | + | |
347 | 347 |
| |
348 | 348 |
| |
349 | 349 |
| |
|
0 commit comments
Comments
(0)