Re: How to check for server availability? [v9.3.1, Linux]

Поиск
Список
Период
Сортировка
От Tom Lane
Тема Re: How to check for server availability? [v9.3.1, Linux]
Дата
Msg-id 20279.1337344492@sss.pgh.pa.us
обсуждение исходный текст
Ответ на How to check for server availability? [v9.3.1, Linux]  (Vincenzo Romano <vincenzo.romano@notorand.it>)
Ответы Re: How to check for server availability? [v9.3.1, Linux]  (Vincenzo Romano <vincenzo.romano@notorand.it>)
Список pgsql-general
Vincenzo Romano <vincenzo.romano@notorand.it> writes:
> I'd need to check from a C language program whether the server is
> running or not.
> I was planning to use either "PGPing PQping(const char *conninfo)" or
> "ConnStatusType PQstatus(const PGconn *conn)".
> I have my program running and checking from time to time whether the
> connection is kicking and alive.
> In order to test the things I've done the following: while the program
> is waiting for input I simply restart the postgresql server.
> The issue is thayt both functions return PQPING_OK and CONNECTION_OK
> respectively.
> When I forward the request, I get an error: "FATAL:  terminating
> connection due to administrator command".
> How can I reliably check the server status?

You are not actually interested in checking the server status; you
evidently want to know about the health of an existing connection.
PQping will not help that because it is meant to see if the server
would accept a new connection.  PQstatus is not tremendously helpful
either since it doesn't issue any new server traffic; it's just for
seeing if the operations so far were OK.  I think issuing a new
dummy query (an empty string would do) is your best bet.  But why
bother?  Just send your next command, whatever it is.  If you don't
have another useful command to issue, you're just wasting bandwidth
and server cycles.

            regards, tom lane

В списке pgsql-general по дате отправления:

Предыдущее
От: "John Watts"
Дата:
Сообщение: Re: difference in query plan when db is restored
Следующее
От: yxj
Дата:
Сообщение: Re: How to write a script to analyze and vacuum all the tables in the system catalog?Thanks.