<div dir="ltr"><div class="gmail_default" style="font-family:arial,helvetica,sans-serif">Hello,</div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif"><br></div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif">

I'm trying to implement pgpool-II clustering + replication and am experiencing <i>very</i> poor performance.</div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif"><br></div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif">

Any assistance would be greatly appreciated.</div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif"><br></div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif"><b>Description</b>:</div>

<div class="gmail_default" style="font-family:arial,helvetica,sans-serif"><br></div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif">When pgpool is in front of PostgreSQL there is a significant loss in performance.</div>

<div class="gmail_default" style="font-family:arial,helvetica,sans-serif"><br></div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif"><b>Troubleshooting</b>:</div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif">

<br></div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif">1) Try different times of benchmarks:</div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif">* I have run pgbench (with and without -C), sysbench and real world SELECT statements.</div>

<div class="gmail_default" style="font-family:arial,helvetica,sans-serif"><br></div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif">2) Adjustment to connections, this hasn't made any noticeable performance difference from defaults.</div>

<div class="gmail_default" style="font-family:arial,helvetica,sans-serif"><br></div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif">3) Run pgpool with a single PostgreSQL server rather than a cluster of two.</div>

<div class="gmail_default" style="font-family:arial,helvetica,sans-serif">* I experience the exact same performance with a single node + pgpool as with a two node cluster.</div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif">

<br></div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif">2) Monitor hardware / VM performance:</div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif">* No iowait showing in vmstat</div>

<div class="gmail_default" style="font-family:arial,helvetica,sans-serif">* CPU 1 is around 90%, 2 around 70%, 3 around 50% etc...</div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif"><br></div>
<div class="gmail_default" style="font-family:arial,helvetica,sans-serif">
<br></div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif"><b>Environment</b>:</div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif"><br></div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif">

<b>Server</b>: Debian 7, x64 (Virtualised on XenServer 6.2), 8x Xen E5 2560 vCores, 8GB ECC RAM<br></div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif"><b>PG version</b>: PostgreSQL 9.3</div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif">

<div class="gmail_default"><b>PG-Pool Package</b>: 3.3.1-1.pgdg70+1<br></div><div><b>Storage</b>: iSCSI SAN (Shared), 12x 15K SAS Spindles, 10GbE connection<br></div></div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif">

<b>Network</b>: 2x 10GbE</div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif"><b>Layout</b>: 2x PostgreSQL servers (int-pgca-01, int-pgca-02), pgpool installed on the same server, <u>port 5432 is directly to PostgreSQL</u>, <u>5433 is to pgpool</u><br>

</div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif"><br></div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif"><b>Performance Information</b>:</div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif">

<br></div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif"><span style="font-size:13px;font-family:'Andale Mono'"># Clustered Test</span><br>
<span style="font-size:13px;font-family:Arial"></span><br>
<span style="font-size:13px;font-family:'Andale Mono'">postgres@int-pgca-01:~$ pgbench -j 8 -T 120 -c 16 -S -p 5433 bench_replication</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">starting vacuum...end.</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">transaction type: SELECT only</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">scaling factor: 75</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">query mode: simple</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">number of clients: 16</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">number of threads: 8</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">duration: 120 s</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">number of transactions actually processed: 3749277</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">tps = 31243.529780 (including connections establishing)</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">tps = 31254.610781 (excluding connections establishing)</span><br>
<span style="font-size:13px;font-family:Arial"></span><br>
<span style="font-size:13px;font-family:'Andale Mono'"># Unclustered Test</span><br>
<span style="font-size:13px;font-family:Arial"></span><br>
<span style="font-size:13px;font-family:'Andale Mono'">postgres@int-pgca-01:~$ pgbench -j 8 -T 120 -c 16 -S -p 5432 bench_replication</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">starting vacuum...end.</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">transaction type: SELECT only</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">scaling factor: 75</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">query mode: simple</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">number of clients: 16</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">number of threads: 8</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">duration: 120 s</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">number of transactions actually processed: 6268572</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">tps = 52237.871024 (including connections establishing)</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">tps = 52253.665169 (excluding connections establishing) </span><br>
<span style="font-size:13px;font-family:'Andale Mono'"> </span><br>
<span style="font-size:13px;font-family:Arial"></span><br>
<span style="font-size:13px;font-family:'Andale Mono'">--</span><br>
<span style="font-size:13px;font-family:Arial"></span><br>
<span style="font-size:13px;font-family:'Andale Mono'"># Clustered Test</span><br>
<span style="font-size:13px;font-family:Arial"></span><br>
<span style="font-size:13px;font-family:'Andale Mono'">root@int-pgca-01:~/0.4/sysbench# ./sysbench --pgsql-user=postgres --pgsql-password=password --pgsql-port=5433 --pgsql-db=sysbench --pgsql-host=localhost --db-driver=pgsql --oltp-read-only=on --oltp-test-mode=simple --init-rng --max-requests=0 --max-time=120 --num-threads=8 run --test=oltp</span><br>


