From: | Bruce Momjian <pgman(at)candle(dot)pha(dot)pa(dot)us> |
---|---|
To: | Mike Coleman <mkc(at)stowers-institute(dot)org> |
Cc: | pgsql-bugs(at)postgresql(dot)org, mkc(at)mathdogs(dot)com |
Subject: | Re: pg_ctl failure with older Bourne shells (use ${1:+"$@"}) |
Date: | 2002-07-19 13:49:43 |
Message-ID: | 200207191349.g6JDni326744@candle.pha.pa.us |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-bugs |
Yes, I have seen this fix before. Are people still using shells that
don't handle "$@" properly? I guess so or you wouldn't have reported
it.
We only use "$@" in a few places so I am applying this patch.
---------------------------------------------------------------------------
Mike Coleman wrote:
> Your name : Mike Coleman
> Your email address : mkc(at)mathdogs(dot)com
>
>
> System Configuration
> ---------------------
> Architecture (example: Intel Pentium) :alpha
>
> Operating System (example: Linux 2.0.26 ELF) :Tru64 5.1
>
> PostgreSQL version (example: PostgreSQL-7.2.1): PostgreSQL-7.2.1
>
> Compiler used (example: gcc 2.95.2) :gcc 3.1
>
>
> Please enter a FULL description of your problem:
> ------------------------------------------------
>
> The pg_ctl script uses the "$@" construct. Newer shells will replace
> this with nothing if $@ is empty, but older shells will not. The
> alternate form in the patch below will work for both new and old
> shells.
>
>
> Please describe a way to repeat the problem. Please try to provide a
> concise reproducible example, if at all possible:
> ----------------------------------------------------------------------
>
> The problem occurs with this command, for example:
>
> $ /usr/local/pgsql/bin/pg_ctl -D /data1/postgres-0 -l logfile start
>
>
>
>
> If you know how this problem might be fixed, list the solution below:
> ---------------------------------------------------------------------
>
>
> --- /usr/local/pgsql/bin/pg_ctl.dist 2002-07-18 11:34:25.000000000 -0500
> +++ /usr/local/pgsql/bin/pg_ctl 2002-07-18 14:44:35.000000000 -0500
> @@ -332,12 +332,12 @@
> fi
>
> if [ -n "$logfile" ]; then
> - "$po_path" "$@" </dev/null >>$logfile 2>&1 &
> + "$po_path" ${1:+"$@"} </dev/null >>$logfile 2>&1 &
> else
> # when starting without log file, redirect stderr to stdout, so
> # pg_ctl can be invoked with >$logfile and still have pg_ctl's
> # stderr on the terminal.
> - "$po_path" "$@" </dev/null 2>&1 &
> + "$po_path" ${1:+"$@"} </dev/null 2>&1 &
> fi
>
> # if had an old lockfile, check to see if we were able to start
>
> ---------------------------(end of broadcast)---------------------------
> TIP 4: Don't 'kill -9' the postmaster
>
--
Bruce Momjian | http://candle.pha.pa.us
pgman(at)candle(dot)pha(dot)pa(dot)us | (610) 853-3000
+ If your life is a hard drive, | 830 Blythe Avenue
+ Christ can be your backup. | Drexel Hill, Pennsylvania 19026
Attachment | Content-Type | Size |
---|---|---|
unknown_filename | text/plain | 1.8 KB |
From | Date | Subject | |
---|---|---|---|
Next Message | Stephan Szabo | 2002-07-19 13:53:55 | Re: Bug #715: Too much memory consuming with postmaster |
Previous Message | pgsql-bugs | 2002-07-19 12:27:15 | Bug #716: No index usage for "WHERE a IN ( SELECT ...)" |