Re: [GENERAL] 'pg_ctl -w' times out when unix_socket_directory is - Mailing list pgsql-hackers

From Jeff Davis
Subject Re: [GENERAL] 'pg_ctl -w' times out when unix_socket_directory is
Date
Msg-id 1159460410.7578.231.camel@dogma.v10.wvs
Whole thread Raw
List pgsql-hackers
On Thu, 2006-09-28 at 10:05 -0400, Tom Lane wrote:
> Jeff Davis <pgsql@j-davis.com> writes:
> > I have attached a patch. I wrote it very quickly, but it seems to work
> > as I expect.
> 
> I don't think this is very workable as a postgresql.conf parser ...
> at minimum it needs to handle quoted strings correctly, and really it
> ought to deal with file inclusions.
> 
> There are other reasons why pg_ctl needs to look at
> postgresql.conf --- it currently fails to cope with
> config-file-outside-the-datadir cases, and that can't be fixed except by
> extracting the data_directory setting from the config file.  What we
> probably need to do is port guc-file.l into the pg_ctl environment.
> (Not sure if it's feasible to use a single source file for both cases,
> though that would be nice if not too messy.)
> 

And same for reading the port out of postgresql.conf, right?

I was a little skeptical that the function would always work. However,
to the extent that it looked for the correct port, it makes sense it
should look at the correct unix_socket_directory also. I think my patch
handles the simplest cases correctly (a simple single-quoted string),
and I don't think it breaks anything.

I can understand that we want a more correct solution to search for both
parameters.

I could make an attempt to port guc-file.l. However, if you were
planning on fixing this for 8.2, I can't make any guarantees. It does
seem like a bug to me, especially since the FreeBSD port of postgres
uses pg_ctl -w in the startup script (and probably a lot of other
platforms).

Regards,Jeff Davis



pgsql-hackers by date:

Previous
From: Stefan Kaltenbrunner
Date:
Subject: Re: -HEAD planner issue wrt hash_joins on dbt3 ?
Next
From: "Jim C. Nasby"
Date:
Subject: Re: Another idea for dealing with cmin/cmax