[pgpool-general: 1301] Re: pgpool stopped accepting client connections after 1 node hung
ishii at postgresql.org
Tue Jan 8 09:00:58 JST 2013
> On Mon, Jan 7, 2013 at 3:05 PM, Tatsuo Ishii <ishii at postgresql.org> wrote:
>>>>>> I don't understand why pgpool stopped accepting client connections.
>>>>>> I'd expect that if any single node goes down, pgpool should continue
>>>>>> to work and accept connections, and simply mark the unresponsive node
>>>>>> as unavailable.
>>>>> That is my question too. Do you see this kind of message in the pgpool log?
>>>>> degenerate_backend_set: 2 fail over request from pid xxxx
>>>>> If you see this, pgpool should initiate the failover and mark cuda-db5 down.
>>>> Nope, that message was not present at any time.
>>> There was a bug report regarding pgpool-II 3.2 (or higher)'s
>>> In the report the error message was same as you
>>> (connect_inet_domain_socket: connect() failed: Connection timed out).
>>> and I have created a patch to fix it:
>>> Can you try it out? Still I am investigating why you did not see fail
>>> over but I think you want to try the patch to avoid the error first.
>> Oh, I think I see the reason why you do not see fail over.
>> You have this:
>> fail_over_on_backend_error = off
>> In this case new_connection() does not trigger fail over.
>> /* If fail_over_on_backend_error is true, do failover.
>> * Otherwise, just exit this session.
>> if (pool_config->fail_over_on_backend_error)
> Just so that I'm clear, your recommendation is that I set
> fail_over_on_backend_error=on *AND* apply the patch you provided, and
> that will allow pgpool to failover an unresponsive postgres server,
> such that pgpool does not stop accepting client connections?
SRA OSS, Inc. Japan
More information about the pgpool-general