Re: proposal: fix corner use case of variadic fuctions usage
От | Pavel Stehule |
---|---|
Тема | Re: proposal: fix corner use case of variadic fuctions usage |
Дата | |
Msg-id | CAFj8pRBbK15fBNVdWB_r6d5JRxm3i4QEHxrb7dsvLyGdJBp+ig@mail.gmail.com обсуждение исходный текст |
Ответ на | Re: proposal: fix corner use case of variadic fuctions usage (Tom Lane <tgl@sss.pgh.pa.us>) |
Ответы |
Re: proposal: fix corner use case of variadic fuctions usage
|
Список | pgsql-hackers |
Hello I sent a updated patch, but still I am not sure in one topic > Also, I'm not sure that it's appropriate to throw an error if the given > argument is null or not an array. Previous versions did not throw an > error in such cases. Perhaps just fall back to behaving as if it > weren't marked VARIADIC? You could possibly make an argument for > not-an-array-type being an error, since that's a statically inconsistent > type situation, but I really don't like a null value being an error. > A function could easily receive a null value for an array parameter > that it wants to pass on to format() or concat(). what should be result of concat(variadic NULL::int[]) I enabled this use case, but what should be result? usually concat() function needs one parameter as minimum and then returns empty string or some string. But concat(variadic NULL::int[]) is +/- zero parameters call. A result should be empty string or NULL? I am vote returning NULL and I have a only one argument If concat(variadic NULL::int[]) returns NULL, then it returns different "value" than concat(variadic '{}'::int[]) what is correct. Opposite behave returns empty string in both variants and It is some when I don't feel well. Regards Pavel
В списке pgsql-hackers по дате отправления: