Re: pg_connect timeout ignored

From: ljb <ljb220(at)mindspring(dot)com>
To: pgsql-php(at)postgresql(dot)org
Subject: Re: pg_connect timeout ignored
Date: 2004-02-26 00:48:15
Message-ID: c1jfof$1cd4$1@news.hub.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-php

private(at)xxxxxxx(dot)com wrote:
> I'm testing the connect_timeout option in pg_connect but the library seems
> to ignore it. I set the pg_connect to connect to an invalid host IP and set
> the connect_timeout=8 but the function returns in 30 seconds or more.
>
> $DB = pg_connect(host=169.2.2.22 user=postgres database=xyz
> connect_timeout=8);
>
> I'm running Redhat 9 on Postgresql 7.4 and php-pgsql-4.2.2-17.2.
>
> Any idea how the connect_timeout option works on PHP Pgsql?

It just passes the whole connection string through to the PostgreSQL
library libpq. So it isn't a problem with PHP. I tried it and it works for
me. I added "connect_timeout=2" to my connection string, and I got this
error (in 2 seconds) when trying to connect to an invalid IP address:

Warning: pg_connect() [function.pg-connect.html]: Unable to connect to
PostgreSQL server: timeout expired . in ...

I had to use 2 seconds. With 3 seconds or longer, I get a "no route to host,
is the server running..." error before it times out.

I'm running PostgreSQL-7.4.1 and PHP-4.3.3 on Slackware 9.1 Linux. If the
problem you are having is fixed by an upgrade, I would try PostgreSQL-7.4.1
first (because I don't think PHP will affect it).

In response to

Browse pgsql-php by date

  From Date Subject
Next Message Andy Dunlop 2004-02-27 21:11:33 Too many clients
Previous Message Harry Broomhall 2004-02-25 17:21:50 Re: [PHP] phpBB 2.2 and PostgreSQL support