[pgpool-general: 2706] Re: existing connections did not close in 0 sec

Tatsuo Ishii ishii at postgresql.org
Sat Apr 5 18:57:10 JST 2014


I think it's documented:

recovery_timeout
    pgpool does not accept new connections during the second stage. If
    a client connects to pgpool during recovery processing, it will
    have to wait for the end of the recovery.

    This parameter specifies recovery timeout in sec. If this timeout
    is reached, pgpool cancels online recovery and accepts
    connections. 0 means no wait.

    This parameter can be changed without restarting.

Best regards,
--
Tatsuo Ishii
SRA OSS, Inc. Japan
English: http://www.sraoss.co.jp/index_en.php
Japanese: http://www.sraoss.co.jp

> Sorry, this was my error... the recovery_timeout on that server had
> been 'temporarily' set to 0. Mind you, the documentation doesn't say
> recovery_timeout is used to control the wait for existing connections
> to close. Nevertheless it was my mistake.
> 
> Thanks,
> Sean
> 
> On 14-04-03 08:43 AM, Sean Hogan wrote:
>> Can someone tell me what the following logging means?
>>
>> 2014-04-02 17:05:05 LOG:   pid 9415: 1st stage is done
>> 2014-04-02 17:05:05 LOG:   pid 9415: starting 2nd stage
>> 2014-04-02 17:05:05 LOG: pid 12418: pool_process_query: child
>> connection forced to terminate due to client_idle_limitis -1
>> 2014-04-02 17:05:05 LOG: pid 12418: pool_process_query: child
>> connection forced to terminate due to client_idle_limitis -1
>> 2014-04-02 17:05:05 LOG: pid 12154: pool_process_query: child
>> connection forced to terminate due to client_idle_limitis -1
>> 2014-04-02 17:05:05 LOG: pid 12154: pool_process_query: child
>> connection forced to terminate due to client_idle_limitis -1
>> 2014-04-02 17:05:05 LOG: pid 12813: pool_process_query: child
>> connection forced to terminate due to client_idle_limitis -1
>> 2014-04-02 17:05:05 LOG: pid 12813: pool_process_query: child
>> connection forced to terminate due to client_idle_limitis -1
>> *2014-04-02 17:05:05 ERROR: pid 9415: wait_connection_closed: existing
>> *connections did not close in 0 sec.**
>> **2014-04-02 17:05:05 ERROR: pid 9415: start_recovery: timeover for
>> **waiting connection closed*
>> 2014-04-02 17:05:05 LOG: pid 9662: pool_process_query: child
>> connection forced to terminate due to client_idle_limitis -1
>> 2014-04-02 17:05:05 LOG: pid 12641: pool_process_query: child
>> connection forced to terminate due to client_idle_limitis -1
>> ...
>> 2014-04-02 17:05:05 LOG: pid 17997: pool_process_query: child
>> connection forced to terminate due to client_idle_limitis -1
>>
>> I don't see any parameter set to 0 that would control how long pgpool
>> waits for existing connections to be closed.  Here are the Online
>> Recovery parameters from pgpool.conf:
>>
>> recovery_user = 'postgres'
>>                                    # Online recovery user
>> recovery_password = ''
>>                                    # Online recovery password
>> recovery_1st_stage_command = 'do-base-backup.sh'
>>                                    # Executes a command in first stage
>> recovery_2nd_stage_command = 'pgpool_recovery_pitr.sh'
>>                                    # Executes a command in second stage
>> recovery_timeout = 120
>>                                    # Timeout in seconds to wait for the
>>                                    # recovering node's postmaster to start up
>>                                    # 0 means no wait
>> client_idle_limit_in_recovery = -1
>>                                    # Client is disconnected after being idle
>>                                    # for that many seconds in the second stage
>>                                    # of online recovery
>>                                    # 0 means no disconnection
>>                                    # -1 means immediate disconnection
>>
>> Thanks,
>> Sean
> 


More information about the pgpool-general mailing list