<html><head></head><body><div style="font-family:Helvetica Neue, Helvetica, Arial, sans-serif;font-size:16px;"><div><div>I did a test with the modified code and it is now working correctly. I have patched the 3.7.3 code (I patched it manually by editing the main.c on the line shown in your patch file)</div><div><br></div><div>By the way, I found a git repository here&nbsp;<a href="https://github.com/pgpool/pgpool2" rel="nofollow" target="_blank" class="">https://github.com/pgpool/pgpool2</a>&nbsp;but I was wondering if this git repo was the real one ? It does not seem to be maintained, is it ?</div><div><br></div><div>Thanks again for the good support.</div><div><br></div><div class="ydp9716dc1esignature">Pierre</div></div>
            <div><br></div><div><br></div>
            
            <div id="ydp88f05cceyahoo_quoted_6949901085" class="ydp88f05cceyahoo_quoted">
                <div style="font-family:'Helvetica Neue', Helvetica, Arial, sans-serif;font-size:13px;color:#26282a;">
                    
                    <div>
                        On Saturday, May 19, 2018, 9:33:07 AM GMT+2, Tatsuo Ishii &lt;ishii@sraoss.co.jp&gt; wrote:
                    </div>
                    <div><br></div>
                    <div><br></div>
                    <div><div dir="ltr">Have a nice week-end too! I am looking forward to hearing from you<br clear="none">after coming back. Please don't hesitate to ask me regarding applying<br clear="none">the patch.<br clear="none"><br clear="none">Best regards,<br clear="none">--<br clear="none">Tatsuo Ishii<br clear="none">SRA OSS, Inc. Japan<br clear="none">English: <a shape="rect" href="http://www.sraoss.co.jp/index_en.php" rel="nofollow" target="_blank">http://www.sraoss.co.jp/index_en.php</a><br clear="none">Japanese:<a shape="rect" href="http://www.sraoss.co.jp" rel="nofollow" target="_blank">http://www.sraoss.co.jp</a><div class="ydp88f05cceyqt9730693420" id="ydp88f05cceyqtfd42811"><br clear="none"><br clear="none">&gt; Hi Tatsuo<br clear="none">&gt; <br clear="none">&gt; Thanks for the prompt response and for the patch ! I am glad you could reproduce it.<br clear="none">&gt; <br clear="none">&gt; I am leaving now for a long week-end (monday is holiday in Belgium) and I am not familiar with patches to do it right now, but I'll definitively try when I am back. <br clear="none">&gt; <br clear="none">&gt; Have a good week-end<br clear="none">&gt; Pierre <br clear="none">&gt; <br clear="none">&gt;&nbsp; &nbsp;  On Saturday, May 19, 2018, 3:50:28 AM GMT+2, Tatsuo Ishii &lt;<a shape="rect" href="mailto:ishii@sraoss.co.jp" rel="nofollow" target="_blank">ishii@sraoss.co.jp</a>&gt; wrote:&nbsp; <br clear="none">&gt;&nbsp; <br clear="none">&gt;&nbsp; Pierre,<br clear="none">&gt; <br clear="none">&gt;&gt; Hi,<br clear="none">&gt;&gt; I have a problem with pgpool 3.7.2 and pgpool 3.7.3, but not with pgpool 3.7.1 so it might be a bug.<br clear="none">&gt;&gt; When there is a failover from node 1 to node 0 then the parameter %P (old primary id) which is passed to the failover script is incorrect. It says 0 instead of 1. I encounter the error systematically when I do a first failover from node 0 to node 1, then a recovery of node 0, then a new failover from node 1 to node 0. In this new failover - from node 1 to node 0 - the parameter old_primary_id is not correctly passed.<br clear="none">&gt;&gt; I have reverted back to pgpool 3.7.1 and the problem has disappeared.<br clear="none">&gt;&gt; My config, for failover_command, is:<br clear="none">&gt;&gt; failover_command = '/scripts/failover.sh %d %h %p %D %m %H %M %P %r %R'&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;# Executes this command at failover&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;# Special values:&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;#&nbsp; &nbsp;%d = node id&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;#&nbsp; &nbsp;%h = host name&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;#&nbsp; &nbsp;%p = port number&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;#&nbsp; &nbsp;%D = database cluster path&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;#&nbsp; &nbsp;%m = new master node id&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;#&nbsp; &nbsp;%H = hostname of the new master node&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;#&nbsp; &nbsp;%M = old master node id&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;#&nbsp; &nbsp;%P = old primary node id&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;#&nbsp; &nbsp;%r = new master port number<br clear="none">&gt;&gt; and in the log I see that the parameter %P is incorrect with pgpool 3.7.3 and pgpool 3.7.2 but that it is correct with pgpool 3.7.1<br clear="none">&gt;&gt; I can provide more logs and configuration if needed<br clear="none">&gt;&gt; Kind regards,&nbsp;<br clear="none">&gt;&gt; Pierre <br clear="none">&gt; <br clear="none">&gt; Thanks for the report. I was able to reproduce the problem. I think<br clear="none">&gt; problem with 3.7.2 and 3.7.3 is, they pass node id 0 if current<br clear="none">&gt; primary node's status is down. Of course the status is down because<br clear="none">&gt; it's the reason why the failover script gets called:-&lt; 3.7.1 does not<br clear="none">&gt; check the primary node status. So it correctly passes the failed<br clear="none">&gt; primary node id.<br clear="none">&gt; <br clear="none">&gt; I think the fix would be passes the primary node id regardless the<br clear="none">&gt; status. Attached one line patch does the trick. At least it worked for<br clear="none">&gt; me. So can you please try it out?<br clear="none">&gt; <br clear="none">&gt; Best regards,<br clear="none">&gt; --<br clear="none">&gt; Tatsuo Ishii<br clear="none">&gt; SRA OSS, Inc. Japan<br clear="none">&gt; English: <a shape="rect" href="http://www.sraoss.co.jp/index_en.php" rel="nofollow" target="_blank">http://www.sraoss.co.jp/index_en.php</a><br clear="none">&gt; Japanese:<a shape="rect" href="http://www.sraoss.co.jp " rel="nofollow" target="_blank">http://www.sraoss.co.jp </a> </div></div></div>
                </div>
            </div></div></body></html>