<span style="font-size:13px;font-family:'Andale Mono'">sysbench 0.4.12:  multi-threaded system evaluation benchmark</span><br>
<span style="font-size:13px;font-family:Arial"></span><br>
<span style="font-size:13px;font-family:'Andale Mono'">Running the test with following options:</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">Number of threads: 8</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">Initializing random number generator from timer.</span><br>
<span style="font-size:13px;font-family:Arial"></span><br>
<span style="font-size:13px;font-family:'Andale Mono'">Random number generator seed is 0 and will be ignored</span><br>
<span style="font-size:13px;font-family:Arial"></span><br>
<span style="font-size:13px;font-family:Arial"></span><br>
<span style="font-size:13px;font-family:'Andale Mono'">Doing OLTP test.</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">Running simple OLTP test</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">Doing read-only test</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">Using Special distribution (12 iterations,  1 pct of values are returned in 75 pct cases)</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">Using "BEGIN" for starting transactions</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">Using auto_inc on the id column</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">Threads started!</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">Time limit exceeded, exiting...</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">(last message repeated 7 times)</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">Done.</span><br>
<span style="font-size:13px;font-family:Arial"></span><br>
<span style="font-size:13px;font-family:'Andale Mono'">OLTP test statistics:</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">    queries performed:</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">        read:                            683690</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">        write:                           0</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">        other:                           0</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">        total:                           683690</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">    transactions:                        683690 (5697.35 per sec.)</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">    deadlocks:                           0      (0.00 per sec.)</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">    read/write requests:                 683690 (5697.35 per sec.)</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">    other operations:                    0      (0.00 per sec.)</span><br>
<span style="font-size:13px;font-family:Arial"></span><br>
<span style="font-size:13px;font-family:'Andale Mono'">General statistics:</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">    total time:                          120.0013s</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">    total number of events:              683690</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">    total time taken by event execution: 953.1451</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">    response time:</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">         min:                                  0.44ms</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">         avg:                                  1.39ms</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">         max:                                 43.94ms</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">         approx.  95 percentile:               2.28ms</span><br>
<span style="font-size:13px;font-family:Arial"></span><br>
<span style="font-size:13px;font-family:'Andale Mono'">Threads fairness:</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">    events (avg/stddev):           85461.2500/27464.93</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">    execution time (avg/stddev):   119.1431/0.27</span><br>
<span style="font-size:13px;font-family:Arial"></span><br>
<span style="font-size:13px;font-family:Arial"></span><br>
<span style="font-size:13px;font-family:Arial"></span><br>
<span style="font-size:13px;font-family:'Andale Mono'"># Unclustered Test</span><br>
<span style="font-size:13px;font-family:Arial"></span><br>
<span style="font-size:13px;font-family:'Andale Mono'">root@int-pgca-01:~/0.4/sysbench# ./sysbench --pgsql-user=postgres --pgsql-password=password --pgsql-port=5432 --pgsql-db=sysbench --pgsql-host=localhost --db-driver=pgsql --oltp-read-only=on --oltp-test-mode=simple --init-rng --max-requests=0 --max-time=120 --num-threads=8 run --test=oltp</span><br>


