<div>Please find attached file, It contains more feedback from customer. Thanks.</div><div><br></div>Best Regards,<div>Asif Naeem<br><br><div class="gmail_quote">On Sun, Apr 28, 2013 at 3:25 PM, Asif Naeem <span dir="ltr">&lt;<a href="mailto:anaeem.it@gmail.com" target="_blank">anaeem.it@gmail.com</a>&gt;</span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div>Hi Tatsuo,<br><br><div>Please find the attach file, it contains pgpool log information with details. Thanks.<br><br>
Best Regards,<br>Asif Naeem</div><div><br></div><div class="gmail_quote"><div class="im">On Mon, Apr 22, 2013 at 3:34 AM, Tatsuo Ishii <span dir="ltr">&lt;<a href="mailto:ishii@postgresql.org" target="_blank">ishii@postgresql.org</a>&gt;</span> wrote:<br>

</div><div><div class="h5"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Can you please show pgpool log?<br>
--<br>
Tatsuo Ishii<br>
SRA OSS, Inc. Japan<br>
English: <a href="http://www.sraoss.co.jp/index_en.php" target="_blank">http://www.sraoss.co.jp/index_en.php</a><br>
Japanese: <a href="http://www.sraoss.co.jp" target="_blank">http://www.sraoss.co.jp</a><br>
<div><br>
&gt; Hi,<br>
&gt;<br>
&gt; There is unexpected behavior in pgpool2 that seems to be a bug. Please find<br>
&gt; the details as following i.e.<br>
&gt;<br>
&gt; Phenomenon<br>
&gt;<br>
&gt;&gt; pgpool2 configuration option &quot;follow_master_command&quot; special character %H<br>
&gt;&gt; (Hostname of the new master node) is not working as expected<br>
&gt;&gt; In master slave mode after failover, 2nd node become new master but got<br>
&gt;&gt; unexpected hostname (via %H). Please find attached pgpool.conf for details.<br>
&gt;<br>
&gt;<br>
&gt; Versions<br>
&gt;<br>
&gt;&gt; OS version: RHEL - 64<br>
&gt;&gt; pgpool version: pgpool-II version 3.2.1 (namameboshi)<br>
&gt;<br>
&gt;<br>
</div>&gt; *Details/Observations* :-<br>
<div><div>&gt;<br>
&gt;&gt; At Start<br>
&gt;<br>
&gt;&gt;  node_id | hostname | port | status | lb_weight |  role<br>
&gt;&gt; ---------+----------+------+--------+-----------+---------<br>
&gt;&gt;  0       | dmp02    | 5444 | 2      | 0.333333  | primary<br>
&gt;&gt;  1       | dmp03    | 5444 | 2      | 0.333333  | standby<br>
&gt;&gt;  2       | dmp04    | 5444 | 2      | 0.333333  | standby<br>
&gt;&gt;<br>
&gt;<br>
&gt;<br>
&gt;&gt; Failover arguments when the user stopped DMP02.<br>
&gt;<br>
&gt;&gt; 2013îN 2åé 8ì˙ ã‡ójì˙ 12:44:12 JST<br>
&gt;<br>
&gt; FAILED_NODE_ID =0<br>
&gt;&gt; FAILED_NODE_NAME=dmp02<br>
&gt;&gt; FAILED_NODE_PORT=5444<br>
&gt;&gt; FAILED_NODE_DATA=/opt/PostgresPlus/9.2AS/data<br>
&gt;&gt; NEW_MASTER_ID =1<br>
&gt;&gt; OLD_MASTER_ID =0<br>
&gt;&gt; NEW_MASTER_NAME =dmp03<br>
&gt;&gt; OLD_PRIMARY_ID =0<br>
&gt;&gt; NEW_MASTER_DATA =/opt/PostgresPlus/9.2AS/data<br>
&gt;&gt; 0<br>
&gt;&gt;<br>
&gt;<br>
&gt;<br>
&gt;&gt; Then, these arguments told user that the master node has been changed<br>
&gt;<br>
&gt;&gt; 2013îN 2åé 8ì˙ ã‡ójì˙ 12:44:13 JST<br>
&gt;&gt; FAILED_NODE_ID =0<br>
&gt;&gt; FAILED_NODE_NAME=dmp02<br>
&gt;&gt; FAILED_NODE_PORT=5444<br>
&gt;&gt; FAILED_NODE_DATA=/opt/PostgresPlus/9.2AS/data<br>
&gt;&gt; NEW_MASTER_ID =1<br>
&gt;&gt; OLD_MASTER_ID =0<br>
&gt;&gt; NEW_MASTER_NAME =dmp03<br>
&gt;&gt; OLD_PRIMARY_ID =0<br>
&gt;&gt; NEW_MASTER_DATA =/opt/PostgresPlus/9.2AS/data<br>
&gt;&gt; 2013îN 2åé 8ì˙ ã‡ójì˙ 12:44:17 JST<br>
&gt;&gt; FAILED_NODE_ID =2<br>
&gt;&gt; FAILED_NODE_NAME=dmp04<br>
&gt;&gt; FAILED_NODE_PORT=5444<br>
&gt;&gt; FAILED_NODE_DATA=/opt/PostgresPlus/9.2AS/data<br>
&gt;&gt; NEW_MASTER_ID =1<br>
&gt;&gt; OLD_MASTER_ID =0<br>
</div></div>&gt;&gt; NEW_MASTER_NAME =dmp02  *&lt;--- *** The master name is unexpected ****<br>
<div><div>&gt;&gt; OLD_PRIMARY_ID =0<br>
&gt;&gt; NEW_MASTER_DATA =/opt/PostgresPlus/9.2AS/data<br>
&gt;&gt;<br>
&gt;<br>
&gt;<br>
&gt;&gt;  node_id | hostname | port | status | lb_weight |  role<br>
&gt;&gt; ---------+----------+------+--------+-----------+---------<br>
&gt;&gt;  0       | dmp02    | 5444 | 2      | 0.333333  | standby<br>
&gt;&gt;  1       | dmp03    | 5444 | 2      | 0.333333  | primary<br>
&gt;&gt;  2       | dmp04    | 5444 | 2      | 0.333333  | standby<br>
&gt;&gt;<br>
&gt;<br>
&gt;<br>
&gt;&gt;   pid  | usesysid |   usename    | application_name |  client_addr  |<br>
&gt;&gt; client_hostname | client_port |    backend_start                 |   state<br>
&gt;&gt;   | sent_location | write_location | flush_location | replay_location |<br>
&gt;&gt; sync_priority | sync_state<br>
&gt;&gt;<br>
&gt;&gt; -------+----------+--------------+------------------+---------------+-----------------+-------------+----------------------------------+-----------+---------------+----------------+----------------+-----------------+---------------+------------<br>


