Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
Minor fixes for psql tab completion.
authorTom Lane <tgl@sss.pgh.pa.us>
Wed, 12 Sep 2018 19:24:56 +0000 (15:24 -0400)
committerTom Lane <tgl@sss.pgh.pa.us>
Wed, 12 Sep 2018 19:25:14 +0000 (15:25 -0400)
* Include partitioned tables in what's offered after ANALYZE.

* Include toast_tuple_target in what's offered after ALTER TABLE ... SET|RESET.

* Include HASH in what's offered after PARTITION BY.

This is extracted from a larger patch; these bits seem like
uncontroversial bug fixes for v11 features, so back-patch them into v11.

Justin Pryzby

Discussion: https://postgr.es/m/20180529000623.GA21896@telsasoft.com

src/bin/psql/tab-complete.c

index bb696f8ee90119ffec45d4ebd0f79d20a383c61c..d5f0130f4429642fd0ea54b1d7b3b92da8b04339 100644 (file)
@@ -705,6 +705,7 @@ static const SchemaQuery Query_for_list_of_tmf = {
    "pg_catalog.pg_class c",
    /* selcondition */
    "c.relkind IN (" CppAsString2(RELKIND_RELATION) ", "
+   CppAsString2(RELKIND_PARTITIONED_TABLE) ", "
    CppAsString2(RELKIND_MATVIEW) ", "
    CppAsString2(RELKIND_FOREIGN_TABLE) ")",
    /* viscondition */
@@ -2222,6 +2223,7 @@ psql_completion(const char *text, int start, int end)
            "fillfactor",
            "parallel_workers",
            "log_autovacuum_min_duration",
+           "toast_tuple_target",
            "toast.autovacuum_enabled",
            "toast.autovacuum_freeze_max_age",
            "toast.autovacuum_freeze_min_age",
@@ -2703,7 +2705,7 @@ psql_completion(const char *text, int start, int end)
        COMPLETE_WITH_LIST2("TABLE", "MATERIALIZED VIEW");
    /* Complete PARTITION BY with RANGE ( or LIST ( or ... */
    else if (TailMatches2("PARTITION", "BY"))
-       COMPLETE_WITH_LIST2("RANGE (", "LIST (");
+       COMPLETE_WITH_LIST3("RANGE (", "LIST (", "HASH (");
    /* If we have xxx PARTITION OF, provide a list of partitioned tables */
    else if (TailMatches2("PARTITION", "OF"))
        COMPLETE_WITH_SCHEMA_QUERY(Query_for_list_of_partitioned_tables, "");