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  (Tom Lane <tgl@sss.pgh.pa.us>)
Список 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 по дате отправления:

Предыдущее
От: Peter Eisentraut
Дата:
Сообщение: Re: BUG #2948: default null values for not-null domains
Следующее
От: Tom Lane
Дата:
Сообщение: Re: BUG #2948: default null values for not-null domains