<span style="font-size:13px;font-family:'Andale Mono'">sysbench 0.4.12:  multi-threaded system evaluation benchmark</span><br>
<span style="font-size:13px;font-family:Arial"></span><br>
<span style="font-size:13px;font-family:'Andale Mono'">Running the test with following options:</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">Number of threads: 8</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">Initializing random number generator from timer.</span><br>
<span style="font-size:13px;font-family:Arial"></span><br>
<span style="font-size:13px;font-family:'Andale Mono'">Random number generator seed is 0 and will be ignored</span><br>
<span style="font-size:13px;font-family:Arial"></span><br>
<span style="font-size:13px;font-family:Arial"></span><br>
<span style="font-size:13px;font-family:'Andale Mono'">Doing OLTP test.</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">Running simple OLTP test</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">Doing read-only test</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">Using Special distribution (12 iterations,  1 pct of values are returned in 75 pct cases)</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">Using "BEGIN" for starting transactions</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">Using auto_inc on the id column</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">Threads started!</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">Time limit exceeded, exiting...</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">(last message repeated 7 times)</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">Done.</span><br>
<span style="font-size:13px;font-family:Arial"></span><br>
<span style="font-size:13px;font-family:'Andale Mono'">OLTP test statistics:</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">    queries performed:</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">        read:                            5037163</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">        write:                           0</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">        other:                           0</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">        total:                           5037163</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">    transactions:                        5037163 (41976.19 per sec.)</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">    deadlocks:                           0      (0.00 per sec.)</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">    read/write requests:                 5037163 (41976.19 per sec.)</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">    other operations:                    0      (0.00 per sec.)</span><br>
<span style="font-size:13px;font-family:Arial"></span><br>
<span style="font-size:13px;font-family:'Andale Mono'">General statistics:</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">    total time:                          120.0005s</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">    total number of events:              5037163</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">    total time taken by event execution: 922.9731</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">    response time:</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">         min:                                  0.12ms</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">         avg:                                  0.18ms</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">         max:                                  7.78ms</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">         approx.  95 percentile:               0.25ms</span><br>
<span style="font-size:13px;font-family:Arial"></span><br>
<span style="font-size:13px;font-family:'Andale Mono'">Threads fairness:</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">    events (avg/stddev):           629645.3750/1562.43</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">    execution time (avg/stddev):   115.3716/0.02 </span><br>
<span style="font-size:13px;font-family:Arial"></span><br><br><b>Configuration Information</b>:<br>
<span style="font-size:13px;font-family:Arial"></span><br></div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif"><span style="font-size:13px;font-family:'Andale Mono'"># ----------------------------</span><br>


