Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commitaab353a

Browse files
committed
Clean up some inconsistencies in the volatility marking of various I/O
related functions. Per today's discussion, we will henceforth assumethat datatype I/O functions are either stable or immutable, never volatile.(This implies in particular that domain CHECK constraint expressions shouldn'tbe volatile, since domain_in executes them.) In turn, functions that executethe I/O functions of arbitrary datatypes should always be labeled stable.This affects the labeling of array_to_string, which was unsafely markedimmutable, 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 correctper this policy but would have been wrong if we maintained domain_inas volatile.Back-patch to 9.0, along with an earlier fix to correctly mark cash_inand cash_out as stable not immutable (since they depend on lc_monetary).No catversion bump --- the implications of this are not currentlysevere enough to justify a forced initdb.
1 parent66424a2 commitaab353a

File tree

1 file changed

+8
-8
lines changed

1 file changed

+8
-8
lines changed

‎src/include/catalog/pg_proc.h

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
* Portions Copyright (c) 1996-2010, PostgreSQL Global Development Group
88
* Portions Copyright (c) 1994, Regents of the University of California
99
*
10-
* $PostgreSQL: pgsql/src/include/catalog/pg_proc.h,v 1.572 2010/07/16 02:15:54 tgl Exp $
10+
* $PostgreSQL: pgsql/src/include/catalog/pg_proc.h,v 1.573 2010/07/29 20:09:25 tgl Exp $
1111
*
1212
* NOTES
1313
* The script catalog/genbki.pl reads this file and generates .bki
@@ -1020,7 +1020,7 @@ DATA(insert OID = 383 ( array_cat PGNSP PGUID 12 1 0 0 f f f f f i 2 0 2277
10201020
DESCR("concatenate two arrays");
10211021
DATA(insertOID=394 (string_to_arrayPGNSPPGUID12100ffftfi201009"25 25"_null__null__null__null_text_to_array_null__null__null_ ));
10221022
DESCR("split delimited text into text[]");
1023-
DATA(insertOID=395 (array_to_stringPGNSPPGUID12100ffftfi2025"2277 25"_null__null__null__null_array_to_text_null__null__null_ ));
1023+
DATA(insertOID=395 (array_to_stringPGNSPPGUID12100ffftfs2025"2277 25"_null__null__null__null_array_to_text_null__null__null_ ));
10241024
DESCR("concatenate array elements, using delimiter, into text");
10251025
DATA(insertOID=515 (array_largerPGNSPPGUID12100ffftfi202277"2277 2277"_null__null__null__null_array_larger_null__null__null_ ));
10261026
DESCR("larger of two");
@@ -3754,9 +3754,9 @@ DESCR("file path of relation");
37543754

37553755
DATA(insertOID=2316 (postgresql_fdw_validatorPGNSPPGUID12100ffftfi2016"1009 26"_null__null__null__null_postgresql_fdw_validator_null__null__null_));
37563756

3757-
DATA(insertOID=2290 (record_inPGNSPPGUID12100ffftfv302249"2275 26 23"_null__null__null__null_record_in_null__null__null_ ));
3757+
DATA(insertOID=2290 (record_inPGNSPPGUID12100ffftfs302249"2275 26 23"_null__null__null__null_record_in_null__null__null_ ));
37583758
DESCR("I/O");
3759-
DATA(insertOID=2291 (record_outPGNSPPGUID12100ffftfv102275"2249"_null__null__null__null_record_out_null__null__null_ ));
3759+
DATA(insertOID=2291 (record_outPGNSPPGUID12100ffftfs102275"2249"_null__null__null__null_record_out_null__null__null_ ));
37603760
DESCR("I/O");
37613761
DATA(insertOID=2292 (cstring_inPGNSPPGUID12100ffftfi102275"2275"_null__null__null__null_cstring_in_null__null__null_ ));
37623762
DESCR("I/O");
@@ -3798,9 +3798,9 @@ DATA(insert OID = 2398 ( shell_inPGNSP PGUID 12 1 0 0 f f f f f i 1 0 2282 "
37983798
DESCR("I/O");
37993799
DATA(insertOID=2399 (shell_outPGNSPPGUID12100ffftfi102275"2282"_null__null__null__null_shell_out_null__null__null_ ));
38003800
DESCR("I/O");
3801-
DATA(insertOID=2597 (domain_inPGNSPPGUID12100fffffv302276"2275 26 23"_null__null__null__null_domain_in_null__null__null_ ));
3801+
DATA(insertOID=2597 (domain_inPGNSPPGUID12100fffffs302276"2275 26 23"_null__null__null__null_domain_in_null__null__null_ ));
38023802
DESCR("I/O");
3803-
DATA(insertOID=2598 (domain_recvPGNSPPGUID12100fffffv302276"2281 26 23"_null__null__null__null_domain_recv_null__null__null_ ));
3803+
DATA(insertOID=2598 (domain_recvPGNSPPGUID12100fffffs302276"2281 26 23"_null__null__null__null_domain_recv_null__null__null_ ));
38043804
DESCR("I/O");
38053805
DATA(insertOID=2777 (anynonarray_inPGNSPPGUID12100ffftfi102776"2275"_null__null__null__null_anynonarray_in_null__null__null_ ));
38063806
DESCR("I/O");
@@ -3911,9 +3911,9 @@ DATA(insert OID = 2400 ( array_recv PGNSP PGUID 12 1 0 0 f f f t f s 3 0 22
39113911
DESCR("I/O");
39123912
DATA(insertOID=2401 (array_sendPGNSPPGUID12100ffftfs1017"2277"_null__null__null__null_array_send_null__null__null_ ));
39133913
DESCR("I/O");
3914-
DATA(insertOID=2402 (record_recvPGNSPPGUID12100ffftfv302249"2281 26 23"_null__null__null__null_record_recv_null__null__null_ ));
3914+
DATA(insertOID=2402 (record_recvPGNSPPGUID12100ffftfs302249"2281 26 23"_null__null__null__null_record_recv_null__null__null_ ));
39153915
DESCR("I/O");
3916-
DATA(insertOID=2403 (record_sendPGNSPPGUID12100ffftfv1017"2249"_null__null__null__null_record_send_null__null__null_ ));
3916+
DATA(insertOID=2403 (record_sendPGNSPPGUID12100ffftfs1017"2249"_null__null__null__null_record_send_null__null__null_ ));
39173917
DESCR("I/O");
39183918
DATA(insertOID=2404 (int2recvPGNSPPGUID12100ffftfi1021"2281"_null__null__null__null_int2recv_null__null__null_ ));
39193919
DESCR("I/O");

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp