Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

Commit b6e132d

Browse filesBrowse files
committed
In psql, restore old behavior of Query_for_list_of_functions.
Historically, tab completion for functions has offered the names of aggregates as well. This is essential in at least one context, namely GRANT/REVOKE, because there is no GRANT ON AGGREGATE syntax. There are other cases where a command that nominally is for functions will allow aggregates as well, though not all do. Commit fd1a421 changed this query to disallow aggregates, but that doesn't seem to have been thought through very carefully. Change it to allow aggregates (but still ignore procedures). We might at some point tighten this up, but it'd require sorting through all the uses of this query to see which ones should offer aggregate names and which shouldn't. Given the lack of field complaints about the historical laxity here, that's work I'm not eager to do right now. Discussion: https://postgr.es/m/14268.1520283126@sss.pgh.pa.us
1 parent 5748f3a commit b6e132d
Copy full SHA for b6e132d

File tree

Expand file treeCollapse file tree

1 file changed

+2
-1
lines changed
Filter options
Expand file treeCollapse file tree

1 file changed

+2
-1
lines changed

‎src/bin/psql/tab-complete.c

Copy file name to clipboardExpand all lines: src/bin/psql/tab-complete.c
+2-1Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -461,14 +461,15 @@ static const SchemaQuery Query_for_list_of_domains = {
461461
NULL
462462
};
463463

464+
/* Note: this intentionally accepts aggregates as well as plain functions */
464465
static const SchemaQuery Query_for_list_of_functions[] = {
465466
{
466467
/* min_server_version */
467468
110000,
468469
/* catname */
469470
"pg_catalog.pg_proc p",
470471
/* selcondition */
471-
"p.prokind IN ('f', 'w')",
472+
"p.prokind != 'p'",
472473
/* viscondition */
473474
"pg_catalog.pg_function_is_visible(p.oid)",
474475
/* namespace */

0 commit comments

Comments
0 (0)
Morty Proxy This is a proxified and sanitized view of the page, visit original site.