[pgpool-hackers: 4364] Fix bug in find_primary_node_repeatedly()
    Bo Peng 
    pengbo at sraoss.co.jp
       
    Fri Aug  4 14:31:18 JST 2023
    
    
  
I found a bug that find_primary_node_repeatedly() doesn't terminate within search_primary_node_timeout.
Pgpool-II was looking for primary node every second, below is the code:
    for (sec = 0; (pool_config->search_primary_node_timeout == 0 ||
                   sec < pool_config->search_primary_node_timeout); sec++)
    {
        node_id = find_primary_node();
        if (node_id != -1)
            break;
        pool_sleep(1);
    }
If the error is returned immediately, there is no problem,
but in the case of a network failure, it will take longer than the value set in "search_primary_node_timeout".
This commit fixed this problem:
https://git.postgresql.org/gitweb/?p=pgpool2.git;a=commit;h=7db55fa23dec0c10099459fb28d1108746835879
This commit also fixed an unnecessary connection retry.
-- 
Bo Peng <pengbo at sraoss.co.jp>
SRA OSS LLC
TEL: 03-5979-2701 FAX: 03-5979-2702
URL: https://www.sraoss.co.jp/
    
    
More information about the pgpool-hackers
mailing list