&gt;&gt;  20641 |       10 | enterprisedb | dmp02            | 172.24.217.23 |<br>
&gt;&gt;             |       16948 | 08-FEB-13 17:39:44.078173 +09:00 | streaming |<br>
&gt;&gt; 14/C50000E0   | 14/C50000E0    | 14/C50000E0    | 14/C50000E0     |<br>
&gt;&gt;     0 | async<br>
&gt;&gt; (1 çs)<br>
&gt;&gt;<br>
&gt;<br>
&gt; There is one pg_stat_replication record because dmp04 is connecting to dmp02<br>
&gt;<br>
&gt; This phenomenon is reproduced by user. What we need to do is just make the<br>
&gt; scripts like follow_master.sh and launch pgpool process with -F [path to<br>
&gt; pcp.conf].<br>
&gt;<br>
&gt; 1. Before failover<br>
&gt;<br>
&gt;&gt; -bash-3.2$ psql -h 10.1.1.187 -p 9999 -c &quot;show pool_nodes&quot;<br>
&gt;&gt; node_id | hostname | port | status | lb_weight | role<br>
&gt;&gt; ---------+----------+------+--------+-----------+---------<br>
&gt;&gt; 0 | slave1 | 5444 | 2 | 0.333333 | primary<br>
&gt;&gt; 1 | slave2 | 5444 | 2 | 0.333333 | standby<br>
&gt;&gt; 2 | slave3 | 5444 | 2 | 0.333333 | standby<br>
&gt;&gt; (3 行)<br>
&gt;<br>
&gt;<br>
&gt; 2. We stopped slave 1 node with &quot;pg_ctl -D /data -m immediate stop&quot;.<br>
&gt;<br>
&gt; 3. After failover<br>
&gt;<br>
&gt;&gt; -bash-3.2$ psql -h 10.1.1.187 -p 9999 -c &quot;show pool_nodes&quot;<br>
&gt;&gt; node_id | hostname | port | status | lb_weight | role<br>
&gt;&gt; ---------+----------+------+--------+-----------+---------<br>
&gt;&gt; 0 | slave1 | 5444 | 2 | 0.333333 | standby<br>
&gt;&gt; 1 | slave2 | 5444 | 2 | 0.333333 | primary<br>
&gt;&gt; 2 | slave3 | 5444 | 2 | 0.333333 | standby<br>
&gt;&gt; (3 行)<br>
&gt;<br>
&gt;<br>
&gt; 4. Then user got output like below after failover that is not expected that<br>
&gt; is present at the end of follow_master.sh.log i.e.<br>
&gt;<br>
&gt;&gt; NEW_MASTER_NAME =slave1<br>
&gt;<br>
&gt;<br>
&gt; [root@master1 ~]# cat /tmp/failover.sh.log<br>
&gt;<br>
&gt;&gt; 2013年 3月 13日 水曜日 11:36:28 JST<br>
&gt;&gt; FAILED_NODE_ID =0<br>
&gt;&gt; FAILED_NODE_NAME=slave1<br>
&gt;&gt; FAILED_NODE_PORT=5444<br>
&gt;&gt; FAILED_NODE_DATA=/opt/PostgresPlus/9.2AS/data<br>
&gt;&gt; NEW_MASTER_ID =1<br>
&gt;&gt; OLD_MASTER_ID =0<br>
&gt;&gt; NEW_MASTER_NAME =slave2<br>
&gt;&gt; OLD_PRIMARY_ID =0<br>
&gt;&gt; NEW_MASTER_DATA =/opt/PostgresPlus/9.2AS/data<br>
&gt;&gt; 0<br>
&gt;&gt;<br>
&gt; [root@master1 ~]# cat /tmp/follow_master.sh.log<br>
&gt;<br>
&gt;&gt; 2013年 3月 13日 水曜日 11:36:30 JST<br>
&gt;&gt; FAILED_NODE_ID =0<br>
&gt;&gt; FAILED_NODE_NAME=slave1<br>
&gt;&gt; FAILED_NODE_PORT=5444<br>
&gt;&gt; FAILED_NODE_DATA=/opt/PostgresPlus/9.2AS/data<br>
&gt;&gt; NEW_MASTER_ID =1<br>
&gt;&gt; OLD_MASTER_ID =0<br>
&gt;&gt; NEW_MASTER_NAME =slave2<br>
&gt;&gt; OLD_PRIMARY_ID =0<br>
&gt;&gt; NEW_MASTER_DATA =/opt/PostgresPlus/9.2AS/data<br>
&gt;&gt; 2013年 3月 13日 水曜日 11:36:32 JST<br>
&gt;&gt; FAILED_NODE_ID =2<br>
&gt;&gt; FAILED_NODE_NAME=slave3<br>
&gt;&gt; FAILED_NODE_PORT=5444<br>
&gt;&gt; FAILED_NODE_DATA=/opt/PostgresPlus/9.2AS/data<br>
&gt;&gt; NEW_MASTER_ID =1<br>
&gt;&gt; OLD_MASTER_ID =0<br>
</div></div>&gt;&gt; NEW_MASTER_NAME =*slave1<br>
&gt;&gt; *OLD_PRIMARY_ID =0<br>
<div><div>&gt;&gt; NEW_MASTER_DATA =/opt/PostgresPlus/9.2AS/data<br>
&gt;<br>
&gt;<br>
&gt; Please guide. Thanks.<br>
&gt;<br>
&gt; Best Regards,<br>
&gt; Asif Naeem<br>
</div></div></blockquote></div></div></div><br></div>
</blockquote></div><br></div>