Re: connection watchdog

From: "Shridhar Daithankar" <shridhar_daithankar(at)persistent(dot)co(dot)in>
To: pgsql-general(at)postgresql(dot)org
Subject: Re: connection watchdog
Date: 2002-10-10 15:34:58
Message-ID: 3DA5EB7A.16957.54EC90F@localhost
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

On 10 Oct 2002 at 19:28, Michael Kichanov wrote:

> > > How can I check from C-program whether connection to pgsql
> > > engine still works or already lost?
> > > PQstatus() returns CONNECTION_OK even when backend process is killed
> > > by hands after connection is made.
> >
> > There is a function which returns fd of the connection to postgresql database.
> > If you install a SIGPIPE handler on that connections, perhaps you can catch the
> > signal that backend is killed. But you will get that signal only when you
> > attempt to write to the fd, according to 'man 7 signal' on my mandrake box.
> >
> > Just theory. Try it out and let us know if it works..
>
> The point is that I don't want to use an interface level lower
> than libpq interface level. At present I using a common "select 1" query
> (via PQexec()) with check it reslut for this purpose. But this method
> results in growing pgsql log and needless load of PG engine.

Well, I don't see any other way out. So if you want it, you should try this
out. Or dig aroung libpq source code to check what exact error it would throw
if the server side socket is closed.

HTH

Bye
Shridhar

--
He's dead, Jim. -- McCoy, "The Devil in the Dark", stardate 3196.1

In response to

Browse pgsql-general by date

  From Date Subject
Next Message Dave Cramer 2002-10-10 15:35:48 Re: Out of memory error on huge resultset
Previous Message scott.marlowe 2002-10-10 15:34:01 Re: access time performance problem