[pgpool-general: 2348] Re: Problems with recovered master node.
Tatsuo Ishii
ishii at postgresql.org
Thu Dec 19 09:17:16 JST 2013
Have you installed pgpool_regclass?
Best regards,
--
Tatsuo Ishii
SRA OSS, Inc. Japan
English: http://www.sraoss.co.jp/index_en.php
Japanese: http://www.sraoss.co.jp
> Hi everyone.
>
> I'm having an issue with pgpool.
> First of all my configuration:
> 1 Server with pgpool-II version 3.3.2 (tokakiboshi)
> 3 Servers with:
> postgresql93-contrib-9.3.2-1PGDG.rhel6.x86_64
> postgresql93-devel-9.3.2-1PGDG.rhel6.x86_64
> postgresql93-libs-9.3.2-1PGDG.rhel6.x86_64
> postgresql93-9.3.2-1PGDG.rhel6.x86_64
> postgresql93-server-9.3.2-1PGDG.rhel6.x86_64
>
> All 4 servers are RHEL 6 machines. (Amazon AMI's actually)
>
> Pgpool is configured to have Master/Slave Nodes with replication
> and Load Balancing.
>
> #------------------------------------------------------------------------------
> # LOAD BALANCING MODE
> #------------------------------------------------------------------------------
>
> load_balance_mode = on
> # Activate load balancing mode
> # (change requires restart)
> ignore_leading_white_space = on
> # Ignore leading white spaces of each
> query
> white_function_list = ''
> # Comma separated list of function names
> # that don't write to database
> # Regexp are accepted
> black_function_list = 'nextval,setval'
> # Comma separated list of function names
> # that write to database
> # Regexp are accepted
>
>
> #------------------------------------------------------------------------------
> # MASTER/SLAVE MODE
> #------------------------------------------------------------------------------
>
> master_slave_mode = on
> # Activate master/slave mode
> # (change requires restart)
> master_slave_sub_mode = 'stream'
> # Master/slave sub mode
> # Valid values are combinations slony or
> # stream. Default is slony.
> # (change requires restart)
>
> # - Streaming -
>
> sr_check_period = 1
> # Streaming replication check period
> # Disabled (0) by default
> sr_check_user = 'postgres'
> # Streaming replication check user
> # This is necessary even if you disable
> # streaming replication delay check with
> # sr_check_period = 0
> sr_check_password = ''
> # Password for streaming replication
> check user
> delay_threshold = 1
> # Threshold before not dispatching
> query to standby node
> # Unit is in bytes
> # Disabled (0) by default
>
> # - Special commands -
>
> follow_master_command = '/bin/follow_master.sh %d %h %D %m %H %R'
> # Executes this command after master
> failover
> # Special values:
> # %d = node id
> # %h = host name
> # %p = port number
> # %D = database cluster path
> # %m = new master node id
> # %H = hostname of the new master node
> # %M = old master node id
> # %P = old primary node id
> # %r = new master port number
> # %R = new master database cluster path
> # %% = '%' character
>
>
> #All three nodes are configured like this
> backend_hostnamen = 'ip_node_n'
> backend_portn = 5432
> backend_weightn = 0
> backend_data_directoryn = '/var/lib/pgsql/9.3/data/'
> backend_flagn = 'ALLOW_TO_FAILOVER'
>
> I'm using repmgr to handle the replication in the nodes.
>
>
> My problem occurs when I kill the master node, everything works as
> expected and a slave takes it's place.
> My application continues working with no major issues until I decide to
> recover the dead master node.
>
> After that pgool starts sending this message:
> 2013-12-18 17:19:07 LOG: pid 30801: do_child: exits with status 1 due
> to error
> 2013-12-18 17:19:10 LOG: pid 30802: pool_send_and_wait: Error or
> notice message from backend: : DB node id: 0 backend pid: 27585
> statement: ROLLBACK message: there is no transaction in progress
> 2013-12-18 17:19:10 ERROR: pid 30802: read_kind_from_backend: 1 th kind
> C does not match with master or majority connection kind N
> 2013-12-18 17:19:10 ERROR: pid 30802: kind mismatch among backends.
> Possible last query was: "ROLLBACK" kind details are: 0[N: there is no
> transaction in progress] 1[C]
>
> And I identified that the problem is that pgpool is sending a rollback
> to the old master node [node 0] (Something illegal as far as I know) and
> then all the transaction is cancelled and my application fails.
> If I promote the old master again, then the application works with no
> problem.
>
> Anyone has an idea why is this ocurring?
>
> Regards!
>
>
>
> --
>
>
> Be aware that if you reply directly to this message, your reply may not be
> secure. Do not send us communications that contain unencrypted confidential
> information such as passwords, account numbers, or Social Security numbers.
>
> This message, including any attachments, is for the sole use of the
> intended recipient(s) and may contain confidential and privileged
> information. If you are not the intended recipient, please destroy all
> copies of this message and any attachments. In addition, please notify
> Gazzang immediately by email to info at gazzang.com.
> _______________________________________________
> pgpool-general mailing list
> pgpool-general at pgpool.net
> http://www.pgpool.net/mailman/listinfo/pgpool-general
More information about the pgpool-general
mailing list