[pgpool-general: 96] Re: Pgpool disconnect clients when recovery nodes.
Joaquin Llano
joaquin.llano at cpxextremadura.com
Sat Dec 17 00:31:25 JST 2011
Hi again.
Sorry I don't explained wery well my case.
Initially I have two nodes, A (master) and B (slave).
If B fails and I recover it there is no problem, clients stay connected and A is still the master node.
But if then A fails, B promotes to master, trigger file is created ... If I recover A then clients are disconnected.
Then if B fails (so A becomes master), when I recover B clients stay connected.
So the problem only occurs when A fails.
Thans again
Regards
----- Mensaje original -----
De: "Tatsuo Ishii" <ishii at postgresql.org>
Para: "joaquin llano" <joaquin.llano at cpxextremadura.com>
CC: pgpool-general at pgpool.net
Enviados: Viernes, 9 de Diciembre 2011 13:53:47
Asunto: Re: [pgpool-general: 78] Re: Pgpool disconnect clients when recovery nodes.
By definition of streaming replication, you can only recover slave.
Suppose we have a master (node A) and a slave (node B).
1) A fails and B becomes master.
2) A is recovered and now A is slave.
So clients are never disconnected when a node is recovered in
streaming replication.
--
Tatsuo Ishii
SRA OSS, Inc. Japan
English: http://www.sraoss.co.jp/index_en.php
Japanese: http://www.sraoss.co.jp
> Hi again.
>
> I have one more question.
>
> If the node that fails is the master, when I recover it, clients are disconnected. It is ok?
>
> When I recover slave node, clients aren't disconnected.
>
> Thanks again.
>
> ----- Mensaje original -----
>
> De: "Tatsuo Ishii" <ishii at postgresql.org>
> Para: "joaquin llano" <joaquin.llano at cpxextremadura.com>
> CC: pgpool-general at pgpool.net
> Enviados: Miércoles, 7 de Diciembre 2011 14:48:03
> Asunto: Re: [pgpool-general: 51] Re: Pgpool disconnect clients when recovery nodes.
>
>> Hi again.
>>
>> First of all thanks for your advice Tatsuo.
>
> You are welcome!
>
>> I've compiled and installed Pgpool 3.1.1.
>>
>> Now when recovery a node clients aren't disconnected. But they are disconnected when a node fails (not matter if the node is primary or slave).
>>
>> Is there any way to no disconnect clients when a node fails?
>>
>> PostgreSQL version is 9.1.1.
>>
>> Thanks again.
>
> Sorry but currently there's no way to prevent it.
> --
> Tatsuo Ishii
> SRA OSS, Inc. Japan
> English: http://www.sraoss.co.jp/index_en.php
> Japanese: http://www.sraoss.co.jp
>
>> ----- Mensaje original -----
>>
>> De: "Tatsuo Ishii" <ishii at postgresql.org>
>> Para: "joaquin llano" <joaquin.llano at cpxextremadura.com>
>> CC: pgpool-general at pgpool.net
>> Enviados: Martes, 29 de Noviembre 2011 13:00:16
>> Asunto: Re: [pgpool-general: 10] Pgpool disconnect clients when recovery nodes.
>>
>> With pgpool's native replication mode, there's no way to avoid
>> disconnection to clients at recovery.
>>
>> In pgpool-II 3.1 or later, with streaming replication mode and
>> recovery does not disconnect existing client connections.
>>
>>>From pgpool-II 3.1's "Enhancements" in NEWS:
>>
>> - Enhance online recovery in streaming replication mode.
>> Now restarting pgpool-II children is avoided when recovery finished. So
>> existing sessions can be continued while doing online recovery(Tatsuo)
>> --
>> Tatsuo Ishii
>> SRA OSS, Inc. Japan
>> English: http://www.sraoss.co.jp/index_en.php
>> Japanese: http://www.sraoss.co.jp
>>
>>> I have a cluster with 2 postgresql 8.4 backends and 1 pgpool2 3.0.3 version. They are running on Debian Squeeze using backports repository.
>>>
>>> When I try to recovery one of the backends using pcp_recovery_node its fails to recover until all clients connected to pgpool are disconnected.
>>>
>>> Also I tried streaming replication in other machines with PostgreSQL 9.1 but when recover a backend Pgpool drops all clients connected to it.
>>>
>>> Is there ant way to Pgpool maintain clients connected when I recover a dead node?
>>>
>>> This is my pgpool.conf for PostgreSQL 8.4 nodes.
>>>
>>> listen_addresses = '*'
>>> port = 5432
>>> pcp_port = 9898
>>> socket_dir = '/var/run/postgresql'
>>> pcp_socket_dir = '/var/run/postgresql'
>>> backend_socket_dir = '/var/run/postgresql'
>>> pcp_timeout = 10
>>> num_init_children = 32
>>> max_pool = 4
>>> child_life_time = 300
>>> connection_life_time = 0
>>> child_max_connections = 0
>>> client_idle_limit = 0
>>> authentication_timeout = 60
>>> logdir = '/var/run/postgresql'
>>> pid_file_name = '/var/run/postgresql/pgpool.pid'
>>> replication_mode = true
>>> load_balance_mode = true
>>> replication_stop_on_mismatch = true
>>> replicate_select = false
>>> reset_query_list = 'ABORT; RESET ALL; SET SESSION AUTHORIZATION DEFAULT'
>>> print_timestamp = true
>>> master_slave_mode = false
>>> connection_cache = true
>>> health_check_timeout = 3
>>> health_check_period = 5
>>> health_check_user = 'pgpool2'
>>> failover_command = 'pgpool-failover %d %h %p %D %m %M'
>>> failback_command = 'pgpool-failback %d %h %p %D %m %M'
>>> insert_lock = true
>>> ignore_leading_white_space = true
>>> log_statement = false
>>> log_connections = false
>>> log_hostname = false
>>> parallel_mode = false
>>> enable_query_cache = false
>>> pgpool2_hostname = 'ppsqlft1'
>>> system_db_hostname = 'localhost'
>>> system_db_port = 5432
>>> system_db_dbname = 'pgpool'
>>> system_db_schema = 'pgpool_catalog'
>>> system_db_user = 'pgpool'
>>> system_db_password = ''
>>> backend_hostname0 = 'PPSQLBK1'
>>> backend_port0 = 5432
>>> backend_weight0 = 1
>>> backend_data_directory0 = '/var/lib/postgresql/8.4/main'
>>> backend_hostname1 = 'PPSQLBK2'
>>> backend_port1 = 5432
>>> backend_weight1 = 1
>>> backend_data_directory1 = '/var/lib/postgresql/8.4/main'
>>> enable_pool_hba = true
>>> recovery_user = 'pgpool2'
>>> recovery_password = ''
>>> recovery_1st_stage_command = 'base-backup'
>>> recovery_2nd_stage_command = 'pgpool-recovery-pitr'
>>> recovery_timeout = 90
>>> client_idle_limit_in_recovery = 10
>>>
>>>
>>> Thanks for your help
>>>
>>> --
>>>
>>> Joaquín Manuel Llano Montero
>>>
>>> ________________________________________
>>>
>>> C O MPAREX España S.A.
>>> C/ Severo Ochoa, 20
>>> 06800 Mérida (Badajoz) España
>>> phone: +34 924 373 573
>>> fax: +34 924 374 518
>>> mobile: +34 615 848 019
>>> email : joaquin.llano at comparex.es
>>> web: www.comparex.es
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.pgpool.net/pipermail/pgpool-general/attachments/20111216/8f9225cd/attachment.htm>
More information about the pgpool-general
mailing list