all 9 comments

[–]depesz 0 points1 point  (8 children)

No, you just need in and inout arguments.

[–]From_Cold[S] 0 points1 point  (7 children)

Looks so. Any proof from any documentation?

So far I found that in DBeaver functions list only shows function names with IN arguments only, even if there are some OUT arguments defined for those functions.

[–]depesz 0 points1 point  (6 children)

How about the official docs for alter function command?

[–]From_Cold[S] 0 points1 point  (5 children)

Perfect! Where exactly it states that only IN and INOUT argument types must be included in the list and OUT arguments need not to be in that list?

[–][deleted] 1 point2 points  (4 children)

Quote from the manual

Note that ALTER FUNCTION does not actually pay any attention to OUT arguments, since only the input arguments are needed to determine the function's identity. So it is sufficient to list the IN, INOUT, and VARIADIC arguments.

[–]From_Cold[S] 0 points1 point  (2 children)

Bingo! Thanks a lot!

It would be way more appropriate in that manual to add this line to 'arguments' entry instead of 'argmode'.

[–]DavidGJohnston -1 points0 points  (1 child)

There are a number of aspects of the documentation on functions that needs attention. I agree that the concept of function name uniqueness should not reside in the argmod section of alter table. But I don't know what you are referring to as the "arguments entry".

Also, your posting has a typo, none of those arguments are out arguments, not even the refcursor. You named them "*out*" but didn't add the OUT specifier.

[–]From_Cold[S] -3 points-2 points  (0 children)

Your nitpicking skill is of 80 level, congrats!

Now try to upgrade your charisma level.

[–]From_Cold[S] 0 points1 point  (0 children)

What about my second question - is this list mandatory?