<span style="font-size:13px;font-family:'Andale Mono'"># pgPool-II configuration file</span><br>
<span style="font-size:13px;font-family:'Andale Mono'"># ----------------------------</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">#</span><br>
<span style="font-size:13px;font-family:'Andale Mono'"># This file consists of lines of the form:</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">#</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">#   name = value</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">#</span><br>
<span style="font-size:13px;font-family:'Andale Mono'"># Whitespace may be used.  Comments are introduced with "#" anywhere on a line.</span><br>
<span style="font-size:13px;font-family:'Andale Mono'"># The complete list of parameter names and allowed values can be found in the</span><br>
<span style="font-size:13px;font-family:'Andale Mono'"># pgPool-II documentation.</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">#</span><br>
<span style="font-size:13px;font-family:'Andale Mono'"># This file is read on server startup and when the server receives a SIGHUP</span><br>
<span style="font-size:13px;font-family:'Andale Mono'"># signal.  If you edit the file on a running system, you have to SIGHUP the</span><br>
<span style="font-size:13px;font-family:'Andale Mono'"># server for the changes to take effect, or use "pgpool reload".  Some</span><br>
<span style="font-size:13px;font-family:'Andale Mono'"># parameters, which are marked below, require a server shutdown and restart to</span><br>
<span style="font-size:13px;font-family:'Andale Mono'"># take effect.</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">#</span><br>
<span style="font-size:13px;font-family:Arial"></span><br>
<span style="font-size:13px;font-family:Arial"></span><br>
<span style="font-size:13px;font-family:'Andale Mono'">#------------------------------------------------------------------------------</span><br>
<span style="font-size:13px;font-family:'Andale Mono'"># CONNECTIONS</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">#------------------------------------------------------------------------------</span><br>
<span style="font-size:13px;font-family:Arial"></span><br>
<span style="font-size:13px;font-family:'Andale Mono'"># - pgpool Connection Settings -</span><br>
<span style="font-size:13px;font-family:Arial"></span><br>
<span style="font-size:13px;font-family:'Andale Mono'">listen_addresses = '*'</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # Host name or IP address to listen on:</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # '*' for all, '' for no TCP/IP connections</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # (change requires restart)</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">port = 5433</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # Port number</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # (change requires restart)</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">socket_dir = '/var/run/postgresql'</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # Unix domain socket path</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # The Debian package defaults to</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # /var/run/postgresql</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # (change requires restart)</span><br>
<span style="font-size:13px;font-family:Arial"></span><br>
<span style="font-size:13px;font-family:Arial"></span><br>
<span style="font-size:13px;font-family:'Andale Mono'"># - pgpool Communication Manager Connection Settings -</span><br>
<span style="font-size:13px;font-family:Arial"></span><br>
<span style="font-size:13px;font-family:'Andale Mono'">pcp_port = 9898</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # Port number for pcp</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # (change requires restart)</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">pcp_socket_dir = '/var/run/postgresql'</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # Unix domain socket path for pcp</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # The Debian package defaults to</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # /var/run/postgresql</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # (change requires restart)</span><br>
<span style="font-size:13px;font-family:Arial"></span><br>
<span style="font-size:13px;font-family:'Andale Mono'"># - Backend Connection Settings -</span><br>
<span style="font-size:13px;font-family:Arial"></span><br>
<span style="font-size:13px;font-family:'Andale Mono'">backend_hostname0 = 'int-pgca-01'</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">backend_port0 = 5432</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">backend_weight0 = 1</span><br>
<span style="font-size:13px;font-family:Arial"></span><br>
<span style="font-size:13px;font-family:'Andale Mono'">backend_data_directory0 = '/data'</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">backend_port0 = 5432</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">backend_weight0 = 1</span><br>
<span style="font-size:13px;font-family:Arial"></span><br>
<span style="font-size:13px;font-family:'Andale Mono'">backend_flag0 = 'ALLOW_TO_FAILOVER'</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">backend_port0 = 5432</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">backend_weight0 = 1</span><br>
<span style="font-size:13px;font-family:Arial"></span><br>
<span style="font-size:13px;font-family:Arial"></span><br>
<span style="font-size:13px;font-family:'Andale Mono'"># - Authentication -</span><br>
<span style="font-size:13px;font-family:Arial"></span><br>
<span style="font-size:13px;font-family:'Andale Mono'">enable_pool_hba = off</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # Use pool_hba.conf for client authentication</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">authentication_timeout = 60</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # Delay in seconds to complete client authentication</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # 0 means no timeout.</span><br>
<span style="font-size:13px;font-family:Arial"></span><br>
<span style="font-size:13px;font-family:'Andale Mono'"># - SSL Connections -</span><br>
<span style="font-size:13px;font-family:Arial"></span><br>
<span style="font-size:13px;font-family:'Andale Mono'">ssl = off</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # Enable SSL support</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # (change requires restart)</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">ssl_key = ''</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # Path to the SSL private key file</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # (change requires restart)</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">ssl_cert = ''</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # Path to the SSL public certificate file</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # (change requires restart)</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">ssl_ca_cert = ''</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # Path to a single PEM format file</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # containing CA root certificate(s)</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # (change requires restart)</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">ssl_ca_cert_dir = ''</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # Directory containing CA root certificate(s)</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # (change requires restart)</span><br>
<span style="font-size:13px;font-family:Arial"></span><br>
<span style="font-size:13px;font-family:Arial"></span><br>
<span style="font-size:13px;font-family:'Andale Mono'">#------------------------------------------------------------------------------</span><br>
<span style="font-size:13px;font-family:'Andale Mono'"># POOLS</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">#------------------------------------------------------------------------------</span><br>
<span style="font-size:13px;font-family:Arial"></span><br>
<span style="font-size:13px;font-family:'Andale Mono'"># - Pool size -</span><br>
<span style="font-size:13px;font-family:Arial"></span><br>
<span style="font-size:13px;font-family:'Andale Mono'">num_init_children = 64</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # Number of pools</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # (change requires restart)</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">max_pool = 8</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # Number of connections per pool</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # (change requires restart)</span><br>
<span style="font-size:13px;font-family:Arial"></span><br>
<span style="font-size:13px;font-family:'Andale Mono'"># - Life time -</span><br>
<span style="font-size:13px;font-family:Arial"></span><br>
<span style="font-size:13px;font-family:'Andale Mono'">child_life_time = 300</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # Pool exits after being idle for this many seconds</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">child_max_connections = 200</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # Pool exits after receiving that many connections</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # 0 means no exit</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">connection_life_time = 120</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # Connection to backend closes after being idle for this many seconds</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # 0 means no close</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">client_idle_limit = 25</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # Client is disconnected after being idle for that many seconds</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # (even inside an explicit transactions!)</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # 0 means no disconnection</span><br>
<span style="font-size:13px;font-family:Arial"></span><br>
<span style="font-size:13px;font-family:Arial"></span><br>
<span style="font-size:13px;font-family:'Andale Mono'">#------------------------------------------------------------------------------</span><br>
<span style="font-size:13px;font-family:'Andale Mono'"># LOGS</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">#------------------------------------------------------------------------------</span><br>
<span style="font-size:13px;font-family:Arial"></span><br>
<span style="font-size:13px;font-family:'Andale Mono'"># - Where to log -</span><br>
<span style="font-size:13px;font-family:Arial"></span><br>
<span style="font-size:13px;font-family:'Andale Mono'">log_destination = 'syslog'</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # Where to log</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # Valid values are combinations of stderr,</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # and syslog. Default to stderr.</span><br>
<span style="font-size:13px;font-family:Arial"></span><br>
<span style="font-size:13px;font-family:'Andale Mono'"># - What to log -</span><br>
<span style="font-size:13px;font-family:Arial"></span><br>
<span style="font-size:13px;font-family:'Andale Mono'">print_timestamp = on</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # Print timestamp on each line</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # (change requires restart)</span><br>
<span style="font-size:13px;font-family:Arial"></span><br>
<span style="font-size:13px;font-family:'Andale Mono'">log_connections = off</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # Log connections</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">log_hostname = off</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # Hostname will be shown in ps status</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # and in logs if connections are logged</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">log_statement = off</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # Log all statements</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">log_per_node_statement = off</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # Log all statements</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # with node and backend informations</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">log_standby_delay = 'none'</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # Log standby delay</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # Valid values are combinations of always,</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # if_over_threshold, none</span><br>
<span style="font-size:13px;font-family:Arial"></span><br>
<span style="font-size:13px;font-family:'Andale Mono'"># - Syslog specific -</span><br>
<span style="font-size:13px;font-family:Arial"></span><br>
<span style="font-size:13px;font-family:'Andale Mono'">syslog_facility = 'LOCAL0'</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # Syslog local facility. Default to LOCAL0</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">syslog_ident = 'pgpool'</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # Syslog program identification string</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # Default to 'pgpool'</span><br>
<span style="font-size:13px;font-family:Arial"></span><br>
<span style="font-size:13px;font-family:'Andale Mono'"># - Debug -</span><br>
<span style="font-size:13px;font-family:Arial"></span><br>
<span style="font-size:13px;font-family:'Andale Mono'">debug_level = 0</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # Debug message verbosity level</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # 0 means no message, 1 or more mean verbose</span><br>
<span style="font-size:13px;font-family:Arial"></span><br>
<span style="font-size:13px;font-family:Arial"></span><br>
<span style="font-size:13px;font-family:'Andale Mono'">#------------------------------------------------------------------------------</span><br>
<span style="font-size:13px;font-family:'Andale Mono'"># FILE LOCATIONS</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">#------------------------------------------------------------------------------</span><br>
<span style="font-size:13px;font-family:Arial"></span><br>
<span style="font-size:13px;font-family:'Andale Mono'">pid_file_name = '/var/run/postgresql/pgpool.pid'</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # PID file name</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # (change requires restart)</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">logdir = '/var/log/postgresql'</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # Directory of pgPool status file</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # (change requires restart)</span><br>
<span style="font-size:13px;font-family:Arial"></span><br>
<span style="font-size:13px;font-family:Arial"></span><br>
<span style="font-size:13px;font-family:'Andale Mono'">#------------------------------------------------------------------------------</span><br>
<span style="font-size:13px;font-family:'Andale Mono'"># CONNECTION POOLING</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">#------------------------------------------------------------------------------</span><br>
<span style="font-size:13px;font-family:Arial"></span><br>
<span style="font-size:13px;font-family:'Andale Mono'">connection_cache = on</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # Activate connection pools</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # (change requires restart)</span><br>
<span style="font-size:13px;font-family:Arial"></span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # Semicolon separated list of queries</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # to be issued at the end of a session</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # The default is for 8.3 and later</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">reset_query_list = 'ABORT; DISCARD ALL'</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # The following one is for 8.2 and before</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">#reset_query_list = 'ABORT; RESET ALL; SET SESSION AUTHORIZATION DEFAULT'</span><br>
<span style="font-size:13px;font-family:Arial"></span><br>
<span style="font-size:13px;font-family:Arial"></span><br>
<span style="font-size:13px;font-family:'Andale Mono'">#------------------------------------------------------------------------------</span><br>
<span style="font-size:13px;font-family:'Andale Mono'"># REPLICATION MODE</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">#------------------------------------------------------------------------------</span><br>
<span style="font-size:13px;font-family:Arial"></span><br>
<span style="font-size:13px;font-family:'Andale Mono'">replication_mode = on</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # Activate replication mode</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # (change requires restart)</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">replicate_select = off</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # Replicate SELECT statements</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # when in replication or parallel mode</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # replicate_select is higher priority than</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # load_balance_mode.</span><br>
<span style="font-size:13px;font-family:Arial"></span><br>
<span style="font-size:13px;font-family:'Andale Mono'">insert_lock = on</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # Automatically locks a dummy row or a table</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # with INSERT statements to keep SERIAL data</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # consistency</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # Without SERIAL, no lock will be issued</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">lobj_lock_table = ''</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # When rewriting lo_creat command in</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # replication mode, specify table name to</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # lock</span><br>
<span style="font-size:13px;font-family:Arial"></span><br>
<span style="font-size:13px;font-family:'Andale Mono'"># - Degenerate handling -</span><br>
<span style="font-size:13px;font-family:Arial"></span><br>
<span style="font-size:13px;font-family:'Andale Mono'">replication_stop_on_mismatch = off</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # On disagreement with the packet kind</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # sent from backend, degenerate the node</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # which is most likely "minority"</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # If off, just force to exit this session</span><br>
<span style="font-size:13px;font-family:Arial"></span><br>
<span style="font-size:13px;font-family:'Andale Mono'">failover_if_affected_tuples_mismatch = off</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # On disagreement with the number of affected</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # tuples in UPDATE/DELETE queries, then</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # degenerate the node which is most likely</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # "minority".</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # If off, just abort the transaction to</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # keep the consistency</span><br>
<span style="font-size:13px;font-family:Arial"></span><br>
<span style="font-size:13px;font-family:Arial"></span><br>
<span style="font-size:13px;font-family:'Andale Mono'">#------------------------------------------------------------------------------</span><br>
<span style="font-size:13px;font-family:'Andale Mono'"># LOAD BALANCING MODE</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">#------------------------------------------------------------------------------</span><br>
<span style="font-size:13px;font-family:Arial"></span><br>
<span style="font-size:13px;font-family:'Andale Mono'">load_balance_mode = on</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # Activate load balancing mode</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # (change requires restart)</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">ignore_leading_white_space = on</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # Ignore leading white spaces of each query</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">white_function_list = ''</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # Comma separated list of function names</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # that don't write to database</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # Regexp are accepted</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">black_function_list = 'nextval,setval'</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # Comma separated list of function names</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # that write to database</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # Regexp are accepted</span><br>
<span style="font-size:13px;font-family:Arial"></span><br>
<span style="font-size:13px;font-family:Arial"></span><br>
<span style="font-size:13px;font-family:'Andale Mono'">#------------------------------------------------------------------------------</span><br>
<span style="font-size:13px;font-family:'Andale Mono'"># MASTER/SLAVE MODE</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">#------------------------------------------------------------------------------</span><br>
<span style="font-size:13px;font-family:Arial"></span><br>
<span style="font-size:13px;font-family:'Andale Mono'">master_slave_mode = off</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # Activate master/slave mode</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # (change requires restart)</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">master_slave_sub_mode = 'slony'</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # Master/slave sub mode</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # Valid values are combinations slony or</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # stream. Default is slony.</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # (change requires restart)</span><br>
<span style="font-size:13px;font-family:Arial"></span><br>
<span style="font-size:13px;font-family:'Andale Mono'"># - Streaming -</span><br>
<span style="font-size:13px;font-family:Arial"></span><br>
<span style="font-size:13px;font-family:'Andale Mono'">sr_check_period = 0</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # Streaming replication check period</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # Disabled (0) by default</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">sr_check_user = 'nobody'</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # Streaming replication check user</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # This is necessary even if you disable</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # streaming replication delay check with</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # sr_check_period = 0</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">sr_check_password = ''</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # Password for streaming replication check user</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">delay_threshold = 0</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # Threshold before not dispatching query to standby node</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # Unit is in bytes</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # Disabled (0) by default</span><br>
<span style="font-size:13px;font-family:Arial"></span><br>
<span style="font-size:13px;font-family:'Andale Mono'"># - Special commands -</span><br>
<span style="font-size:13px;font-family:Arial"></span><br>
<span style="font-size:13px;font-family:'Andale Mono'">follow_master_command = ''</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # Executes this command after master failover</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # Special values:</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   #   %d = node id</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   #   %h = host name</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   #   %p = port number</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   #   %D = database cluster path</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   #   %m = new master node id</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   #   %H = hostname of the new master node</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   #   %M = old master node id</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   #   %P = old primary node id</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   #   %% = '%' character</span><br>
<span style="font-size:13px;font-family:Arial"></span><br>
<span style="font-size:13px;font-family:Arial"></span><br>
<span style="font-size:13px;font-family:'Andale Mono'">#------------------------------------------------------------------------------</span><br>
<span style="font-size:13px;font-family:'Andale Mono'"># PARALLEL MODE AND QUERY CACHE</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">#------------------------------------------------------------------------------</span><br>
<span style="font-size:13px;font-family:Arial"></span><br>
<span style="font-size:13px;font-family:'Andale Mono'">parallel_mode = off</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # Activates parallel query mode</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # (change requires restart)</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">enable_query_cache = off</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # Activates query cache</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # (change requires restart)</span><br>
<span style="font-size:13px;font-family:Arial"></span><br>
<span style="font-size:13px;font-family:'Andale Mono'">pgpool2_hostname = ''</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # Set pgpool2 hostname</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # (change requires restart)</span><br>
<span style="font-size:13px;font-family:Arial"></span><br>
<span style="font-size:13px;font-family:'Andale Mono'"># - System DB info -</span><br>
<span style="font-size:13px;font-family:Arial"></span><br>
<span style="font-size:13px;font-family:'Andale Mono'">system_db_hostname  = 'localhost'</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # (change requires restart)</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">system_db_port = 5432</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # (change requires restart)</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">system_db_dbname = 'pgpool'</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # (change requires restart)</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">system_db_schema = 'pgpool_catalog'</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # (change requires restart)</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">system_db_user = 'pgpool'</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # (change requires restart)</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">system_db_password = ''</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # (change requires restart)</span><br>
<span style="font-size:13px;font-family:Arial"></span><br>
<span style="font-size:13px;font-family:Arial"></span><br>
<span style="font-size:13px;font-family:'Andale Mono'">#------------------------------------------------------------------------------</span><br>
<span style="font-size:13px;font-family:'Andale Mono'"># HEALTH CHECK</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">#------------------------------------------------------------------------------</span><br>
<span style="font-size:13px;font-family:Arial"></span><br>
<span style="font-size:13px;font-family:'Andale Mono'">health_check_period = 0</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # Health check period</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # Disabled (0) by default</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">health_check_timeout = 20</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # Health check timeout</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # 0 means no timeout</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">health_check_user = 'nobody'</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # Health check user</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">health_check_password = ''</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # This parameter is not yet implemented.</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # Password for health check user</span><br>
<span style="font-size:13px;font-family:Arial"></span><br>
<span style="font-size:13px;font-family:Arial"></span><br>
<span style="font-size:13px;font-family:'Andale Mono'">#------------------------------------------------------------------------------</span><br>
<span style="font-size:13px;font-family:'Andale Mono'"># FAILOVER AND FAILBACK</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">#------------------------------------------------------------------------------</span><br>
<span style="font-size:13px;font-family:Arial"></span><br>
<span style="font-size:13px;font-family:'Andale Mono'">failover_command = ''</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # Executes this command at failover</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # Special values:</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   #   %d = node id</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   #   %h = host name</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   #   %p = port number</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   #   %D = database cluster path</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   #   %m = new master node id</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   #   %H = hostname of the new master node</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   #   %M = old master node id</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   #   %P = old primary node id</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   #   %% = '%' character</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">failback_command = ''</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # Executes this command at failback.</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # Special values:</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   #   %d = node id</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   #   %h = host name</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   #   %p = port number</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   #   %D = database cluster path</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   #   %m = new master node id</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   #   %H = hostname of the new master node</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   #   %M = old master node id</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   #   %P = old primary node id</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   #   %% = '%' character</span><br>
<span style="font-size:13px;font-family:Arial"></span><br>
<span style="font-size:13px;font-family:'Andale Mono'">fail_over_on_backend_error = on</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # Initiates failover when writing to the</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # backend communication socket fails</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # This is the same behaviour of pgpool-II</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # 2.2.x and previous releases</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # If set to off, pgpool will report an</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # error and disconnect the session.</span><br>
<span style="font-size:13px;font-family:Arial"></span><br>
<span style="font-size:13px;font-family:Arial"></span><br>
<span style="font-size:13px;font-family:'Andale Mono'">#------------------------------------------------------------------------------</span><br>
<span style="font-size:13px;font-family:'Andale Mono'"># ONLINE RECOVERY</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">#------------------------------------------------------------------------------</span><br>
<span style="font-size:13px;font-family:Arial"></span><br>
<span style="font-size:13px;font-family:'Andale Mono'">recovery_user = 'nobody'</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # Online recovery user</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">recovery_password = ''</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # Online recovery password</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">recovery_1st_stage_command = ''</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # Executes a command in first stage</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">recovery_2nd_stage_command = ''</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # Executes a command in second stage</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">recovery_timeout = 90</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # Timeout in seconds to wait for the</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # recovering node's postmaster to start up</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # 0 means no wait</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">client_idle_limit_in_recovery = 0</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # Client is disconnected after being idle</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # for that many seconds in the second stage</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # of online recovery</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # 0 means no disconnection</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # -1 means immediate disconnection</span><br>
<span style="font-size:13px;font-family:Arial"></span><br>
<span style="font-size:13px;font-family:'Andale Mono'">#------------------------------------------------------------------------------</span><br>
<span style="font-size:13px;font-family:'Andale Mono'"># MEMORY CACHE</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">#------------------------------------------------------------------------------</span><br>
<span style="font-size:13px;font-family:Arial"></span><br>
<span style="font-size:13px;font-family:Arial"></span><br>
<span style="font-size:13px;font-family:'Andale Mono'">memory_cache_enable                  = on</span><br>
<span style="font-size:13px;font-family:Arial"></span><br>
<span style="font-size:13px;font-family:'Andale Mono'">memqcache_method                     = 'shmem'</span><br>
<span style="font-size:13px;font-family:Arial"></span><br>
<span style="font-size:13px;font-family:'Andale Mono'">memqcache_expire                     = 0</span><br>
<span style="font-size:13px;font-family:Arial"></span><br>
<span style="font-size:13px;font-family:'Andale Mono'">memqcache_auto_cache_invalidation    = on</span><br>
<span style="font-size:13px;font-family:Arial"></span><br>
<span style="font-size:13px;font-family:'Andale Mono'">memqcache_maxcache                   = 1</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">#white_memqcache_table_list</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">#black_memqcache_table_list</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">#memqcache_oiddir</span><br>
<span style="font-size:13px;font-family:Arial"></span><br>
<span style="font-size:13px;font-family:Arial"></span><br>
<span style="font-size:13px;font-family:'Andale Mono'">#------------------------------------------------------------------------------</span><br>
<span style="font-size:13px;font-family:'Andale Mono'"># OTHERS</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">#------------------------------------------------------------------------------</span><br>
<span style="font-size:13px;font-family:Arial"></span><br>
<span style="font-size:13px;font-family:'Andale Mono'">relcache_expire = 0</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # Life time of relation cache in seconds.</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # 0 means no cache expiration(the default).</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # The relation cache is used for cache the</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # query result against PostgreSQL system</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # catalog to obtain various information</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # including table structures or if it's a</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # temporary table or not. The cache is</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # maintained in a pgpool child local memory</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # and being kept as long as it survives.</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # If someone modify the table by using</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # ALTER TABLE or some such, the relcache is</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # not consistent anymore.</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # For this purpose, cache_expiration</span><br>
<span style="font-size:13px;font-family:'Andale Mono'">                                   # controls the life time of the cache.</span><br></div></div>