Improve tab completion for ALTER STATISTICS <name> SET in psql
authorMichael Paquier <michael@paquier.xyz>
Mon, 24 Oct 2022 06:46:42 +0000 (15:46 +0900)
committerMichael Paquier <michael@paquier.xyz>
Mon, 24 Oct 2022 06:46:42 +0000 (15:46 +0900)
The code was completing this pattern with a list of settable characters,
and it was possible to reach this state after completing a "ALTER
STATISTICS <name>" with SET.

Author: Vignesh C
Discussion: https://postgr.es/m/CALDaNm2HHF_371o+EeSjxDDS17Cx7d-ko2h1fLU94=ob=4_ktg@mail.gmail.com

src/bin/psql/tab-complete.c

index 584d9d5ae642b6fa43c7aaabc93d4792b269478d..a64571215b332500bb8f3b4e7015c2b7a561cd1f 100644 (file)
@@ -2216,6 +2216,9 @@ psql_completion(const char *text, int start, int end)
    /* ALTER STATISTICS <name> */
    else if (Matches("ALTER", "STATISTICS", MatchAny))
        COMPLETE_WITH("OWNER TO", "RENAME TO", "SET SCHEMA", "SET STATISTICS");
+   /* ALTER STATISTICS <name> SET */
+   else if (Matches("ALTER", "STATISTICS", MatchAny, "SET"))
+       COMPLETE_WITH("SCHEMA", "STATISTICS");
 
    /* ALTER TRIGGER <name>, add ON */
    else if (Matches("ALTER", "TRIGGER", MatchAny))