Re: [PATCH] Bug fix in initdb output
Andrew Dunstan <andrew@dunslane.net>
From: Andrew Dunstan <andrew@dunslane.net>
To: Juan José Santamaría Flecha <juanjo.santamaria@gmail.com>
Cc: Alvaro Herrera <alvherre@alvh.no-ip.org>,
Nitin Jadhav <nitinjadhavpostgres@gmail.com>,
Michael Paquier <michael@paquier.xyz>,
Pg Hackers <pgsql-hackers@postgresql.org>
Date: 2021-03-22T12:47:38Z
Lists: pgsql-hackers
On 3/22/21 4:36 AM, Juan José Santamaría Flecha wrote:
>
> On Sun, Mar 21, 2021 at 10:28 PM Andrew Dunstan <andrew@dunslane.net
> <mailto:andrew@dunslane.net>> wrote:
>
>
> Note that the pg_ctl path is quoted, and those quotes are passed
> through
> to cmd.exe. That's what makes it work. It's possibly not worth
> changing
> it now, but if anything that's the change that should have been
> made here.
>
> The OP claimed that the printed command was not working 'as-is', which
> is a valid complaint.
>
> Quoting the command seems like a complete answer for this, as it will
> solve problems with spaces and such for both Windows and Unix-like
> systems.
>
>
Looking into this more closely, we are calling appendShellString() which
is designed to ensure that we call commands via system() cleanly and
securely. But we're not calling system() here. All we're doing is to
print a message. The caret-escaped message is horribly ugly IMNSHO. Can
we see if we can get something less ugly than this?:
Success. You can now start the database server using:
^"bin^\\pg^_ctl^" -D data-C -l logfile start
cheers
andrew
--
Andrew Dunstan
EDB: https://www.enterprisedb.com
Commits
-
Use native path separators to pg_ctl in initdb
- f927767919e8 12.7 landed
- b52fd1e7c76c 13.3 landed
- ae1c1d84ea24 11.12 landed
- 926139dd04bb 10.17 landed
- 75dbfe4ca70d 14.0 landed
-
Have initdb display relative paths to start postmaster if used to invoke
- ee814b4511ec 8.0.0 cited