Re: Wrong parameter names for make_interval (Postgres 13)

From: Pavel Stehule <pavel(dot)stehule(at)gmail(dot)com>
To: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Cc: Thomas Kellerer <shammat(at)gmx(dot)net>, Pg Docs <pgsql-docs(at)lists(dot)postgresql(dot)org>
Subject: Re: Wrong parameter names for make_interval (Postgres 13)
Date: 2020-10-05 16:56:33
Message-ID: CAFj8pRAhy3Wxxg9rivQr97mRkqwBQZHrr-b0u18cswe0=zgZYw@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-docs

po 5. 10. 2020 v 18:48 odesílatel Pavel Stehule <pavel(dot)stehule(at)gmail(dot)com>
napsal:

>
>
> po 5. 10. 2020 v 17:53 odesílatel Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> napsal:
>
>> Pavel Stehule <pavel(dot)stehule(at)gmail(dot)com> writes:
>> > po 5. 10. 2020 v 15:56 odesílatel Thomas Kellerer <shammat(at)gmx(dot)net>
>> napsal:
>> >> So instead of
>> >> make_interval ( [ year int [, month int [, week int [, day int [, hour
>> >> int [, min int [, sec double precision ]]]]]]] )
>> >> it should be
>> >> make_interval ( [ years int [, months int [, weeks int [, days int
>> >> [,hours int [, mins int [, secs double precision ]]]]]]] )
>>
>> Right, fixed.
>>
>> > this syntax is not correct too
>> > It should be
>> > make_interval( years int default 0, month int default 0, days int
>> > default 0, hours int default 0, secs double precision default 0)
>>
>> IIRC, I intentionally changed that in v13; the existence of the defaults
>> is sufficiently covered by the text "... fields, each of which can default
>> to zero". I think that was partly motivated by trying to get the function
>> signature to fit into limited space. The final docs-table design we ended
>> up with might allow undoing it, but I don't see any real reason to. The
>> other way is more verbose and not any clearer.
>>
>
> I don't understand,
>
> the syntax [ a [, b]] means
>
> so a and b are optional, but b can be used only when a is used. But for
> make_interval I can use "months" arguments without specification of "years"
> argument.
>
> I don't know the correct BNF for arguments with default values, but using
> this doesn't look correct.
>

I forgot the behavior of positional arguments. So this syntax is correct.
I am sorry for the noise.

Regards

Pavel

> Regards
>
> Pavel
>
>
>
>> I spent a little bit of time scanning for other discrepancies between
>> func.sgml and pg_proc.proargnames, and found several, mostly though
>> not exclusively in the JSON functions. In these other cases, though,
>> I think there might be a good argument for making pg_proc fit the docs
>> not the other way around. In the JSON functions, for example, pg_proc
>> randomly has some functions calling the main JSON[B] input "target"
>> while others call it "from_json" or "json_in". I'm not real sure
>> which of those names is preferable, but inconsistency is not preferable.
>>
>> regards, tom lane
>>
>

In response to

Browse pgsql-docs by date

  From Date Subject
Next Message Bruce Momjian 2020-10-05 20:28:28 Re: Please provide examples of rows from
Previous Message Pavel Stehule 2020-10-05 16:48:14 Re: Wrong parameter names for make_interval (Postgres 13)