Re: BUG #2948: default null values for not-null domains
От | Sergiy Vyshnevetskiy |
---|---|
Тема | Re: BUG #2948: default null values for not-null domains |
Дата | |
Msg-id | Pine.LNX.4.64.0702011341320.22446@uanet.vostok.net обсуждение исходный текст |
Ответ на | Re: BUG #2948: default null values for not-null domains (Tom Lane <tgl@sss.pgh.pa.us>) |
Ответы |
Re: BUG #2948: default null values for not-null domains
|
Список | pgsql-bugs |
On Wed, 31 Jan 2007, Tom Lane wrote: > Sergiy Vyshnevetskiy <serg@vostok.net> writes: >> Not at all. What's "broken" is the idea of variable as a simple piece of >> memory. It is correct for base types, but not for domains - they may have >> non-empty constructors (in C++ terminology). > > That may be, but I'm unwilling to pay the overhead for *every* variable > when most of them won't be domains. I'm inclined to extend PLpgSQL_type > to include a domain indicator and only do it the hard way when we have to. Why not add PLPGSQL_TTYPE_DOMAIN and rename PLPGSQL_TTYPE_SCALAR to PLPGSQL_TTYPE_BASE? We only use PLPGSQL_TTYPE_SCALAR in _3_ places! > [ looks at code... ] Actually, I think we already have the flag we > need: look to see if the typinput function is strict. All domains have domain_in as input function - it is NOT strict. Anyway, as we assign a value to a domain variable we must check constraints - that's the whole point of domains. Even when the value is "null". Hack attached. Any reasons not to call it a bugfix?
В списке pgsql-bugs по дате отправления: