Re: Change 'pg_ctl: no server running' Exit Status to 3 - Mailing list pgsql-hackers

From Bruce Momjian
Subject Re: Change 'pg_ctl: no server running' Exit Status to 3
Date
Msg-id 201110131702.p9DH2eH21102@momjian.us
Whole thread Raw
In response to Re: Change 'pg_ctl: no server running' Exit Status to 3  (Peter Eisentraut <peter_e@gmx.net>)
List pgsql-hackers
Peter Eisentraut wrote:
> On m?n, 2011-05-23 at 20:50 -0400, Aaron W. Swenson wrote:
> > According to Linux Standard Base Core Specification 3.1 [1], the exit
> > status should be '3' when the server isn't running.
> >
> > I've attached a very simple patch that resolves this cosmetic issue,
> > which applies to all branches.
>
> If we're going to make the exit status meaningful, it should probably be
> added to the documentation.

Patch attached and applied, with docs.  I also cleaned up some C
comments, which are not in the attached patch.

--
  Bruce Momjian  <bruce@momjian.us>        http://momjian.us
  EnterpriseDB                             http://enterprisedb.com

  + It's impossible for everything to be true. +
diff --git a/doc/src/sgml/ref/pg_ctl-ref.sgml b/doc/src/sgml/ref/pg_ctl-ref.sgml
new file mode 100644
index 07836e7..7dc170e
*** a/doc/src/sgml/ref/pg_ctl-ref.sgml
--- b/doc/src/sgml/ref/pg_ctl-ref.sgml
*************** PostgreSQL documentation
*** 205,211 ****
     <option>status</option> mode checks whether a server is running in
     the specified data directory. If it is, the <acronym>PID</acronym>
     and the command line options that were used to invoke it are
!    displayed.
    </para>

    <para>
--- 205,212 ----
     <option>status</option> mode checks whether a server is running in
     the specified data directory. If it is, the <acronym>PID</acronym>
     and the command line options that were used to invoke it are
!    displayed.  If the server is not running, the process returns an
!    exit status of 3.
    </para>

    <para>
diff --git a/src/bin/pg_ctl/pg_ctl.c b/src/bin/pg_ctl/pg_ctl.c
new file mode 100644
index c9007ed..8e9d2ce
*** a/src/bin/pg_ctl/pg_ctl.c
--- b/src/bin/pg_ctl/pg_ctl.c
*************** do_status(void)
*** 1186,1192 ****
          }
      }
      printf(_("%s: no server running\n"), progname);
!     exit(1);
  }


--- 1188,1198 ----
          }
      }
      printf(_("%s: no server running\n"), progname);
!     /*
!      * The Linux Standard Base Core Specification 3.1 says this should return '3'
!      * http://refspecs.freestandards.org/LSB_3.1.1/LSB-Core-generic/LSB-Core-generic/iniscrptact.html
!      */
!     exit(3);
  }



pgsql-hackers by date:

Previous
From: Kohei KaiGai
Date:
Subject: Re: [v9.2] DROP statement reworks
Next
From: Dimitri Fontaine
Date:
Subject: Re: Dumping roles improvements?