Matthias Schmidt wrote:
> Hi *,
> 
> here's a tiny patch showing the description of the backend parameters 
> alongside the 'SHOW ALL' Command.
> I'm not quite shure wether this should be the default output or not. 
> Probably this needs to be configurable itself.
> 
> What do you think?

Good question.  psql \dT shows descriptions, but \df does not, only
\df+, so that doesn't give us a pattern.

We could add a VERBOSE option to SHOW ALL to show descriptions, but that
seems like overkill.

I have applied your patch that show descriptions for SHOW ALL, but not
for SHOW varname.  That seems like the cleanest solution.  I also
updated the documentation to mention SHOW ALL includes descriptions.

Any modification suggestions from the group?

-- 
  Bruce Momjian                        |  http://candle.pha.pa.us
  pgman@candle.pha.pa.us               |  (610) 359-1001
  +  If your life is a hard drive,     |  13 Roberts Road
  +  Christ can be your backup.        |  Newtown Square, Pennsylvania 19073
Index: doc/src/sgml/ref/show.sgml
===================================================================
RCS file: /cvsroot/pgsql/doc/src/sgml/ref/show.sgml,v
retrieving revision 1.38
diff -c -c -r1.38 show.sgml
*** doc/src/sgml/ref/show.sgml  8 Apr 2005 00:59:58 -0000       1.38
--- doc/src/sgml/ref/show.sgml  14 Jun 2005 20:39:20 -0000
***************
*** 118,124 ****
      <term><literal>ALL</literal></term>
      <listitem>
       <para>
!       Show the values of all configuration parameters.
       </para>
      </listitem>
     </varlistentry>
--- 118,124 ----
      <term><literal>ALL</literal></term>
      <listitem>
       <para>
!       Show the values of all configuration parameters, with descriptions.
       </para>
      </listitem>
     </varlistentry>
***************
*** 164,180 ****
     Show all settings:
  <programlisting>
  SHOW ALL;
!               name              |                     setting
! 
--------------------------------+----------------------------------------------
!  add_missing_from               | off
!  archive_command                | unset
!  australian_timezones           | off
      .
      .
      .
!  work_mem                       | 1024
!  zero_damaged_pages             | off
! (140 rows)
  </programlisting>
    </para>
   </refsect1>
--- 164,180 ----
     Show all settings:
  <programlisting>
  SHOW ALL;
!               name              |            setting             |            
                             description                                        
  
! 
--------------------------------+--------------------------------+----------------------------------------------------------------------------------------------
!  add_missing_from               | off                            | 
Automatically adds missing table references to FROM clauses.
!  archive_command                | unset                          | WAL 
archiving command.
!  australian_timezones           | off                            | Interprets 
ACST, CST, EST, and SAT as Australian time zones.
      .
      .
      .
!  work_mem                       | 1024                           | Sets the 
maximum memory to be used for query workspaces.
!  zero_damaged_pages             | off                            | Continues 
processing past damaged page headers.
! (146 rows)
  </programlisting>
    </para>
   </refsect1>
Index: src/backend/utils/misc/guc.c
===================================================================
RCS file: /cvsroot/pgsql/src/backend/utils/misc/guc.c,v
retrieving revision 1.265
diff -c -c -r1.265 guc.c
*** src/backend/utils/misc/guc.c        14 Jun 2005 17:43:13 -0000      1.265
--- src/backend/utils/misc/guc.c        14 Jun 2005 20:39:24 -0000
***************
*** 4337,4348 ****
  
        if (pg_strcasecmp(name, "all") == 0)
        {
!               /* need a tuple descriptor representing two TEXT columns */
!               tupdesc = CreateTemplateTupleDesc(2, false);
                TupleDescInitEntry(tupdesc, (AttrNumber) 1, "name",
                                                   TEXTOID, -1, 0);
                TupleDescInitEntry(tupdesc, (AttrNumber) 2, "setting",
                                                   TEXTOID, -1, 0);
        }
        else
        {
--- 4337,4351 ----
  
        if (pg_strcasecmp(name, "all") == 0)
        {
!               /* need a tuple descriptor representing three TEXT columns */
!               tupdesc = CreateTemplateTupleDesc(3, false);
                TupleDescInitEntry(tupdesc, (AttrNumber) 1, "name",
                                                   TEXTOID, -1, 0);
                TupleDescInitEntry(tupdesc, (AttrNumber) 2, "setting",
                                                   TEXTOID, -1, 0);
+               TupleDescInitEntry(tupdesc, (AttrNumber) 3, "description",
+                                                  TEXTOID, -1, 0);
+ 
        }
        else
        {
***************
*** 4415,4428 ****
        int                     i;
        TupOutputState *tstate;
        TupleDesc       tupdesc;
!       char       *values[2];
  
!       /* need a tuple descriptor representing two TEXT columns */
!       tupdesc = CreateTemplateTupleDesc(2, false);
        TupleDescInitEntry(tupdesc, (AttrNumber) 1, "name",
                                           TEXTOID, -1, 0);
        TupleDescInitEntry(tupdesc, (AttrNumber) 2, "setting",
                                           TEXTOID, -1, 0);
  
        /* prepare for projection of tuples */
        tstate = begin_tup_output_tupdesc(dest, tupdesc);
--- 4418,4434 ----
        int                     i;
        TupOutputState *tstate;
        TupleDesc       tupdesc;
!       char       *values[3];
  
!       /* need a tuple descriptor representing three TEXT columns */
!       tupdesc = CreateTemplateTupleDesc(3, false);
        TupleDescInitEntry(tupdesc, (AttrNumber) 1, "name",
                                           TEXTOID, -1, 0);
        TupleDescInitEntry(tupdesc, (AttrNumber) 2, "setting",
                                           TEXTOID, -1, 0);
+       TupleDescInitEntry(tupdesc, (AttrNumber) 3, "description",
+                                          TEXTOID, -1, 0);
+                                          
  
        /* prepare for projection of tuples */
        tstate = begin_tup_output_tupdesc(dest, tupdesc);
***************
*** 4438,4443 ****
--- 4444,4450 ----
                /* assign to the values array */
                values[0] = (char *) conf->name;
                values[1] = _ShowOption(conf);
+               values[2] = (char *) conf->short_desc;
  
                /* send it to dest */
                do_tup_output(tstate, values);
---------------------------(end of broadcast)---------------------------
TIP 5: Have you checked our extensive FAQ?

               http://www.postgresql.org/docs/faq

Reply via email to