On 4/15/22 15:18, David G. Johnston wrote:
but have not found a combination of name/args for genome_threshold_mono(text,text,double precision)
Per the fine documentation:
\df[anptwS+] [ pattern [ arg_pattern ... ] ]
So the correct formulation is:
\df genome_threshold_mono text text 'double precision'
You need to quote the fourth argument to protect the embedded space as a character and not an argument separator.
David J.
Wow. An old bad habit of using parens, I guess?
Do you consider this correct behaviour?
barnard=# \df public.genome_threshold_mono text,text
List of functions
Schema | Name | Result data type | Argument data types | Type
--------+-----------------------+------------------+--------------------------------------------------------+------
public | genome_threshold_mono | uuid | pbs_name text, genome_name text | func
public | genome_threshold_mono | uuid | pbs_name text, genome_name text, conf double precision | func
(2 rows)
I cannot reproduce that on head:
\df test_function text
List of functions
Schema | Name | Result data type | Argument data types | Type
--------+---------------+------------------+------------------------------+------
public | test_function | text | text, double precision | func
public | test_function | text | text, text, double precision | func
(2 rows)
\df test_function text,text
List of functions
Schema | Name | Result data type | Argument data types | Type
--------+------+------------------+---------------------+------
(0 rows)
i.e, is it automatically wildcarded?
No, easy enough to prove, just mis-spell "text" and "text' in the first example
And then, I dare say, this is just plain inconsistent, vis parens
barnard=# \sf public.genome_threshold_mono text,text
ERROR: invalid name syntax
So what? \df and \sf have different goals in life; it should be expected they behave differently. Specifically, \sf doesn't use patterns while \df does.
David J.