Thread: can we use PQstatus for knowing connection status

can we use PQstatus for knowing connection status

From
HK
Date:
Hi all,
    I am using libpq for connecting from a C program to postgres
7.1.3. And i am using asyncronous query processing. Suppose i sent a query
and while processing is on, the postmaster is stopped (for simulating a pg
crash). Now if i use the PQstatus (conn) i am unable to get the actual
status. It still says the connection is OK. Then how can we detect the pg
crash.
  Is it proper to reply upon PQstatus for knowing the status of the
connection. Please can some body help me.
TIA.
--
regards,
hari
      __
     / /    __  _  _  _  _ __  __         -o)
    / /__  / / / \\// //_// \\ \\/ /         /\\\\  Making things happen
   /____/ /_/ /_/\\/ /___/  /_/\\_\\        _\\_v-



Re: can we use PQstatus for knowing connection status

From
Tom Lane
Date:
HK <harikrishnan@midascomm.com> writes:
>     I am using libpq for connecting from a C program to postgres
> 7.1.3. And i am using asyncronous query processing. Suppose i sent a query
> and while processing is on, the postmaster is stopped (for simulating a pg
> crash). Now if i use the PQstatus (conn) i am unable to get the actual
> status. It still says the connection is OK. Then how can we detect the pg
> crash.

You can't, in most scenarios, except by issuing a query and having it
fail.  PQstatus will go to CONNECTION_BAD when libpq detects loss of
connection ... but it wouldn't be very reasonable or useful to have the
library constantly pinging the server to verify the connection is still
up.

            regards, tom lane