[Pgpool-hackers] Automatic reattachment of the node in connection pooling mode
Guillaume Lelarge
guillaume at lelarge.info
Fri Jan 28 07:44:13 UTC 2011
Le 28/01/2011 08:31, Tatsuo Ishii a écrit :
>> Le 28/01/2011 01:16, Tatsuo Ishii a écrit :
>>>> One of my customers asks me today why pgpool doesn't check, from time to
>>>> time, that the backend is now available in connection pool mode.
>>>>
>>>> Here is what we did with a pgpool 3.0.1, configured only for connection
>>>> pooling and health checking:
>>>>
>>>> * start postgresql (pg_ctl start)
>>>> * start pgpool (pgpool -f etc/pgpool.conf start)
>>>> * every connection works fine
>>>> * stop postgresql (pg_ctl start)
>>>> * health check detects the unavailability of the backend
>>>> and changes status of node 0 to 3
>>>> * no connection, which is good because backend is unavailable
>>>> * start postgresql (pg_ctl start)
>>>> * and the node still remains in status 3.
>>>>
>>>> What I would like to have is a way to check if the backend is now
>>>> available. And reattach it if it is. All intern to pgpool. Any reason
>>>> why not to do so?
>>>>
>>>> I can have misread the documentation, and I understand why this cannot
>>>> happen in replication mode or master/slave mode. But in connection
>>>> pooling only mode, I don't get it.
>>>>
>>>> If it seems to be a nice feature to have, I'm interested in working on this.
>>>
>>> I'm not sure if it's good feature. Say you have 2 DB servers and one
>>> of their network connections goes shakey. It continues to up and down
>>> every 10 seconds. If pgpool has such a feature, pgpool repeatedly does
>>> failover every 10 seconds, which will break existing client connection
>>> every 10 seconds. I'm sure the user is not happy with this situation.
>>
>> You can use two PostgreSQL servers in pooling mode? how does that work?
>
> You can use the second server as the backup server. If the master
> server godes down, degenration happens and pgpool starts to use the
> second server.
>
Oh OK. Interesting, I didn't know that. That explains why it degenerates
and checks for another backend.
I still see an interest to have this when a user has only one backend
and is only in pooling mode.
>> I'm speaking only of the pooling mode, without replication and load
>> balancing. In this case, if the network goes up and down continuously,
>> you continuously loose the connection and have to reattach node 0.
>
--
Guillaume
http://www.postgresql.fr
http://dalibo.com
More information about the Pgpool-hackers
mailing list