DEFAULT of domain ignored in plpgsql (8.4.1)
| От | Florian G. Pflug |
|---|---|
| Тема | DEFAULT of domain ignored in plpgsql (8.4.1) |
| Дата | |
| Msg-id | 4B05F992.2060001@phlo.org обсуждение исходный текст |
| Ответы |
Re: DEFAULT of domain ignored in plpgsql (8.4.1)
Re: DEFAULT of domain ignored in plpgsql (8.4.1) |
| Список | pgsql-hackers |
Hi It seems that pl/pgsql ignores the DEFAULT value of domains for local variables. With the following definitions in place create domain myint as int default 0; create or replace function myint() returns myint as $body$ declare v_result myint; begin return v_result; end; $body$ language plpgsql immutable; issuing select myint(); returns NULL, not 0 on postgres 8.4.1 If the line v_result myint; is changes to v_result myint default 0; than 0 is returned as expected. I've tried to create a patch, but didn't see how I'd convert the result from get_typedefault() (A Node*, presumeably the parsetree corresponding to the default expression?) into a plan that I could store in a PLpgSQL_expr. I guess I'd need something like SPI_prepare_plan that takes a parse tree instead of a query string. Or am I on a completely wrong track there? While trying to cook up a patch I've also stumbled over what I perceive as a bug relating to DOMAINS and column DEFAULTs. I'll write that up in a second E-Mail to avoid confusion. best regards, Florian Pflug
В списке pgsql-hackers по дате отправления: