Re: [HACKERS] postmaster dead on startup from unportable SSL patch - Mailing list pgsql-hackers

From Tom Lane
Subject Re: [HACKERS] postmaster dead on startup from unportable SSL patch
Date
Msg-id 1768.938879360@sss.pgh.pa.us
Whole thread Raw
In response to Re: [HACKERS] postmaster dead on startup from unportable SSL patch  (Peter Eisentraut <peter_e@gmx.net>)
Responses getopt_long (was Re: [HACKERS] postmaster dead on startup ...)  (Peter Eisentraut <peter_e@gmx.net>)
List pgsql-hackers
Peter Eisentraut <peter_e@gmx.net> writes:
>> The single-character switches are definitely non-intuitive. Implement

> It's a backend people! My man page shows 12 defined switches, so there are
> at least 44 character switches left. A little imagination please.

It's true that the postmaster isn't something you normally start by
hand, but the other side of that coin is that startup scripts are
usually made by people when they are new to Postgres, and it's not
hard to make a mistake...

> I am implementing GNU style long options in psql but obviously that sort
> of thing won't help anybody that doesn't have a GNU'ish system, in
> particular the people affected by the -is thing in the first place.
>
> Or do you *really* want to get into the business of writing your own
> getopt replacement???

Er, you had better be writing your own getopt replacement if you want
to provide GNU-style options in psql.  Or have you forgotten that the
code must be portable to non-GNU platforms?  I don't think it would be
a good idea to support long options only on boxes with a suitable
getopt, either.  That would create a documentation, scripting, and
support nightmare (because the same psql command line would work for
some people and not others).

If it weren't for the license conflict between BSD and GPL, I'd suggest
just dropping GNU getopt into the Postgres distribution, but having
GPL'd code in the distribution is a can of worms we'd best not open.

> Meanwhile, how about something like -i for normal and -i SSL for what's
> desired. (That is, change the "i" to "i:").

I tried that before I realized what the i:: was all about, but it still
breaks existing startup scripts, because i: means that there *must* be
an argument to -i --- so if you write something like -i -o "backend switches"
the -o gets swallowed as the argument to -i, and chaos ensues.

I do like the notion of specifying SSL as the argument of some new
switch letter, so that we have a way to add more connection
methods without using up more switch letters...
        regards, tom lane


pgsql-hackers by date:

Previous
From: Thomas Lockhart
Date:
Subject: Re: [HACKERS] Tricky query, tricky response
Next
From: Tom Lane
Date:
Subject: Re: [HACKERS] Regression tests on intel for 6.5.2