<div dir="ltr"><div>I have pgpool 3.4.3 (from the pgdb93 repo) setup in raw mode pointing to a single backend node on a separate server.  I would like set pgpool to failover to the single node and attempt to reconnect indefinitely.  For some reason I can&#39;t get the config right or it may be a bug?  I have it working in a different environment using pgpool 3.2 from the epel repo <br><br></div><div>Any help would be greatly appreciated. <br></div><div><br><br></div><div># Log<br><br></div><div>2015-10-06 09:45:49: pid 13371: DETAIL:  postmaster on DB node 0 was shutdown by administrative command<br>2015-10-06 09:45:49: pid 13371: LOG:  received degenerate backend request for node_id: 0 from pid [13371]<br>2015-10-06 09:45:49: pid 13361: LOG:  starting degeneration. shutdown host 172.16.0.59(5432)<br>2015-10-06 09:45:49: pid 13361: LOG:  failover: no valid backends node found<br>2015-10-06 09:45:49: pid 13361: LOG:  Restart all children<br>2015-10-06 09:45:49: pid 13361: LOG:  failover: set new primary node: -1<br>2015-10-06 09:45:49: pid 13374: LOG:  child process received shutdown request signal 3<br>2015-10-06 09:45:49: pid 13370: LOG:  child process received shutdown request signal 3<br>2015-10-06 09:45:49: pid 13376: LOG:  child process received shutdown request signal 3<br>2015-10-06 09:45:49: pid 13367: LOG:  child process received shutdown request signal 3<br>2015-10-06 09:45:49: pid 13363: LOG:  child process received shutdown request signal 3<br>2015-10-06 09:45:49: pid 13373: LOG:  child process received shutdown request signal 3<br>2015-10-06 09:45:49: pid 13372: LOG:  child process received shutdown request signal 3<br>2015-10-06 09:45:49: pid 13365: LOG:  child process received shutdown request signal 3<br>2015-10-06 09:45:49: pid 13364: LOG:  child process received shutdown request signal 3<br>2015-10-06 09:45:49: pid 13377: LOG:  child process received shutdown request signal 3<br>2015-10-06 09:45:49: pid 13366: LOG:  child process received shutdown request signal 3<br>2015-10-06 09:45:49: pid 13375: LOG:  child process received shutdown request signal 3<br>2015-10-06 09:45:49: pid 13368: LOG:  child process received shutdown request signal 3<br>2015-10-06 09:45:49: pid 13369: LOG:  child process received shutdown request signal 3<br>2015-10-06 09:45:49: pid 13371: LOG:  child process received shutdown request signal 3<br>2015-10-06 09:45:49: pid 13379: LOG:  worker process received restart request<br>failover done. shutdown host 172.16.0.59(5432)2015-10-06 09:45:49: pid 13361: LOG:  failover done. shutdown host 172.16.0.59(5432)<br>2015-10-06 09:45:50: pid 13378: LOG:  restart request received in pcp child process<br>2015-10-06 09:45:50: pid 13361: LOG:  PCP child 13378 exits with status 256 in failover()<br>2015-10-06 09:45:50: pid 13361: LOG:  fork a new PCP child pid 13399 in failover()<br>2015-10-06 09:45:50: pid 13361: LOG:  child process with pid: 13363 exits with status 0<br>2015-10-06 09:45:50: pid 13361: LOG:  child process with pid: 13363 exited with success and will not be restarted<br>2015-10-06 09:45:50: pid 13361: LOG:  child process with pid: 13364 exits with status 0<br>2015-10-06 09:45:50: pid 13361: LOG:  child process with pid: 13364 exited with success and will not be restarted<br>2015-10-06 09:45:50: pid 13361: LOG:  child process with pid: 13365 exits with status 0<br>2015-10-06 09:45:50: pid 13361: LOG:  child process with pid: 13365 exited with success and will not be restarted<br>2015-10-06 09:45:50: pid 13361: LOG:  child process with pid: 13366 exits with status 0<br>2015-10-06 09:45:50: pid 13361: LOG:  child process with pid: 13366 exited with success and will not be restarted<br>2015-10-06 09:45:50: pid 13361: LOG:  child process with pid: 13367 exits with status 0<br>2015-10-06 09:45:50: pid 13361: LOG:  child process with pid: 13367 exited with success and will not be restarted<br>2015-10-06 09:45:50: pid 13361: LOG:  child process with pid: 13368 exits with status 0<br>2015-10-06 09:45:50: pid 13361: LOG:  child process with pid: 13368 exited with success and will not be restarted<br>2015-10-06 09:45:50: pid 13361: LOG:  child process with pid: 13369 exits with status 0<br>2015-10-06 09:45:50: pid 13361: LOG:  child process with pid: 13369 exited with success and will not be restarted<br>2015-10-06 09:45:50: pid 13361: LOG:  child process with pid: 13370 exits with status 0<br>2015-10-06 09:45:50: pid 13361: LOG:  child process with pid: 13370 exited with success and will not be restarted<br>2015-10-06 09:45:50: pid 13361: LOG:  child process with pid: 13371 exits with status 0<br>2015-10-06 09:45:50: pid 13361: LOG:  child process with pid: 13371 exited with success and will not be restarted<br>2015-10-06 09:45:50: pid 13361: LOG:  child process with pid: 13372 exits with status 0<br>2015-10-06 09:45:50: pid 13361: LOG:  child process with pid: 13372 exited with success and will not be restarted<br>2015-10-06 09:45:50: pid 13361: LOG:  child process with pid: 13373 exits with status 0<br>2015-10-06 09:45:50: pid 13361: LOG:  child process with pid: 13373 exited with success and will not be restarted<br>2015-10-06 09:45:50: pid 13361: LOG:  child process with pid: 13374 exits with status 0<br>2015-10-06 09:45:50: pid 13361: LOG:  child process with pid: 13374 exited with success and will not be restarted<br>2015-10-06 09:45:50: pid 13361: LOG:  child process with pid: 13375 exits with status 0<br>2015-10-06 09:45:50: pid 13361: LOG:  child process with pid: 13375 exited with success and will not be restarted<br>2015-10-06 09:45:50: pid 13361: LOG:  child process with pid: 13376 exits with status 0<br>2015-10-06 09:45:50: pid 13361: LOG:  child process with pid: 13376 exited with success and will not be restarted<br>2015-10-06 09:45:50: pid 13361: LOG:  child process with pid: 13377 exits with status 0<br>2015-10-06 09:45:50: pid 13361: LOG:  child process with pid: 13377 exited with success and will not be restarted<br>2015-10-06 09:45:50: pid 13361: LOG:  worker child process with pid: 13379 exits with status 256<br>2015-10-06 09:45:50: pid 13361: LOG:  fork a new worker child process with pid: 13400<br>2015-10-06 09:46:02: pid 13392: FATAL:  pgpool is not accepting any new connections<br>2015-10-06 09:46:02: pid 13392: DETAIL:  all backend nodes are down, pgpool requires atleast one valid node<br>2015-10-06 09:46:02: pid 13392: HINT:  repair the backend nodes and restart pgpool<br>2015-10-06 09:46:02: pid 13361: LOG:  child process with pid: 13392 exits with status 256<br>2015-10-06 09:46:02: pid 13361: LOG:  fork a new child process with pid: 13401<br>2015-10-06 09:46:27: pid 13401: FATAL:  pgpool is not accepting any new connections<br>2015-10-06 09:46:27: pid 13401: DETAIL:  all backend nodes are down, pgpool requires atleast one valid node<br>2015-10-06 09:46:27: pid 13401: HINT:  repair the backend nodes and restart pgpool<br>2015-10-06 09:46:27: pid 13361: LOG:  child process with pid: 13401 exits with status 256<br>2015-10-06 09:46:27: pid 13361: LOG:  fork a new child process with pid: 13410<br>2015-10-06 09:46:34: pid 13390: FATAL:  pgpool is not accepting any new connections<br>2015-10-06 09:46:34: pid 13390: DETAIL:  all backend nodes are down, pgpool requires atleast one valid node<br>2015-10-06 09:46:34: pid 13390: HINT:  repair the backend nodes and restart pgpool<br>2015-10-06 09:46:34: pid 13361: LOG:  child process with pid: 13390 exits with status 256<br>2015-10-06 09:46:34: pid 13361: LOG:  fork a new child process with pid: 13412<br><br><br><br><br><br></div># Config File<br><br>#------------------------------------------------------------------------------<br># CONNECTIONS<br>#------------------------------------------------------------------------------<br><br># - pgpool Connection Settings -<br><br>listen_addresses = &#39;*&#39;<br>                                   # Host name or IP address to listen on:<br>                                   # &#39;*&#39; for all, &#39;&#39; for no TCP/IP connections<br>                                   # (change requires restart)<br>port = 9999<br>                                   # Port number<br>                                   # (change requires restart)<br>socket_dir = &#39;/var/run/pgpool-II-93&#39;<br>                                   # Unix domain socket path<br>                                   # (change requires restart)<br><br><br># - pgpool Communication Manager Connection Settings -<br><br>pcp_port = 9898<br>                                   # Port number for pcp<br>                                   # (change requires restart)<br>pcp_socket_dir = &#39;/var/run/pgpool-II-93&#39;<br>                                   # Unix domain socket path for pcp<br>                                   # (change requires restart)<br><br># - Backend Connection Settings -<br><br>backend_hostname0 = &#39;172.16.0.59&#39; <br>                                   # Host name or IP address to connect to for backend 0<br>backend_port0 = 5432<br>                                   # Port number for backend 0<br># backend_weight0 = 1<br>                                   # Weight for backend 0 (only in load balancing mode)<br># backend_data_directory0 = &#39;/var/lib/pgsql/9.3/data&#39;<br>                                   # Data directory for backend 0<br>backend_flag0 = &#39;ALLOW_TO_FAILOVER&#39;<br>                                   # Controls various backend behavior<br>                                   # ALLOW_TO_FAILOVER or DISALLOW_TO_FAILOVER<br>#backend_hostname1 = &#39;host2&#39;<br>#backend_port1 = 5433<br>#backend_weight1 = 1<br>#backend_data_directory1 = &#39;/data1&#39;<br>#backend_flag1 = &#39;ALLOW_TO_FAILOVER&#39;<br><br># - Authentication -<br><br>enable_pool_hba = off<br>                                   # Use pool_hba.conf for client authentication<br>pool_passwd = &#39;pool_passwd&#39;<br>                                   # File name of pool_passwd for md5 authentication.<br>                                   # &quot;&quot; disables pool_passwd.<br>                                   # (change requires restart)<br>authentication_timeout = 60<br>                                   # Delay in seconds to complete client authentication<br>                                   # 0 means no timeout.<br><br># - SSL Connections -<br><br>ssl = off<br>                                   # Enable SSL support<br>                                   # (change requires restart)<br>#ssl_key = &#39;./server.key&#39;<br>                                   # Path to the SSL private key file<br>                                   # (change requires restart)<br>#ssl_cert = &#39;./server.cert&#39;<br>                                   # Path to the SSL public certificate file<br>                                   # (change requires restart)<br>#ssl_ca_cert = &#39;&#39;<br>                                   # Path to a single PEM format file<br>                                   # containing CA root certificate(s)<br>                                   # (change requires restart)<br>#ssl_ca_cert_dir = &#39;&#39;<br>                                   # Directory containing CA root certificate(s)<br>                                   # (change requires restart)<br><br><br>#------------------------------------------------------------------------------<br># POOLS<br>#------------------------------------------------------------------------------<br><br># - Pool size -<br><br>num_init_children = 15<br>                                   # Number of pools<br>                                  # (change requires restart)<br>max_pool = 1<br>                                   # Number of connections per pool<br>                                   # (change requires restart)<br><br># - Life time -<br><br>child_life_time = 120 # was 300<br>                                   # Pool exits after being idle for this many seconds<br>child_max_connections = 0 <br>                                   # Pool exits after receiving that many connections<br>                                   # 0 means no exit<br>connection_life_time = 0 # was 0<br>                                   # Connection to backend closes after being idle for this many seconds<br>                                   # 0 means no close<br>client_idle_limit = 0 # was 0<br>                                   # Client is disconnected after being idle for that many seconds<br>                                   # (even inside an explicit transactions!)<br>                                   # 0 means no disconnection<br><br><br>#------------------------------------------------------------------------------<br># LOGS<br>#------------------------------------------------------------------------------<br><br># - Where to log -<br><br>log_destination = &#39;stderr&#39;<br>                                   # Where to log<br>                                   # Valid values are combinations of stderr,<br>                                   # and syslog. Default to stderr.<br><br># - What to log -<br><br>print_timestamp = on<br>                                   # Print timestamp on each line<br>                                   # (change requires restart)<br><br>log_connections = on<br>                                   # Log connections<br>log_hostname = off<br>                                   # Hostname will be shown in ps status<br>                                   # and in logs if connections are logged<br>log_statement = off<br>                                   # Log all statements<br>log_per_node_statement = off<br>                                   # Log all statements<br>                                   # with node and backend informations<br>log_standby_delay = &#39;none&#39;<br>                                   # Log standby delay<br>                                   # Valid values are combinations of always,<br>                                   # if_over_threshold, none<br><br># - Syslog specific -<br><br>syslog_facility = &#39;LOCAL0&#39;<br>                                   # Syslog local facility. Default to LOCAL0<br>syslog_ident = &#39;pgpool&#39;<br>                                   # Syslog program identification string<br>                                   # Default to &#39;pgpool&#39;<br><br># - Debug -<br><br>debug_level = 2<br>                                   # Debug message verbosity level<br>                                   # 0 means no message, 1 or more mean verbose<br><br><br>#------------------------------------------------------------------------------<br># FILE LOCATIONS<br>#------------------------------------------------------------------------------<br><br>pid_file_name = &#39;/var/run/pgpool-II-93/pgpool.pid&#39;<br>                                   # PID file name<br>                                   # (change requires restart)<br>logdir = &#39;/var/log/pgpool-II&#39;<br>                                   # Directory of pgPool status file<br>                                   # (change requires restart)<br><br><br>#------------------------------------------------------------------------------<br># CONNECTION POOLING<br>#------------------------------------------------------------------------------<br><br>#connection_cache = off<br>connection_cache = on<br>                                   # Activate connection pools<br>                                   # (change requires restart)<br><br>                                   # Semicolon separated list of queries<br>                                   # to be issued at the end of a session<br>                                   # The default is for 8.3 and later<br>reset_query_list = &#39;ABORT; DISCARD ALL&#39;<br>                                   # The following one is for 8.2 and before<br>#reset_query_list = &#39;ABORT; RESET ALL; SET SESSION AUTHORIZATION DEFAULT&#39;<br><br><br>#------------------------------------------------------------------------------<br># REPLICATION MODE<br>#------------------------------------------------------------------------------<br><br>replication_mode = off<br>                                   # Activate replication mode<br>                                   # (change requires restart)<br>replicate_select = off<br>                                   # Replicate SELECT statements<br>                                   # when in replication or parallel mode<br>                                   # replicate_select is higher priority than<br>                                   # load_balance_mode.<br><br>insert_lock = on<br>                                   # Automatically locks a dummy row or a table<br>                                   # with INSERT statements to keep SERIAL data<br>                                   # consistency<br>                                   # Without SERIAL, no lock will be issued<br>lobj_lock_table = &#39;&#39;<br>                                   # When rewriting lo_creat command in<br>                                   # replication mode, specify table name to<br>                                   # lock<br><br># - Degenerate handling -<br><br>replication_stop_on_mismatch = off<br>                                   # On disagreement with the packet kind<br>                                   # sent from backend, degenerate the node<br>                                   # which is most likely &quot;minority&quot;<br>                                   # If off, just force to exit this session<br><br>failover_if_affected_tuples_mismatch = off<br>                                   # On disagreement with the number of affected<br>                                   # tuples in UPDATE/DELETE queries, then<br>                                   # degenerate the node which is most likely<br>                                   # &quot;minority&quot;.<br>                                   # If off, just abort the transaction to<br>                                   # keep the consistency<br><br><br>#------------------------------------------------------------------------------<br># LOAD BALANCING MODE<br>#------------------------------------------------------------------------------<br><br>load_balance_mode = off<br>                                   # Activate load balancing mode<br>                                   # (change requires restart)<br>ignore_leading_white_space = on<br>                                   # Ignore leading white spaces of each query<br>white_function_list = &#39;&#39;<br>                                   # Comma separated list of function names<br>                                   # that don&#39;t write to database<br>                                   # Regexp are accepted<br>black_function_list = &#39;nextval,setval&#39;<br>                                   # Comma separated list of function names<br>                                   # that write to database<br>                                   # Regexp are accepted<br><br><br>#------------------------------------------------------------------------------<br># MASTER/SLAVE MODE<br>#------------------------------------------------------------------------------<br><br>master_slave_mode = off<br>                                   # Activate master/slave mode<br>                                   # (change requires restart)<br>master_slave_sub_mode = &#39;slony&#39;<br>                                   # Master/slave sub mode<br>                                   # Valid values are combinations slony or<br>                                   # stream. Default is slony.<br>                                   # (change requires restart)<br><br># - Streaming -<br><br>sr_check_period = 0<br>                                   # Streaming replication check period<br>                                   # Disabled (0) by default<br>sr_check_user = &#39;webserver&#39;<br>                                   # Streaming replication check user<br>                                   # This is necessary even if you disable<br>                                   # streaming replication delay check with<br>                                   # sr_check_period = 0<br>sr_check_password = &#39;&#39;<br>                                   # Password for streaming replication check user<br>delay_threshold = 0<br>                                   # Threshold before not dispatching query to standby node<br>                                   # Unit is in bytes<br>                                   # Disabled (0) by default<br><br># - Special commands -<br><br>follow_master_command = &#39;&#39;<br>                                   # Executes this command after master failover<br>                                   # Special values:<br>                                   #   %d = node id<br>                                   #   %h = host name<br>                                   #   %p = port number<br>                                   #   %D = database cluster path<br>                                   #   %m = new master node id<br>                                   #   %H = hostname of the new master node<br>                                   #   %M = old master node id<br>                                   #   %P = old primary node id<br>                                   #   %r = new master port number<br>                                   #   %R = new master database cluster path<br>                                   #   %% = &#39;%&#39; character<br><br><br>#------------------------------------------------------------------------------<br># PARALLEL MODE<br>#------------------------------------------------------------------------------<br><br>parallel_mode = off<br>                                   # Activates parallel query mode<br>                                   # (change requires restart)<br>pgpool2_hostname = &#39;&#39;<br>                                   # Set pgpool2 hostname<br>                                   # (change requires restart)<br><br># - System DB info -<br><br>system_db_hostname  = &#39;localhost&#39;<br>                                   # (change requires restart)<br>system_db_port = 5432<br>                                   # (change requires restart)<br>system_db_dbname = &#39;pgpool&#39;<br>                                   # (change requires restart)<br>system_db_schema = &#39;pgpool_catalog&#39;<br>                                   # (change requires restart)<br>system_db_user = &#39;pgpool&#39;<br>                                   # (change requires restart)<br>system_db_password = &#39;&#39;<br>                                   # (change requires restart)<br><br><br>#------------------------------------------------------------------------------<br># HEALTH CHECK<br>#------------------------------------------------------------------------------<br><br>health_check_period = 10<br>                                   # Health check period<br>                                   # Disabled (0) by default<br>health_check_timeout = 10<br>                                   # Health check timeout<br>                                   # 0 means no timeout<br>health_check_user = &#39;webserver&#39;<br>                                   # Health check user<br>health_check_password = &#39;&#39;<br>                                   # Password for health check user<br>health_check_max_retries = 30<br>                                   # Maximum number of times to retry a failed health check before giving up.<br>health_check_retry_delay = 1<br>                                   # Amount of time to wait (in seconds) between retries.<br><br><br>#------------------------------------------------------------------------------<br># FAILOVER AND FAILBACK<br>#------------------------------------------------------------------------------<br><br>failover_command = &#39;&#39;<br>                                   # Executes this command at failover<br>                                   # Special values:<br>                                   #   %d = node id<br>                                   #   %h = host name<br>                                   #   %p = port number<br>                                   #   %D = database cluster path<br>                                   #   %m = new master node id<br>                                   #   %H = hostname of the new master node<br>                                   #   %M = old master node id<br>                                   #   %P = old primary node id<br>                                   #   %r = new master port number<br>                                   #   %R = new master database cluster path<br>                                   #   %% = &#39;%&#39; character<br>failback_command = &#39;&#39;<br>                                   # Executes this command at failback.<br>                                   # Special values:<br>                                   #   %d = node id<br>                                   #   %h = host name<br>                                   #   %p = port number<br>                                   #   %D = database cluster path<br>                                   #   %m = new master node id<br>                                   #   %H = hostname of the new master node<br>                                   #   %M = old master node id<br>                                   #   %P = old primary node id<br>                                   #   %r = new master port number<br>                                   #   %R = new master database cluster path<br>                                   #   %% = &#39;%&#39; character<br><br><br><br><br>fail_over_on_backend_error = on<br>                                   # Initiates failover when reading/writing to the<br>                                   # backend communication socket fails<br>                                   # If set to off, pgpool will report an<br>                                   # error and disconnect the session.<br><br>search_primary_node_timeout = 0<br>                                   # Timeout in seconds to search for the<br>                                   # primary node when a failover occurs.<br>                                   # 0 means no timeout, keep searching<br>                                   # for a primary node forever.<br><br>#------------------------------------------------------------------------------<br># ONLINE RECOVERY<br>#------------------------------------------------------------------------------<br><br>recovery_user = &#39;webserver&#39;<br>                                   # Online recovery user<br>recovery_password = &#39;&#39;<br>                                   # Online recovery password<br>recovery_1st_stage_command = &#39;&#39;<br>                                   # Executes a command in first stage<br>recovery_2nd_stage_command = &#39;&#39;<br>                                   # Executes a command in second stage<br>recovery_timeout = 90<br>                                   # Timeout in seconds to wait for the<br>                                   # recovering node&#39;s postmaster to start up<br>                                   # 0 means no wait<br>client_idle_limit_in_recovery = 0<br>                                   # Client is disconnected after being idle<br>                                   # for that many seconds in the second stage<br>                                   # of online recovery<br>                                   # 0 means no disconnection<br>                                   # -1 means immediate disconnection<br><br><br>#------------------------------------------------------------------------------<br># WATCHDOG<br>#------------------------------------------------------------------------------<br><br># - Enabling -<br><br>use_watchdog = off<br>                                    # Activates watchdog<br>                                    # (change requires restart)<br><br># -Connection to up stream servers -<br><br>trusted_servers = &#39;&#39;<br>                                    # trusted server list which are used<br>                                    # to confirm network connection<br>                                    # (hostA,hostB,hostC,...)<br>                                    # (change requires restart)<br>ping_path = &#39;/bin&#39;<br>                                    # ping command path<br>                                    # (change requires restart)<br><br># - Watchdog communication Settings -<br><br>wd_hostname = &#39;&#39;<br>                                    # Host name or IP address of this watchdog<br>                                    # (change requires restart)<br>wd_port = 9000<br>                                    # port number for watchdog service<br>                                    # (change requires restart)<br>wd_authkey = &#39;&#39;<br>                                    # Authentication key for watchdog communication<br>                                    # (change requires restart)<br><br># - Virtual IP control Setting -<br><br>delegate_IP = &#39;&#39;<br>                                    # delegate IP address<br>                                    # If this is empty, virtual IP never bring up. <br>                                    # (change requires restart)<br>ifconfig_path = &#39;/sbin&#39;<br>                                    # ifconfig command path<br>                                    # (change requires restart)<br>if_up_cmd = &#39;ifconfig eth0:0 inet $_IP_$ netmask 255.255.255.0&#39;<br>                                    # startup delegate IP command<br>                                    # (change requires restart)<br>if_down_cmd = &#39;ifconfig eth0:0 down&#39;<br>                                    # shutdown delegate IP command<br>                                    # (change requires restart)<br><br>arping_path = &#39;/usr/sbin&#39;           # arping command path<br>                                    # (change requires restart)<br><br>arping_cmd = &#39;arping -U $_IP_$ -w 1&#39;<br>                                    # arping command<br>                                    # (change requires restart)<br><br># - Behaivor on escalation Setting -<br><br>clear_memqcache_on_escalation = on<br>                                    # Clear all the query cache on shared memory<br>                                    # when standby pgpool escalate to active pgpool<br>                                    # (= virtual IP holder).<br>                                    # This should be off if client connects to pgpool<br>                                    # not using virtual IP.<br>                                    # (change requires restart)<br>wd_escalation_command = &#39;&#39;<br>                                    # Executes this command at escalation on new active pgpool.<br>                                    # (change requires restart)<br><br># - Lifecheck Setting - <br><br># -- common --<br><br>wd_lifecheck_method = &#39;heartbeat&#39;<br>                                    # Method of watchdog lifecheck (&#39;heartbeat&#39; or &#39;query&#39;)<br>                                    # (change requires restart)<br>wd_interval = 10<br>                                    # lifecheck interval (sec) &gt; 0<br>                                    # (change requires restart)<br><br># -- heartbeat mode --<br><br>wd_heartbeat_port = 9694<br>                                    # Port number for receiving heartbeat signal<br>                                    # (change requires restart)<br>wd_heartbeat_keepalive = 2<br>                                    # Interval time of sending heartbeat signal (sec)<br>                                    # (change requires restart)<br>wd_heartbeat_deadtime = 30<br>                                    # Deadtime interval for heartbeat signal (sec)<br>                                    # (change requires restart)<br>heartbeat_destination0 = &#39;host0_ip1&#39;<br>                                    # Host name or IP address of destination 0<br>                                    # for sending heartbeat signal.<br>                                    # (change requires restart)<br>heartbeat_destination_port0 = 9694 <br>                                    # Port number of destination 0 for sending<br>                                    # heartbeat signal. Usually this is the<br>                                    # same as wd_heartbeat_port.<br>                                    # (change requires restart)<br>heartbeat_device0 = &#39;&#39;<br>                                    # Name of NIC device (such like &#39;eth0&#39;)<br>                                    # used for sending/receiving heartbeat<br>                                    # signal to/from destination 0.<br>                                    # This works only when this is not empty<br>                                    # and pgpool has root privilege.<br>                                    # (change requires restart)<br><br>#heartbeat_destination1 = &#39;host0_ip2&#39;<br>#heartbeat_destination_port1 = 9694<br>#heartbeat_device1 = &#39;&#39;<br><br># -- query mode --<br><br>wd_life_point = 3<br>                                    # lifecheck retry times<br>                                    # (change requires restart)<br>wd_lifecheck_query = &#39;SELECT 1&#39;<br>                                    # lifecheck query to pgpool from watchdog<br>                                    # (change requires restart)<br>wd_lifecheck_dbname = &#39;template1&#39;<br>                                    # Database name connected for lifecheck<br>                                    # (change requires restart)<br>wd_lifecheck_user = &#39;nobody&#39;<br>                                    # watchdog user monitoring pgpools in lifecheck<br>                                    # (change requires restart)<br>wd_lifecheck_password = &#39;&#39;<br>                                    # Password for watchdog user in lifecheck<br>                                    # (change requires restart)<br><br># - Other pgpool Connection Settings -<br><br>#other_pgpool_hostname0 = &#39;host0&#39;<br>                                    # Host name or IP address to connect to for other pgpool 0<br>                                    # (change requires restart)<br>#other_pgpool_port0 = 5432<br>                                    # Port number for othet pgpool 0<br>                                    # (change requires restart)<br>#other_wd_port0 = 9000<br>                                    # Port number for othet watchdog 0<br>                                    # (change requires restart)<br>#other_pgpool_hostname1 = &#39;host1&#39;<br>#other_pgpool_port1 = 5432<br>#other_wd_port1 = 9000<br><br><br>#------------------------------------------------------------------------------<br># OTHERS<br>#------------------------------------------------------------------------------<br>relcache_expire = 0<br>                                   # Life time of relation cache in seconds.<br>                                   # 0 means no cache expiration(the default).<br>                                   # The relation cache is used for cache the<br>                                   # query result against PostgreSQL system<br>                                   # catalog to obtain various information<br>                                   # including table structures or if it&#39;s a<br>                                   # temporary table or not. The cache is<br>                                   # maintained in a pgpool child local memory<br>                                   # and being kept as long as it survives.<br>                                   # If someone modify the table by using<br>                                   # ALTER TABLE or some such, the relcache is<br>                                   # not consistent anymore.<br>                                   # For this purpose, cache_expiration<br>                                   # controls the life time of the cache.<br><br>relcache_size = 256<br>                                   # Number of relation cache<br>                                   # entry. If you see frequently:<br>                                   # &quot;pool_search_relcache: cache replacement happend&quot;<br>                                   # in the pgpool log, you might want to increate this number.<br><br>check_temp_table = on<br>                                   # If on, enable temporary table check in SELECT statements.<br>                                   # This initiates queries against system catalog of primary/master<br>                                   # thus increases load of master.<br>                                   # If you are absolutely sure that your system never uses temporary tables<br>                                   # and you want to save access to primary/master, you could turn this off.<br>                                   # Default is on.<br><br><br>#------------------------------------------------------------------------------<br># ON MEMORY QUERY MEMORY CACHE<br>#------------------------------------------------------------------------------<br>memory_cache_enabled = off<br>                                   # If on, use the memory cache functionality, off by default<br>memqcache_method = &#39;shmem&#39;<br>                                   # Cache storage method. either &#39;shmem&#39;(shared memory) or<br>                                   # &#39;memcached&#39;. &#39;shmem&#39; by default<br>                                   # (change requires restart)<br>memqcache_memcached_host = &#39;localhost&#39;<br>                                   # Memcached host name or IP address. Mandatory if<br>                                   # memqcache_method = &#39;memcached&#39;.<br>                                   # Defaults to localhost.<br>                                   # (change requires restart)<br>memqcache_memcached_port = 11211<br>                                   # Memcached port number. Mondatory if memqcache_method = &#39;memcached&#39;.<br>                                   # Defaults to 11211.<br>                                   # (change requires restart)<br>memqcache_total_size = 67108864<br>                                   # Total memory size in bytes for storing memory cache.<br>                                   # Mandatory if memqcache_method = &#39;shmem&#39;.<br>                                   # Defaults to 64MB.<br>                                   # (change requires restart)<br>memqcache_max_num_cache = 1000000<br>                                   # Total number of cache entries. Mandatory<br>                                   # if memqcache_method = &#39;shmem&#39;.<br>                                   # Each cache entry consumes 48 bytes on shared memory.<br>                                   # Defaults to 1,000,000(45.8MB).<br>                                   # (change requires restart)<br>memqcache_expire = 0<br>                                   # Memory cache entry life time specified in seconds.<br>                                   # 0 means infinite life time. 0 by default.<br>                                   # (change requires restart)<br>memqcache_auto_cache_invalidation = on<br>                                   # If on, invalidation of query cache is triggered by corresponding<br>                                   # DDL/DML/DCL(and memqcache_expire).  If off, it is only triggered<br>                                   # by memqcache_expire.  on by default.<br>                                   # (change requires restart)<br>memqcache_maxcache = 409600<br>                                   # Maximum SELECT result size in bytes.<br>                                   # Must be smaller than memqcache_cache_block_size. Defaults to 400KB.<br>                                   # (change requires restart)<br>memqcache_cache_block_size = 1048576<br>                                   # Cache block size in bytes. Mandatory if memqcache_method = &#39;shmem&#39;.<br>                                   # Defaults to 1MB.<br>                                   # (change requires restart)<br>memqcache_oiddir = &#39;/var/log/pgpool/oiddir&#39;<br>                                      # Temporary work directory to record table oids<br>                                   # (change requires restart)<br>white_memqcache_table_list = &#39;&#39;<br>                                   # Comma separated list of table names to memcache<br>                                   # that don&#39;t write to database<br>                                   # Regexp are accepted<br>black_memqcache_table_list = &#39;&#39;<br>                                   # Comma separated list of table names not to memcache<br>                                   # that don&#39;t write to database<br>                                   # Regexp are accepted<br> <br><div><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br>   <br clear="all"><div><br>-- <br><div><div dir="ltr"><div><div dir="ltr">
        
        <table style="font-family:&#39;exo 2.0&#39;,&#39;Helvetica Neue&#39;,Helvetica,sans-serif;font-size:13px;font-weight:lighter;margin:0px;padding:18px 0px 0px" border="0" cellpadding="0" cellspacing="">
                
                <tbody>
                        <tr>
                                <td valign="top">
                                        <img src="http://www.firstbasesolutions.com/images/FBS-Logo.png" alt="FBS Logo" style="padding: 0px 18px 0px 0px; margin: 0px;" height="72" border="0" width="84">
                                </td>
                                <td style="border-left:1px dotted rgb(14,40,83);padding:0px 0px 0px 18px;margin:0px" valign="top">
                                        <p style="margin-top:0px">
                                                <b>Travis Kirstine</b>, Web Development Supervisor <br>
                                                <b>t </b><a href="tel:905%E2%80%91477%E2%80%913600" value="+19054773600" target="_blank">905‑477‑3600</a><i> x </i>301 <span style="color:rgb(204,204,204)">|</span> 
                                                <b>m </b><a href="tel:647%E2%80%91534%E2%80%914798" value="+16475344798" target="_blank">647‑534‑4798</a> <span style="color:rgb(204,204,204)">|</span> <a href="mailto:tkirstine@firstbasesolution.com" target="_blank">tkirstine@firstbasesolution.com</a>
                                        </p>
                                
                                        <p style="margin-bottom:0px">
                                                <b>First Base Solutions Inc.</b><br>
                                                140 Renfrew Drive, Suite 100 <span style="color:rgb(204,204,204)">|</span> 
                                                Markham <span style="color:rgb(204,204,204)">|</span> 
                                                Ontario <span style="color:rgb(204,204,204)">|</span> L3R 6B3<br>
                                                <b>t</b> <a href="tel:905%E2%80%91477%E2%80%913600" value="+19054773600" target="_blank">905‑477‑3600</a> <span style="color:rgb(204,204,204)">|</span> 
                                                <b>f</b> <a href="tel:905%E2%80%91477%E2%80%910892" value="+19054770892" target="_blank">905‑477‑0892</a> <span style="color:rgb(204,204,204)">|</span> 
                                                <a href="http://www.firstbasesolutions.com" target="_blank">www.firstbasesolutions.com</a>
                                        </p>
                                </td>
                        </tr>
                </tbody>
                
        </table>
        
        

</div></div></div></div>
</div></div></div>