Thread: boolean options and postmaster documentation

boolean options and postmaster documentation

From
snyder@roguewave.com
Date:
The normal operation of our servers is to have tcpip_sockets enabled,
but occasionally I may need to shut down the server and restart it
w/o tcpip sockets. Postmaster has the -i option to turn on tcpip
connections, but it wasn't immediately clear how to easily or
temporarily turn it off (when it's been enabled in postgresql.conf).

In fact, it wasn't clear to me until digging in to postmaster.c that
I could pass '-c tcpip_socket=false' or '--tcpip_socket=false'.
(And then of course when I looked more closely at the man page I
realized I'd missed the proper part of the documentation.) What I'd
been looking for is a flag that would have the opposite effect of
'-i', and it's conceivable that others will be looking for specific
flags to do the opposite of '-F' and '-S'.

I was preparing to add options to postmaster until I realized that
maybe the solution is just to add some documentation.

If you'd rather have 1 character options to accomplish this, I'd be
happy to do that-- adding those 9 lines of code is definitely within
my ability. :)  (Although, the "right" letter to be the opposite of -S
isn't clear to me, since -s is already taken.)

-ron

Index: doc/src/sgml/ref/postmaster.sgml
===================================================================
RCS file: /projects/cvsroot/pgsql/doc/src/sgml/ref/postmaster.sgml,v
retrieving revision 1.29
diff -c -r1.29 postmaster.sgml
*** doc/src/sgml/ref/postmaster.sgml    2002/04/21 19:02:39     1.29
--- doc/src/sgml/ref/postmaster.sgml    2002/06/08 21:54:15
***************
*** 145,152 ****
         <para>
          Disables <function>fsync</function> calls for performance
          improvement, at the risk of data corruption in event of a
!       system crash.  Read the detailed documentation before using this!
         </para>
        </listitem>
       </varlistentry>

--- 145,158 ----
         <para>
          Disables <function>fsync</function> calls for performance
          improvement, at the risk of data corruption in event of a
!       system crash.  This parameter corresponds to setting
!       fsync=false in postgresql.conf. Read the detailed
!       documentation before using this!
         </para>
+        <para>
+       <option>--fsync=true</option> has the opposite effect
+       of this option
+        </para>
        </listitem>
       </varlistentry>

***************
*** 169,175 ****
         <para>
          Allows clients to connect via TCP/IP (Internet domain)
        connections.  Without this option, only local Unix domain
!       socket connections are accepted.
         </para>
        </listitem>
       </varlistentry>
--- 175,186 ----
         <para>
          Allows clients to connect via TCP/IP (Internet domain)
        connections.  Without this option, only local Unix domain
!       socket connections are accepted. This option corresponds
!       to setting tcpip_socket=true in postgresql.conf.
!        </para>
!        <para>
!       <option>--tcpip_socket=false</option> has the opposite
!       effect of this option
         </para>
        </listitem>
       </varlistentry>
***************
*** 259,264 ****
--- 270,279 ----
        probably not what you want, since it makes it very difficult
        to troubleshoot problems.  See below for a better way to start
        the <application>postmaster</application> in the background.
+        </para>
+        <para>
+       <option>--silent_mode=false</option> has the opposite effect
+       of this option
         </para>
        </listitem>
       </varlistentry>



Re: boolean options and postmaster documentation

From
Tom Lane
Date:
snyder@roguewave.com writes:
> If you'd rather have 1 character options to accomplish this, I'd be
> happy to do that-- adding those 9 lines of code is definitely within
> my ability.

The one-letter options are the cause of the problem, IMHO --- so adding
more of 'em is not the route to a solution.

            regards, tom lane

Re: boolean options and postmaster documentation

From
Bruce Momjian
Date:
Your patch has been added to the PostgreSQL unapplied patches list at:

    http://candle.pha.pa.us/cgi-bin/pgpatches

I will try to apply it within the next 48 hours.

---------------------------------------------------------------------------


snyder@roguewave.com wrote:
> The normal operation of our servers is to have tcpip_sockets enabled,
> but occasionally I may need to shut down the server and restart it
> w/o tcpip sockets. Postmaster has the -i option to turn on tcpip
> connections, but it wasn't immediately clear how to easily or
> temporarily turn it off (when it's been enabled in postgresql.conf).
>
> In fact, it wasn't clear to me until digging in to postmaster.c that
> I could pass '-c tcpip_socket=false' or '--tcpip_socket=false'.
> (And then of course when I looked more closely at the man page I
> realized I'd missed the proper part of the documentation.) What I'd
> been looking for is a flag that would have the opposite effect of
> '-i', and it's conceivable that others will be looking for specific
> flags to do the opposite of '-F' and '-S'.
>
> I was preparing to add options to postmaster until I realized that
> maybe the solution is just to add some documentation.
>
> If you'd rather have 1 character options to accomplish this, I'd be
> happy to do that-- adding those 9 lines of code is definitely within
> my ability. :)  (Although, the "right" letter to be the opposite of -S
> isn't clear to me, since -s is already taken.)
>
> -ron
>
> Index: doc/src/sgml/ref/postmaster.sgml
> ===================================================================
> RCS file: /projects/cvsroot/pgsql/doc/src/sgml/ref/postmaster.sgml,v
> retrieving revision 1.29
> diff -c -r1.29 postmaster.sgml
> *** doc/src/sgml/ref/postmaster.sgml    2002/04/21 19:02:39     1.29
> --- doc/src/sgml/ref/postmaster.sgml    2002/06/08 21:54:15
> ***************
> *** 145,152 ****
>          <para>
>           Disables <function>fsync</function> calls for performance
>           improvement, at the risk of data corruption in event of a
> !       system crash.  Read the detailed documentation before using this!
>          </para>
>         </listitem>
>        </varlistentry>
>
> --- 145,158 ----
>          <para>
>           Disables <function>fsync</function> calls for performance
>           improvement, at the risk of data corruption in event of a
> !       system crash.  This parameter corresponds to setting
> !       fsync=false in postgresql.conf. Read the detailed
> !       documentation before using this!
>          </para>
> +        <para>
> +       <option>--fsync=true</option> has the opposite effect
> +       of this option
> +        </para>
>         </listitem>
>        </varlistentry>
>
> ***************
> *** 169,175 ****
>          <para>
>           Allows clients to connect via TCP/IP (Internet domain)
>         connections.  Without this option, only local Unix domain
> !       socket connections are accepted.
>          </para>
>         </listitem>
>        </varlistentry>
> --- 175,186 ----
>          <para>
>           Allows clients to connect via TCP/IP (Internet domain)
>         connections.  Without this option, only local Unix domain
> !       socket connections are accepted. This option corresponds
> !       to setting tcpip_socket=true in postgresql.conf.
> !        </para>
> !        <para>
> !       <option>--tcpip_socket=false</option> has the opposite
> !       effect of this option
>          </para>
>         </listitem>
>        </varlistentry>
> ***************
> *** 259,264 ****
> --- 270,279 ----
>         probably not what you want, since it makes it very difficult
>         to troubleshoot problems.  See below for a better way to start
>         the <application>postmaster</application> in the background.
> +        </para>
> +        <para>
> +       <option>--silent_mode=false</option> has the opposite effect
> +       of this option
>          </para>
>         </listitem>
>        </varlistentry>
>
>
>
> ---------------------------(end of broadcast)---------------------------
> TIP 1: subscribe and unsubscribe commands go to majordomo@postgresql.org
>

--
  Bruce Momjian                        |  http://candle.pha.pa.us
  pgman@candle.pha.pa.us               |  (610) 853-3000
  +  If your life is a hard drive,     |  830 Blythe Avenue
  +  Christ can be your backup.        |  Drexel Hill, Pennsylvania 19026

Re: boolean options and postmaster documentation

From
Bruce Momjian
Date:
Patch applied.  Thanks.

---------------------------------------------------------------------------


snyder@roguewave.com wrote:
> The normal operation of our servers is to have tcpip_sockets enabled,
> but occasionally I may need to shut down the server and restart it
> w/o tcpip sockets. Postmaster has the -i option to turn on tcpip
> connections, but it wasn't immediately clear how to easily or
> temporarily turn it off (when it's been enabled in postgresql.conf).
>
> In fact, it wasn't clear to me until digging in to postmaster.c that
> I could pass '-c tcpip_socket=false' or '--tcpip_socket=false'.
> (And then of course when I looked more closely at the man page I
> realized I'd missed the proper part of the documentation.) What I'd
> been looking for is a flag that would have the opposite effect of
> '-i', and it's conceivable that others will be looking for specific
> flags to do the opposite of '-F' and '-S'.
>
> I was preparing to add options to postmaster until I realized that
> maybe the solution is just to add some documentation.
>
> If you'd rather have 1 character options to accomplish this, I'd be
> happy to do that-- adding those 9 lines of code is definitely within
> my ability. :)  (Although, the "right" letter to be the opposite of -S
> isn't clear to me, since -s is already taken.)
>
> -ron
>
> Index: doc/src/sgml/ref/postmaster.sgml
> ===================================================================
> RCS file: /projects/cvsroot/pgsql/doc/src/sgml/ref/postmaster.sgml,v
> retrieving revision 1.29
> diff -c -r1.29 postmaster.sgml
> *** doc/src/sgml/ref/postmaster.sgml    2002/04/21 19:02:39     1.29
> --- doc/src/sgml/ref/postmaster.sgml    2002/06/08 21:54:15
> ***************
> *** 145,152 ****
>          <para>
>           Disables <function>fsync</function> calls for performance
>           improvement, at the risk of data corruption in event of a
> !       system crash.  Read the detailed documentation before using this!
>          </para>
>         </listitem>
>        </varlistentry>
>
> --- 145,158 ----
>          <para>
>           Disables <function>fsync</function> calls for performance
>           improvement, at the risk of data corruption in event of a
> !       system crash.  This parameter corresponds to setting
> !       fsync=false in postgresql.conf. Read the detailed
> !       documentation before using this!
>          </para>
> +        <para>
> +       <option>--fsync=true</option> has the opposite effect
> +       of this option
> +        </para>
>         </listitem>
>        </varlistentry>
>
> ***************
> *** 169,175 ****
>          <para>
>           Allows clients to connect via TCP/IP (Internet domain)
>         connections.  Without this option, only local Unix domain
> !       socket connections are accepted.
>          </para>
>         </listitem>
>        </varlistentry>
> --- 175,186 ----
>          <para>
>           Allows clients to connect via TCP/IP (Internet domain)
>         connections.  Without this option, only local Unix domain
> !       socket connections are accepted. This option corresponds
> !       to setting tcpip_socket=true in postgresql.conf.
> !        </para>
> !        <para>
> !       <option>--tcpip_socket=false</option> has the opposite
> !       effect of this option
>          </para>
>         </listitem>
>        </varlistentry>
> ***************
> *** 259,264 ****
> --- 270,279 ----
>         probably not what you want, since it makes it very difficult
>         to troubleshoot problems.  See below for a better way to start
>         the <application>postmaster</application> in the background.
> +        </para>
> +        <para>
> +       <option>--silent_mode=false</option> has the opposite effect
> +       of this option
>          </para>
>         </listitem>
>        </varlistentry>
>
>
>
> ---------------------------(end of broadcast)---------------------------
> TIP 1: subscribe and unsubscribe commands go to majordomo@postgresql.org
>

--
  Bruce Momjian                        |  http://candle.pha.pa.us
  pgman@candle.pha.pa.us               |  (610) 853-3000
  +  If your life is a hard drive,     |  830 Blythe Avenue
  +  Christ can be your backup.        |  Drexel Hill, Pennsylvania 19026