Re: get_fn_expr_variadic considered harmful
От | Robert Haas |
---|---|
Тема | Re: get_fn_expr_variadic considered harmful |
Дата | |
Msg-id | CA+TgmoYem8zAXwKmwcUr8NVe5hjdZmS6xJA4jF-SmPkXxVy=EA@mail.gmail.com обсуждение исходный текст |
Ответ на | get_fn_expr_variadic considered harmful (Tom Lane <tgl@sss.pgh.pa.us>) |
Ответы |
Re: get_fn_expr_variadic considered harmful
|
Список | pgsql-hackers |
On Tue, Apr 1, 2014 at 12:52 PM, Tom Lane <tgl@sss.pgh.pa.us> wrote: > In bug #9817 there's a complaint that the planner fails to consider > these expressions equivalent: > foo('a'::text, 'b'::text) > foo(variadic array['a'::text, 'b'::text]) > when foo() is declared as taking variadic text[]. My first reaction to this was "who cares? after all, the user should just write the expression the same way both times and then they won't have this problem". But after going and looking at the bug report I see that the user wrote it the first way consistently, but pg_dump blithely rewrote it to the second way. I'm disinclined to view that as a planner problem; it seems to me to be a pg_dump or ruleutils bug.If those two things don't have the same parse representation,then pg_dump has no business treating them as equivalent - even if we were to put enough smarts into the planner to paper over that non-equivalence. -- Robert Haas EnterpriseDB: http://www.enterprisedb.com The Enterprise PostgreSQL Company
В списке pgsql-hackers по дате отправления: