mirror of
https://github.com/postgres/postgres.git
synced 2025-07-14 08:21:07 +03:00
Fix a bunch of problems with domains by making them use special input functions
that apply the necessary domain constraint checks immediately. This fixes cases where domain constraints went unchecked for statement parameters, PL function local variables and results, etc. We can also eliminate existing special cases for domains in places that had gotten it right, eg COPY. Also, allow domains over domains (base of a domain is another domain type). This almost worked before, but was disallowed because the original patch hadn't gotten it quite right.
This commit is contained in:
@ -7,7 +7,7 @@
|
||||
* Portions Copyright (c) 1996-2006, PostgreSQL Global Development Group
|
||||
* Portions Copyright (c) 1994, Regents of the University of California
|
||||
*
|
||||
* $PostgreSQL: pgsql/src/include/utils/builtins.h,v 1.277 2006/03/10 20:15:27 neilc Exp $
|
||||
* $PostgreSQL: pgsql/src/include/utils/builtins.h,v 1.278 2006/04/05 22:11:57 tgl Exp $
|
||||
*
|
||||
*-------------------------------------------------------------------------
|
||||
*/
|
||||
@ -99,6 +99,10 @@ extern Datum i4tochar(PG_FUNCTION_ARGS);
|
||||
extern Datum text_char(PG_FUNCTION_ARGS);
|
||||
extern Datum char_text(PG_FUNCTION_ARGS);
|
||||
|
||||
/* domains.c */
|
||||
extern Datum domain_in(PG_FUNCTION_ARGS);
|
||||
extern Datum domain_recv(PG_FUNCTION_ARGS);
|
||||
|
||||
/* int.c */
|
||||
extern Datum int2in(PG_FUNCTION_ARGS);
|
||||
extern Datum int2out(PG_FUNCTION_ARGS);
|
||||
|
Reference in New Issue
Block a user