Re: Function sugnature with default parameter

Поиск
Список
Период
Сортировка
От Pavel Stehule
Тема Re: Function sugnature with default parameter
Дата
Msg-id CAFj8pRCpjxOZ+MDvwcThCom6as42ovpGXsu89_tL0ciq3F6_Xw@mail.gmail.com
обсуждение исходный текст
Ответ на Re: Function sugnature with default parameter  (Andrew Dunstan <andrew@dunslane.net>)
Список pgsql-hackers



2014-02-26 20:36 GMT+01:00 Andrew Dunstan <andrew@dunslane.net>:

On 02/26/2014 01:51 PM, Josh Berkus wrote:
On 02/26/2014 10:15 AM, salah jubeh wrote:
I think, there is a difference between optional parameters and default parameter values. So, my suggestion would be something like this.
SELECT default_test(1,3, DEFAULT); -- match function number 1

SELECT default_test(1,3); -- match the function number 2

SELECT default_test(1); -- ERROR
Regards
This would break at least 4 major applications which I personally have
worked on, and the benefit to users is unclear at best.

One of the main reasons to *have* default parameters is to allow adding
new parameters to existing functions without breaking old application
code.  So, -1 from me.


me too.

The OP's statement that there is a difference between default params and optional params doesn't compute. The only way params are optional is that they have a default. Treating these as somehow independent is a nonsense.

Furthermore, if we dropped function 2, then

    select default_test(1,3)

would be a call to function 1. Then, if we followed this proposal, creating function 2 would magically steer that call to function 2 instead. Talk about a footgun, and possibly a security risk too.


more overloaded functions with similar type signature is just dangerous and bad practice.

We would to disallow it.

Regards

Pavel
 

cheers

andrew



--
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers

В списке pgsql-hackers по дате отправления:

Предыдущее
От: Merlin Moncure
Дата:
Сообщение: Re: jsonb and nested hstore
Следующее
От: David Johnston
Дата:
Сообщение: Re: Simplified VALUES parameters