[pgpool-general: 3074] Re: Failover - new primary selection process?

Tatsuo Ishii ishii at postgresql.org
Tue Jul 29 07:49:52 JST 2014


> Sorry for the delay in getting this to you, Ishii-san. All of my VM's
> were powered down after the chassis received a weekend upgrade.
> 
> The log message I was referring to is (from a failover test performed
> last week):
> 
> 2014-07-23 24:54:56 LOG: pid 70166: pgpool_down: I'm *oldest* so
> standing for master

I think "watchdog" subsystem of pgpool-II emits the message and I
believe "master" does not mean PostgreSQL master or primary node,
rather pgpool-II master of watchdog.

Yugo should be familiar with this. Yugo?

> This is written almost immediately before ifconfig brings up the IP
> alias address and before the failover_command is executed. That's what
> led me to my comments, although as I admitted, I had not read the code
> in this area. If selection is just by sequential node ID, that's a
> little misleading.
> 
> On 7/28/2014 7:05 AM, Tatsuo Ishii wrote:
>> What are you referring to error message? I do not see anything like
>> "I'm the oldest, so assuming the master role." message in pgpool-II
>> code anywhere.
>>
>> Best regards,
>> --
>> Tatsuo Ishii
>> SRA OSS, Inc. Japan
>> English: http://www.sraoss.co.jp/index_en.php
>> Japanese:http://www.sraoss.co.jp
>>
>>> Then, I hate to say it, Ishii-san, but your log message is a bit
>>> misleading. For instance, I always see a message during a failover
>>> where the standby claims, "I'm the oldest, so assuming the master
>>> role." So, maybe it should just "I have the lowest remaining node
>>> number, so I'm assuming the master role."  That wouldn't imply logic
>>> based on time, only sequences.
>>>
>>> Sent from my iPad
>>>
>>>> On Jul 28, 2014, at 3:20 AM, Tatsuo Ishii <ishii at postgresql.org>
>>>> wrote:
>>>>
>>>> No. Pgpool-II has no idea which server has been running longer.
>>>>
>>>> Pgpool-II has no built-in logic to choose next
>>>> to-be-primary-candidate. Which slave node will be promoted next time
>>>> is completely depending on your failover script. In general most
>>>> people specifies the candidate slave as the master node, which has the
>>>> yonguest node number among live slave nodes (%m in failover script).
>>>> Example: you have node 0 primary, node 1&2 standby.
>>>>
>>>> 1) node 0 is down.
>>>>
>>>> 2) node 1 is chosen as the next primary because it's the youngest live
>>>> node (master).
>>>>
>>>> 3) node 1 is down.
>>>>
>>>> 4) node 2 is chosen as the next primary because it's the youngest live
>>>> node (master).
>>>>
>>>> Best regards,
>>>> --
>>>> Tatsuo Ishii
>>>> SRA OSS, Inc. Japan
>>>> English: http://www.sraoss.co.jp/index_en.php
>>>> Japanese:http://www.sraoss.co.jp
>>>>
>>>>> Hey jay, thank you for the replay.
>>>>> Is this is a formal conclusion? Maybe the oldest is the one with the
>>>>> smaller ID ?
>>>>>
>>>>>
>>>>>
>>>>>> On Sun, Jul 27, 2014 at 2:50 PM, <jayknowsunix at gmail.com> wrote:
>>>>>>
>>>>>> Guy,
>>>>>>
>>>>>> I run a master with 2 slaves. During a failover, I always see the
>>>>>> oldest
>>>>>> slave promoted to master. So, the selection is based on the server
>>>>>> which
>>>>>> has been running longer.
>>>>>>
>>>>>> --
>>>>>> Jay
>>>>>>
>>>>>> Sent from my iPad
>>>>>>
>>>>>>> On Jul 27, 2014, at 3:48 AM, Guy Meler <melguy at gmail.com> wrote:
>>>>>>>
>>>>>>> Hey :)
>>>>>>> In master/slave mode, what is the algorithm for choosing the next
>>>>>> available primary backend?
>>>>>>> I want to make sure that if primary in site A goes down, than the next
>>>>>> available primary is in the same site.
>>>>>>> Thank you
>>>>>>>
>>>>>>> _______________________________________________
>>>>>>> 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