aboutsummaryrefslogtreecommitdiff
path: root/src/backend/utils/adt/numeric.c
diff options
context:
space:
mode:
authorTom Lane <tgl@sss.pgh.pa.us>2010-07-29 20:09:25 +0000
committerTom Lane <tgl@sss.pgh.pa.us>2010-07-29 20:09:25 +0000
commitaab353a60b95aadc00f81da0c6d99bde696c4b75 (patch)
treeb083749f696c3ba9f892a49e6eb175f135ec8516 /src/backend/utils/adt/numeric.c
parent66424a284879b5e0d456a1c7c1ec06b0b918a798 (diff)
downloadpostgresql-aab353a60b95aadc00f81da0c6d99bde696c4b75.tar.gz
postgresql-aab353a60b95aadc00f81da0c6d99bde696c4b75.zip
Clean up some inconsistencies in the volatility marking of various I/O
related functions. Per today's discussion, we will henceforth assume that datatype I/O functions are either stable or immutable, never volatile. (This implies in particular that domain CHECK constraint expressions shouldn't be volatile, since domain_in executes them.) In turn, functions that execute the I/O functions of arbitrary datatypes should always be labeled stable. This affects the labeling of array_to_string, which was unsafely marked immutable, and record_in, record_out, record_recv, record_send, domain_in, domain_recv, which were over-conservatively marked volatile. The array I/O functions were already marked stable, which is correct per this policy but would have been wrong if we maintained domain_in as volatile. Back-patch to 9.0, along with an earlier fix to correctly mark cash_in and cash_out as stable not immutable (since they depend on lc_monetary). No catversion bump --- the implications of this are not currently severe enough to justify a forced initdb.
Diffstat (limited to 'src/backend/utils/adt/numeric.c')
0 files changed, 0 insertions, 0 deletions