Re: Optional postgres database not so optional in 8.1 - Mailing list pgsql-hackers

From Andrew Dunstan
Subject Re: Optional postgres database not so optional in 8.1
Date
Msg-id 437DE92E.4010104@dunslane.net
Whole thread Raw
In response to Optional postgres database not so optional in 8.1  ("John Hansen" <john@geeknet.com.au>)
Responses Re: Optional postgres database not so optional in 8.1
List pgsql-hackers

Tom Lane wrote:

>Andrew Dunstan <andrew@dunslane.net> writes:
>  
>
>>I now notice that "pg_ctl -w start" fails if the postgres db is missing. 
>>I am not sure that changing pg_ctl to use this rather than template1 was 
>>a good thing, and it can't be overridden. I suggest we revert that 
>>particular change - it seems to me to confer little to no benefit, 
>>unlike the case with createdb etc.
>>    
>>
>
>pg_ctl -w is already incredibly fragile because it needs a working
>password-free login name.  Rather than worrying about whether the
>database name exists, what we ought to do is invent the long-awaited
>"ping" extension to the postmaster protocol --- something that would
>just ask "are you up and ready to accept connections" without having
>to specify a valid user *or* database name.
>
>You can sort of do this today if you are willing to examine the error
>message that comes back from the postmaster, but I think it'd be cleaner
>to have an official protocol extension.
>  
>


Actually, it looks like pg_ctl already does this:
       if ((conn = PQsetdbLogin(NULL, portstr, NULL, NULL,                                "postgres", NULL, NULL)) !=
NULL&&           (PQstatus(conn) == CONNECTION_OK ||            (strcmp(PQerrorMessage(conn),
PQnoPasswordSupplied)== 0)))       {           PQfinish(conn);           success = true;           break;       }
 


cheers

andrew



pgsql-hackers by date:

Previous
From: Javier Soltero
Date:
Subject: Re: [pgsql-advocacy] Call for sample databases
Next
From: Bruce Momjian
Date:
Subject: Re: MERGE vs REPLACE