From 9abe333b8b7ec563cf43426a2298ee8c886779f8 Mon Sep 17 00:00:00 2001 From: Tatsuo Ishii Date: Sun, 17 Oct 2021 22:40:15 +0900 Subject: [PATCH] Commenting out all parameters in pgpool.conf. This will make pgpool.conf less confusing and make PostgreSQL users easier to understand pgpool.conf because this follows the PostgreSQL way. Discussion: https://www.pgpool.net/pipermail/pgpool-hackers/2021-October/004044.html --- src/sample/pgpool.conf.sample-logical | 284 ++++++++++----------- src/sample/pgpool.conf.sample-raw | 288 +++++++++++----------- src/sample/pgpool.conf.sample-replication | 282 ++++++++++----------- src/sample/pgpool.conf.sample-slony | 282 ++++++++++----------- src/sample/pgpool.conf.sample-snapshot | 280 ++++++++++----------- src/sample/pgpool.conf.sample-stream | 286 ++++++++++----------- 6 files changed, 851 insertions(+), 851 deletions(-) diff --git a/src/sample/pgpool.conf.sample-logical b/src/sample/pgpool.conf.sample-logical index 656713780..a2684e2ce 100644 --- a/src/sample/pgpool.conf.sample-logical +++ b/src/sample/pgpool.conf.sample-logical @@ -31,19 +31,19 @@ backend_clustering_mode = 'logical_replication' # - pgpool Connection Settings - -listen_addresses = 'localhost' +#listen_addresses = 'localhost' # Host name or IP address to listen on: # '*' for all, '' for no TCP/IP connections # (change requires restart) -port = 9999 +#port = 9999 # Port number # (change requires restart) -socket_dir = '/tmp' +#socket_dir = '/tmp' # Unix domain socket path # The Debian package defaults to # /var/run/postgresql # (change requires restart) -reserved_connections = 0 +#reserved_connections = 0 # Number of reserved connections. # Pgpool-II does not accept connections if over # num_init_chidlren - reserved_connections. @@ -51,41 +51,41 @@ reserved_connections = 0 # - pgpool Communication Manager Connection Settings - -pcp_listen_addresses = '*' +#pcp_listen_addresses = '*' # Host name or IP address for pcp process to listen on: # '*' for all, '' for no TCP/IP connections # (change requires restart) -pcp_port = 9898 +#pcp_port = 9898 # Port number for pcp # (change requires restart) -pcp_socket_dir = '/tmp' +#pcp_socket_dir = '/tmp' # Unix domain socket path for pcp # The Debian package defaults to # /var/run/postgresql # (change requires restart) -listen_backlog_multiplier = 2 +#listen_backlog_multiplier = 2 # Set the backlog parameter of listen(2) to # num_init_children * listen_backlog_multiplier. # (change requires restart) -serialize_accept = off +#serialize_accept = off # whether to serialize accept() call to avoid thundering herd problem # (change requires restart) # - Backend Connection Settings - -backend_hostname0 = 'host1' +#backend_hostname0 = 'host1' # Host name or IP address to connect to for backend 0 -backend_port0 = 5432 +#backend_port0 = 5432 # Port number for backend 0 -backend_weight0 = 1 +#backend_weight0 = 1 # Weight for backend 0 (only in load balancing mode) -backend_data_directory0 = '/data' +#backend_data_directory0 = '/data' # Data directory for backend 0 -backend_flag0 = 'ALLOW_TO_FAILOVER' +#backend_flag0 = 'ALLOW_TO_FAILOVER' # Controls various backend behavior # ALLOW_TO_FAILOVER, DISALLOW_TO_FAILOVER # or ALWAYS_PRIMARY -backend_application_name0 = 'server0' +#backend_application_name0 = 'server0' # walsender's application_name, used for "show pool_nodes" command #backend_hostname1 = 'host2' #backend_port1 = 5433 @@ -96,24 +96,24 @@ backend_application_name0 = 'server0' # - Authentication - -enable_pool_hba = off +#enable_pool_hba = off # Use pool_hba.conf for client authentication -pool_passwd = 'pool_passwd' +#pool_passwd = 'pool_passwd' # File name of pool_passwd for md5 authentication. # "" disables pool_passwd. # (change requires restart) -authentication_timeout = 1min +#authentication_timeout = 1min # Delay in seconds to complete client authentication # 0 means no timeout. -allow_clear_text_frontend_auth = off +#allow_clear_text_frontend_auth = off # Allow Pgpool-II to use clear text password authentication # with clients, when pool_passwd does not # contain the user password # - SSL Connections - -ssl = off +#ssl = off # Enable SSL support # (change requires restart) #ssl_key = 'server.key' @@ -133,16 +133,16 @@ ssl = off # SSL certificate revocation list file # (change requires restart) -ssl_ciphers = 'HIGH:MEDIUM:+3DES:!aNULL' +#ssl_ciphers = 'HIGH:MEDIUM:+3DES:!aNULL' # Allowed SSL ciphers # (change requires restart) -ssl_prefer_server_ciphers = off +#ssl_prefer_server_ciphers = off # Use server's SSL cipher preferences, # rather than the client's # (change requires restart) -ssl_ecdh_curve = 'prime256v1' +#ssl_ecdh_curve = 'prime256v1' # Name of the curve to use in ECDH key exchange -ssl_dh_params_file = '' +#ssl_dh_params_file = '' # Name of the file containing Diffie-Hellman parameters used # for so-called ephemeral DH family of SSL cipher. #ssl_passphrase_command='' @@ -156,24 +156,24 @@ ssl_dh_params_file = '' # - Concurrent session and pool size - -num_init_children = 32 +#num_init_children = 32 # Number of concurrent sessions allowed # (change requires restart) -max_pool = 4 +#max_pool = 4 # Number of connection pool caches per connection # (change requires restart) # - Life time - -child_life_time = 5min +#child_life_time = 5min # Pool exits after being idle for this many seconds -child_max_connections = 0 +#child_max_connections = 0 # Pool exits after receiving that many connections # 0 means no exit -connection_life_time = 0 +#connection_life_time = 0 # Connection to backend closes after being idle for this many seconds # 0 means no close -client_idle_limit = 0 +#client_idle_limit = 0 # Client is disconnected after being idle for that many seconds # (even inside an explicit transactions!) # 0 means no disconnection @@ -185,39 +185,39 @@ client_idle_limit = 0 # - Where to log - -log_destination = 'stderr' +#log_destination = 'stderr' # Where to log # Valid values are combinations of stderr, # and syslog. Default to stderr. # - What to log - -log_line_prefix = '%t: pid %p: ' # printf-style string to output at beginning of each log line. +#log_line_prefix = '%t: pid %p: ' # printf-style string to output at beginning of each log line. -log_connections = off +#log_connections = off # Log connections -log_disconnections = off +#log_disconnections = off # Log disconnections -log_hostname = off +#log_hostname = off # Hostname will be shown in ps status # and in logs if connections are logged -log_statement = off +#log_statement = off # Log all statements -log_per_node_statement = off +#log_per_node_statement = off # Log all statements # with node and backend informations -log_client_messages = off +#log_client_messages = off # Log any client messages -log_standby_delay = 'if_over_threshold' +#log_standby_delay = 'if_over_threshold' # Log standby delay # Valid values are combinations of always, # if_over_threshold, none # - Syslog specific - -syslog_facility = 'LOCAL0' +#syslog_facility = 'LOCAL0' # Syslog local facility. Default to LOCAL0 -syslog_ident = 'pgpool' +#syslog_ident = 'pgpool' # Syslog program identification string # Default to 'pgpool' @@ -292,13 +292,13 @@ syslog_ident = 'pgpool' # FILE LOCATIONS #------------------------------------------------------------------------------ -pid_file_name = '/var/run/pgpool/pgpool.pid' +#pid_file_name = '/var/run/pgpool/pgpool.pid' # PID file name # Can be specified as relative to the" # location of pgpool.conf file or # as an absolute path # (change requires restart) -logdir = '/tmp' +#logdir = '/tmp' # Directory of pgPool status file # (change requires restart) @@ -307,14 +307,14 @@ logdir = '/tmp' # CONNECTION POOLING #------------------------------------------------------------------------------ -connection_cache = on +#connection_cache = on # Activate connection pools # (change requires restart) # Semicolon separated list of queries # to be issued at the end of a session # The default is for 8.3 and later -reset_query_list = 'ABORT; DISCARD ALL' +#reset_query_list = 'ABORT; DISCARD ALL' # The following one is for 8.2 and before #reset_query_list = 'ABORT; RESET ALL; SET SESSION AUTHORIZATION DEFAULT' @@ -323,31 +323,31 @@ reset_query_list = 'ABORT; DISCARD ALL' # REPLICATION MODE #------------------------------------------------------------------------------ -replicate_select = off +#replicate_select = off # Replicate SELECT statements # when in replication mode # replicate_select is higher priority than # load_balance_mode. -insert_lock = off +#insert_lock = off # Automatically locks a dummy row or a table # with INSERT statements to keep SERIAL data # consistency # Without SERIAL, no lock will be issued -lobj_lock_table = '' +#lobj_lock_table = '' # When rewriting lo_creat command in # replication mode, specify table name to # lock # - Degenerate handling - -replication_stop_on_mismatch = off +#replication_stop_on_mismatch = off # On disagreement with the packet kind # sent from backend, degenerate the node # which is most likely "minority" # If off, just force to exit this session -failover_if_affected_tuples_mismatch = off +#failover_if_affected_tuples_mismatch = off # On disagreement with the number of affected # tuples in UPDATE/DELETE queries, then # degenerate the node which is most likely @@ -360,16 +360,16 @@ failover_if_affected_tuples_mismatch = off # LOAD BALANCING MODE #------------------------------------------------------------------------------ -load_balance_mode = on +#load_balance_mode = on # Activate load balancing mode # (change requires restart) -ignore_leading_white_space = on +#ignore_leading_white_space = on # Ignore leading white spaces of each query -read_only_function_list = '' +#read_only_function_list = '' # Comma separated list of function names # that don't write to database # Regexp are accepted -write_function_list = '' +#write_function_list = '' # Comma separated list of function names # that write to database # Regexp are accepted @@ -378,55 +378,55 @@ write_function_list = '' # If it's volatile, the function is regarded as a # writing function. -primary_routing_query_pattern_list = '' +#primary_routing_query_pattern_list = '' # Semicolon separated list of query patterns # that should be sent to primary node # Regexp are accepted # valid for streaming replicaton mode only. -database_redirect_preference_list = '' +#database_redirect_preference_list = '' # comma separated list of pairs of database and node id. # example: postgres:primary,mydb[0-4]:1,mydb[5-9]:2' # valid for streaming replicaton mode only. -app_name_redirect_preference_list = '' +#app_name_redirect_preference_list = '' # comma separated list of pairs of app name and node id. # example: 'psql:primary,myapp[0-4]:1,myapp[5-9]:standby' # valid for streaming replicaton mode only. -allow_sql_comments = off +#allow_sql_comments = off # if on, ignore SQL comments when judging if load balance or # query cache is possible. # If off, SQL comments effectively prevent the judgment # (pre 3.4 behavior). -statement_level_load_balance = off +#statement_level_load_balance = off # Enables statement level load balancing #------------------------------------------------------------------------------ -# NATIVE REPLICATION MODE +# STREAMING REPLICATION MODE #------------------------------------------------------------------------------ # - Streaming - -sr_check_period = 0 +#sr_check_period = 0 # Streaming replication check period # Disabled (0) by default -sr_check_user = 'nobody' +#sr_check_user = 'nobody' # Streaming replication check user # This is neccessary even if you disable streaming # replication delay check by sr_check_period = 0 -sr_check_password = '' +#sr_check_password = '' # Password for streaming replication check user. # Leaving it empty will make Pgpool-II to first look for the # Password in pool_passwd file before using the empty password -sr_check_database = 'postgres' +#sr_check_database = 'postgres' # Database name for streaming replication check -delay_threshold = 10000000 +#delay_threshold = 10000000 # Threshold before not dispatching query to standby node # Unit is in bytes # Disabled (0) by default -prefer_lower_delay_standby = off +#prefer_lower_delay_standby = off # If delay_threshold is set larger than 0, Pgpool-II send to # the primary when selected node is delayed over delay_threshold. # If this is set to on, Pgpool-II send query to other standby @@ -434,7 +434,7 @@ prefer_lower_delay_standby = off # - Special commands - -follow_primary_command = '' +#follow_primary_command = '' # Executes this command after main node failover # Special values: # %d = failed node id @@ -455,26 +455,26 @@ follow_primary_command = '' # HEALTH CHECK GLOBAL PARAMETERS #------------------------------------------------------------------------------ -health_check_period = 0 +#health_check_period = 0 # Health check period # Disabled (0) by default -health_check_timeout = 20 +#health_check_timeout = 20 # Health check timeout # 0 means no timeout -health_check_user = 'nobody' +#health_check_user = 'nobody' # Health check user -health_check_password = '' +#health_check_password = '' # Password for health check user # Leaving it empty will make Pgpool-II to first look for the # Password in pool_passwd file before using the empty password -health_check_database = '' +#health_check_database = '' # Database name for health check. If '', tries 'postgres' frist, -health_check_max_retries = 0 +#health_check_max_retries = 0 # Maximum number of times to retry a failed health check before giving up. -health_check_retry_delay = 1 +#health_check_retry_delay = 1 # Amount of time to wait (in seconds) between retries. -connect_timeout = 10000 +#connect_timeout = 10000 # Timeout value in milliseconds before giving up to connect to backend. # Default is 10000 ms (10 second). Flaky network user may want to increase # the value. 0 means no timeout. @@ -497,7 +497,7 @@ connect_timeout = 10000 # FAILOVER AND FAILBACK #------------------------------------------------------------------------------ -failover_command = '' +#failover_command = '' # Executes this command at failover # Special values: # %d = failed node id @@ -513,7 +513,7 @@ failover_command = '' # %N = old primary node hostname # %S = old primary node port number # %% = '%' character -failback_command = '' +#failback_command = '' # Executes this command at failback. # Special values: # %d = failed node id @@ -530,34 +530,34 @@ failback_command = '' # %S = old primary node port number # %% = '%' character -failover_on_backend_error = on +#failover_on_backend_error = on # Initiates failover when reading/writing to the # backend communication socket fails # If set to off, pgpool will report an # error and disconnect the session. -failover_on_backend_shutdown = off +#failover_on_backend_shutdown = off # Initiates failover when backend is shutdown, # or backend process is killed. # If set to off, pgpool will report an # error and disconnect the session. -detach_false_primary = off +#detach_false_primary = off # Detach false primary if on. Only # valid in streaming replicaton # mode and with PostgreSQL 9.6 or # after. -search_primary_node_timeout = 5min +#search_primary_node_timeout = 5min # Timeout in seconds to search for the # primary node when a failover occurs. # 0 means no timeout, keep searching # for a primary node forever. -auto_failback = off +#auto_failback = off # Dettached backend node reattach automatically # if replication_state is 'streaming'. -auto_failback_interval = 1min +#auto_failback_interval = 1min # Min interval of executing auto_failback in # seconds. @@ -565,22 +565,22 @@ auto_failback_interval = 1min # ONLINE RECOVERY #------------------------------------------------------------------------------ -recovery_user = 'nobody' +#recovery_user = 'nobody' # Online recovery user -recovery_password = '' +#recovery_password = '' # Online recovery password # Leaving it empty will make Pgpool-II to first look for the # Password in pool_passwd file before using the empty password -recovery_1st_stage_command = '' +#recovery_1st_stage_command = '' # Executes a command in first stage -recovery_2nd_stage_command = '' +#recovery_2nd_stage_command = '' # Executes a command in second stage -recovery_timeout = 90 +#recovery_timeout = 90 # Timeout in seconds to wait for the # recovering node's postmaster to start up # 0 means no wait -client_idle_limit_in_recovery = 0 +#client_idle_limit_in_recovery = 0 # Client is disconnected after being idle # for that many seconds in the second stage # of online recovery @@ -594,31 +594,31 @@ client_idle_limit_in_recovery = 0 # - Enabling - -use_watchdog = off +#use_watchdog = off # Activates watchdog # (change requires restart) # -Connection to up stream servers - -trusted_servers = '' +#trusted_servers = '' # trusted server list which are used # to confirm network connection # (hostA,hostB,hostC,...) # (change requires restart) -ping_path = '/bin' +#ping_path = '/bin' # ping command path # (change requires restart) # - Watchdog communication Settings - -hostname0 = '' +#hostname0 = '' # Host name or IP address of pgpool node # for watchdog connection # (change requires restart) -wd_port0 = 9000 +#wd_port0 = 9000 # Port number for watchdog service # (change requires restart) -pgpool_port0 = 9999 +#pgpool_port0 = 9999 # Port number for pgpool # (change requires restart) @@ -630,15 +630,15 @@ pgpool_port0 = 9999 #wd_port2 = 9000 #pgpool_port2 = 9999 -wd_priority = 1 +#wd_priority = 1 # priority of this watchdog in leader election # (change requires restart) -wd_authkey = '' +#wd_authkey = '' # Authentication key for watchdog communication # (change requires restart) -wd_ipc_socket_dir = '/tmp' +#wd_ipc_socket_dir = '/tmp' # Unix domain socket path for watchdog IPC socket # The Debian package defaults to # /var/run/postgresql @@ -647,58 +647,58 @@ wd_ipc_socket_dir = '/tmp' # - Virtual IP control Setting - -delegate_IP = '' +#delegate_IP = '' # delegate IP address # If this is empty, virtual IP never bring up. # (change requires restart) -if_cmd_path = '/sbin' +#if_cmd_path = '/sbin' # path to the directory where if_up/down_cmd exists # If if_up/down_cmd starts with "/", if_cmd_path will be ignored. # (change requires restart) -if_up_cmd = '/usr/bin/sudo /sbin/ip addr add $_IP_$/24 dev eth0 label eth0:0' +#if_up_cmd = '/usr/bin/sudo /sbin/ip addr add $_IP_$/24 dev eth0 label eth0:0' # startup delegate IP command # (change requires restart) -if_down_cmd = '/usr/bin/sudo /sbin/ip addr del $_IP_$/24 dev eth0' +#if_down_cmd = '/usr/bin/sudo /sbin/ip addr del $_IP_$/24 dev eth0' # shutdown delegate IP command # (change requires restart) -arping_path = '/usr/sbin' +#arping_path = '/usr/sbin' # arping command path # If arping_cmd starts with "/", if_cmd_path will be ignored. # (change requires restart) -arping_cmd = '/usr/bin/sudo /usr/sbin/arping -U $_IP_$ -w 1 -I eth0' +#arping_cmd = '/usr/bin/sudo /usr/sbin/arping -U $_IP_$ -w 1 -I eth0' # arping command # (change requires restart) # - Behaivor on escalation Setting - -clear_memqcache_on_escalation = on +#clear_memqcache_on_escalation = on # Clear all the query cache on shared memory # when standby pgpool escalate to active pgpool # (= virtual IP holder). # This should be off if client connects to pgpool # not using virtual IP. # (change requires restart) -wd_escalation_command = '' +#wd_escalation_command = '' # Executes this command at escalation on new active pgpool. # (change requires restart) -wd_de_escalation_command = '' +#wd_de_escalation_command = '' # Executes this command when leader pgpool resigns from being leader. # (change requires restart) # - Watchdog consensus settings for failover - -failover_when_quorum_exists = on +#failover_when_quorum_exists = on # Only perform backend node failover # when the watchdog cluster holds the quorum -failover_require_consensus = on +#failover_require_consensus = on # Perform failover when majority of Pgpool-II nodes # aggrees on the backend node status change -enable_multiple_failover_requests_from_node = off +#enable_multiple_failover_requests_from_node = off # A Pgpool-II node can cast multiple votes # for building the consensus on failover -enable_consensus_with_half_votes = off +#enable_consensus_with_half_votes = off # apply majority rule for consensus and quorum computation # at 50% of votes in a cluster with even number of nodes. # when enabled the existence of quorum and consensus @@ -712,31 +712,31 @@ enable_consensus_with_half_votes = off # -- common -- -wd_monitoring_interfaces_list = '' +#wd_monitoring_interfaces_list = '' # Comma separated list of interfaces names to monitor. # if any interface from the list is active the watchdog will # consider the network is fine # 'any' to enable monitoring on all interfaces except loopback # '' to disable monitoring -wd_lifecheck_method = 'heartbeat' +#wd_lifecheck_method = 'heartbeat' # Method of watchdog lifecheck ('heartbeat' or 'query' or 'external') # (change requires restart) -wd_interval = 10 +#wd_interval = 10 # lifecheck interval (sec) > 0 # (change requires restart) # -- heartbeat mode -- -heartbeat_hostname0 = '' +#heartbeat_hostname0 = '' # Host name or IP address used # for sending heartbeat signal. # (change requires restart) -heartbeat_port0 = 9694 +#heartbeat_port0 = 9694 # Port number used for receiving/sending heartbeat signal # Usually this is the same as heartbeat_portX. # (change requires restart) -heartbeat_device0 = '' +#heartbeat_device0 = '' # Name of NIC device (such like 'eth0') # used for sending/receiving heartbeat # signal to/from destination 0. @@ -751,28 +751,28 @@ heartbeat_device0 = '' #heartbeat_port2 = 9694 #heartbeat_device2 = '' -wd_heartbeat_keepalive = 2 +#wd_heartbeat_keepalive = 2 # Interval time of sending heartbeat signal (sec) # (change requires restart) -wd_heartbeat_deadtime = 30 +#wd_heartbeat_deadtime = 30 # Deadtime interval for heartbeat signal (sec) # (change requires restart) # -- query mode -- -wd_life_point = 3 +#wd_life_point = 3 # lifecheck retry times # (change requires restart) -wd_lifecheck_query = 'SELECT 1' +#wd_lifecheck_query = 'SELECT 1' # lifecheck query to pgpool from watchdog # (change requires restart) -wd_lifecheck_dbname = 'template1' +#wd_lifecheck_dbname = 'template1' # Database name connected for lifecheck # (change requires restart) -wd_lifecheck_user = 'nobody' +#wd_lifecheck_user = 'nobody' # watchdog user monitoring pgpools in lifecheck # (change requires restart) -wd_lifecheck_password = '' +#wd_lifecheck_password = '' # Password for watchdog user in lifecheck # Leaving it empty will make Pgpool-II to first look for the # Password in pool_passwd file before using the empty password @@ -797,7 +797,7 @@ wd_lifecheck_password = '' #------------------------------------------------------------------------------ # OTHERS #------------------------------------------------------------------------------ -relcache_expire = 0 +#relcache_expire = 0 # Life time of relation cache in seconds. # 0 means no cache expiration(the default). # The relation cache is used for cache the @@ -812,24 +812,24 @@ relcache_expire = 0 # not consistent anymore. # For this purpose, cache_expiration # controls the life time of the cache. -relcache_size = 256 +#relcache_size = 256 # Number of relation cache # entry. If you see frequently: # "pool_search_relcache: cache replacement happend" # in the pgpool log, you might want to increate this number. -check_temp_table = catalog +#check_temp_table = catalog # Temporary table check method. catalog, trace or none. # Default is catalog. -check_unlogged_table = on +#check_unlogged_table = on # If on, enable unlogged table check in SELECT statements. # This initiates queries against system catalog of primary/main # thus increases load of primary. # If you are absolutely sure that your system never uses unlogged tables # and you want to save access to primary/main, you could turn this off. # Default is on. -enable_shared_relcache = on +#enable_shared_relcache = on # If on, relation cache stored in memory cache, # the cache is shared among child process. # Default is on. @@ -841,58 +841,58 @@ relcache_query_target = primary #------------------------------------------------------------------------------ # IN MEMORY QUERY MEMORY CACHE #------------------------------------------------------------------------------ -memory_cache_enabled = off +#memory_cache_enabled = off # If on, use the memory cache functionality, off by default # (change requires restart) -memqcache_method = 'shmem' +#memqcache_method = 'shmem' # Cache storage method. either 'shmem'(shared memory) or # 'memcached'. 'shmem' by default # (change requires restart) -memqcache_memcached_host = 'localhost' +#memqcache_memcached_host = 'localhost' # Memcached host name or IP address. Mandatory if # memqcache_method = 'memcached'. # Defaults to localhost. # (change requires restart) -memqcache_memcached_port = 11211 +#memqcache_memcached_port = 11211 # Memcached port number. Mondatory if memqcache_method = 'memcached'. # Defaults to 11211. # (change requires restart) -memqcache_total_size = 64MB +#memqcache_total_size = 64MB # Total memory size in bytes for storing memory cache. # Mandatory if memqcache_method = 'shmem'. # Defaults to 64MB. # (change requires restart) -memqcache_max_num_cache = 1000000 +#memqcache_max_num_cache = 1000000 # Total number of cache entries. Mandatory # if memqcache_method = 'shmem'. # Each cache entry consumes 48 bytes on shared memory. # Defaults to 1,000,000(45.8MB). # (change requires restart) -memqcache_expire = 0 +#memqcache_expire = 0 # Memory cache entry life time specified in seconds. # 0 means infinite life time. 0 by default. # (change requires restart) -memqcache_auto_cache_invalidation = on +#memqcache_auto_cache_invalidation = on # If on, invalidation of query cache is triggered by corresponding # DDL/DML/DCL(and memqcache_expire). If off, it is only triggered # by memqcache_expire. on by default. # (change requires restart) -memqcache_maxcache = 400kB +#memqcache_maxcache = 400kB # Maximum SELECT result size in bytes. # Must be smaller than memqcache_cache_block_size. Defaults to 400KB. # (change requires restart) -memqcache_cache_block_size = 1MB +#memqcache_cache_block_size = 1MB # Cache block size in bytes. Mandatory if memqcache_method = 'shmem'. # Defaults to 1MB. # (change requires restart) -memqcache_oiddir = '/var/log/pgpool/oiddir' +#memqcache_oiddir = '/var/log/pgpool/oiddir' # Temporary work directory to record table oids # (change requires restart) -cache_safe_memqcache_table_list = '' +#cache_safe_memqcache_table_list = '' # Comma separated list of table names to memcache # that don't write to database # Regexp are accepted -cache_unsafe_memqcache_table_list = '' +#cache_unsafe_memqcache_table_list = '' # Comma separated list of table names not to memcache # that don't write to database # Regexp are accepted diff --git a/src/sample/pgpool.conf.sample-raw b/src/sample/pgpool.conf.sample-raw index 395726576..fe0d67492 100644 --- a/src/sample/pgpool.conf.sample-raw +++ b/src/sample/pgpool.conf.sample-raw @@ -32,19 +32,19 @@ backend_clustering_mode = 'raw' # - pgpool Connection Settings - -listen_addresses = 'localhost' +#listen_addresses = 'localhost' # Host name or IP address to listen on: # '*' for all, '' for no TCP/IP connections # (change requires restart) -port = 9999 +#port = 9999 # Port number # (change requires restart) -socket_dir = '/tmp' +#socket_dir = '/tmp' # Unix domain socket path # The Debian package defaults to # /var/run/postgresql # (change requires restart) -reserved_connections = 0 +#reserved_connections = 0 # Number of reserved connections. # Pgpool-II does not accept connections if over # num_init_chidlren - reserved_connections. @@ -52,41 +52,41 @@ reserved_connections = 0 # - pgpool Communication Manager Connection Settings - -pcp_listen_addresses = '*' +#pcp_listen_addresses = '*' # Host name or IP address for pcp process to listen on: # '*' for all, '' for no TCP/IP connections # (change requires restart) -pcp_port = 9898 +#pcp_port = 9898 # Port number for pcp # (change requires restart) -pcp_socket_dir = '/tmp' +#pcp_socket_dir = '/tmp' # Unix domain socket path for pcp # The Debian package defaults to # /var/run/postgresql # (change requires restart) -listen_backlog_multiplier = 2 +#listen_backlog_multiplier = 2 # Set the backlog parameter of listen(2) to # num_init_children * listen_backlog_multiplier. # (change requires restart) -serialize_accept = off +#serialize_accept = off # whether to serialize accept() call to avoid thundering herd problem # (change requires restart) # - Backend Connection Settings - -backend_hostname0 = 'host1' +#backend_hostname0 = 'host1' # Host name or IP address to connect to for backend 0 -backend_port0 = 5432 +#backend_port0 = 5432 # Port number for backend 0 -backend_weight0 = 1 +#backend_weight0 = 1 # Weight for backend 0 (only in load balancing mode) -backend_data_directory0 = '/data' +#backend_data_directory0 = '/data' # Data directory for backend 0 -backend_flag0 = 'ALLOW_TO_FAILOVER' +#backend_flag0 = 'ALLOW_TO_FAILOVER' # Controls various backend behavior # ALLOW_TO_FAILOVER, DISALLOW_TO_FAILOVER # or ALWAYS_PRIMARY -backend_application_name0 = 'server0' +#backend_application_name0 = 'server0' # walsender's application_name, used for "show pool_nodes" command #backend_hostname1 = 'host2' #backend_port1 = 5433 @@ -97,24 +97,24 @@ backend_application_name0 = 'server0' # - Authentication - -enable_pool_hba = off +#enable_pool_hba = off # Use pool_hba.conf for client authentication -pool_passwd = 'pool_passwd' +#pool_passwd = 'pool_passwd' # File name of pool_passwd for md5 authentication. # "" disables pool_passwd. # (change requires restart) -authentication_timeout = 60 +#authentication_timeout = 60 # Delay in seconds to complete client authentication # 0 means no timeout. -allow_clear_text_frontend_auth = off +#allow_clear_text_frontend_auth = off # Allow Pgpool-II to use clear text password authentication # with clients, when pool_passwd does not # contain the user password # - SSL Connections - -ssl = off +#ssl = off # Enable SSL support # (change requires restart) #ssl_key = 'server.key' @@ -134,16 +134,16 @@ ssl = off # SSL certificate revocation list file # (change requires restart) -ssl_ciphers = 'HIGH:MEDIUM:+3DES:!aNULL' +#ssl_ciphers = 'HIGH:MEDIUM:+3DES:!aNULL' # Allowed SSL ciphers # (change requires restart) -ssl_prefer_server_ciphers = off +#ssl_prefer_server_ciphers = off # Use server's SSL cipher preferences, # rather than the client's # (change requires restart) -ssl_ecdh_curve = 'prime256v1' +#ssl_ecdh_curve = 'prime256v1' # Name of the curve to use in ECDH key exchange -ssl_dh_params_file = '' +#ssl_dh_params_file = '' # Name of the file containing Diffie-Hellman parameters used # for so-called ephemeral DH family of SSL cipher. #ssl_passphrase_command='' @@ -157,24 +157,24 @@ ssl_dh_params_file = '' # - Concurrent session and pool size - -num_init_children = 32 +#num_init_children = 32 # Number of concurrent sessions allowed # (change requires restart) -max_pool = 4 +#max_pool = 4 # Number of connection pool caches per connection # (change requires restart) # - Life time - -child_life_time = 5min +#child_life_time = 5min # Pool exits after being idle for this many seconds -child_max_connections = 0 +#child_max_connections = 0 # Pool exits after receiving that many connections # 0 means no exit -connection_life_time = 0 +#connection_life_time = 0 # Connection to backend closes after being idle for this many seconds # 0 means no close -client_idle_limit = 0 +#client_idle_limit = 0 # Client is disconnected after being idle for that many seconds # (even inside an explicit transactions!) # 0 means no disconnection @@ -186,39 +186,39 @@ client_idle_limit = 0 # - Where to log - -log_destination = 'stderr' +#log_destination = 'stderr' # Where to log # Valid values are combinations of stderr, # and syslog. Default to stderr. # - What to log - -log_line_prefix = '%t: pid %p: ' # printf-style string to output at beginning of each log line. +#log_line_prefix = '%t: pid %p: ' # printf-style string to output at beginning of each log line. -log_connections = off +#log_connections = off # Log connections -log_disconnections = off +#log_disconnections = off # Log disconnections -log_hostname = off +#log_hostname = off # Hostname will be shown in ps status # and in logs if connections are logged -log_statement = off +#log_statement = off # Log all statements -log_per_node_statement = off +#log_per_node_statement = off # Log all statements # with node and backend informations -log_client_messages = off +#log_client_messages = off # Log any client messages -log_standby_delay = 'if_over_threshold' +#log_standby_delay = 'if_over_threshold' # Log standby delay # Valid values are combinations of always, # if_over_threshold, none # - Syslog specific - -syslog_facility = 'LOCAL0' +#syslog_facility = 'LOCAL0' # Syslog local facility. Default to LOCAL0 -syslog_ident = 'pgpool' +#syslog_ident = 'pgpool' # Syslog program identification string # Default to 'pgpool' @@ -293,13 +293,13 @@ syslog_ident = 'pgpool' # FILE LOCATIONS #------------------------------------------------------------------------------ -pid_file_name = '/var/run/pgpool/pgpool.pid' +#pid_file_name = '/var/run/pgpool/pgpool.pid' # PID file name # Can be specified as relative to the" # location of pgpool.conf file or # as an absolute path # (change requires restart) -logdir = '/tmp' +#logdir = '/tmp' # Directory of pgPool status file # (change requires restart) @@ -308,14 +308,14 @@ logdir = '/tmp' # CONNECTION POOLING #------------------------------------------------------------------------------ -connection_cache = on +#connection_cache = on # Activate connection pools # (change requires restart) # Semicolon separated list of queries # to be issued at the end of a session # The default is for 8.3 and later -reset_query_list = 'ABORT; DISCARD ALL' +#reset_query_list = 'ABORT; DISCARD ALL' # The following one is for 8.2 and before #reset_query_list = 'ABORT; RESET ALL; SET SESSION AUTHORIZATION DEFAULT' @@ -324,31 +324,31 @@ reset_query_list = 'ABORT; DISCARD ALL' # REPLICATION MODE #------------------------------------------------------------------------------ -replicate_select = off +#replicate_select = off # Replicate SELECT statements # when in replication mode # replicate_select is higher priority than # load_balance_mode. -insert_lock = off +#insert_lock = off # Automatically locks a dummy row or a table # with INSERT statements to keep SERIAL data # consistency # Without SERIAL, no lock will be issued -lobj_lock_table = '' +#lobj_lock_table = '' # When rewriting lo_creat command in # replication mode, specify table name to # lock # - Degenerate handling - -replication_stop_on_mismatch = off +#replication_stop_on_mismatch = off # On disagreement with the packet kind # sent from backend, degenerate the node # which is most likely "minority" # If off, just force to exit this session -failover_if_affected_tuples_mismatch = off +#failover_if_affected_tuples_mismatch = off # On disagreement with the number of affected # tuples in UPDATE/DELETE queries, then # degenerate the node which is most likely @@ -361,16 +361,16 @@ failover_if_affected_tuples_mismatch = off # LOAD BALANCING MODE #------------------------------------------------------------------------------ -load_balance_mode = on +#load_balance_mode = on # Activate load balancing mode # (change requires restart) -ignore_leading_white_space = on +#ignore_leading_white_space = on # Ignore leading white spaces of each query -read_only_function_list = '' +#read_only_function_list = '' # Comma separated list of function names # that don't write to database # Regexp are accepted -write_function_list = '' +#write_function_list = '' # Comma separated list of function names # that write to database # Regexp are accepted @@ -379,28 +379,28 @@ write_function_list = '' # If it's volatile, the function is regarded as a # writing function. -primary_routing_query_pattern_list = '' +#primary_routing_query_pattern_list = '' # Semicolon separated list of query patterns # that should be sent to primary node # Regexp are accepted # valid for streaming replicaton mode only. -database_redirect_preference_list = '' +#database_redirect_preference_list = '' # comma separated list of pairs of database and node id. # example: postgres:primary,mydb[0-4]:1,mydb[5-9]:2' # valid for streaming replicaton mode only. -app_name_redirect_preference_list = '' +#app_name_redirect_preference_list = '' # comma separated list of pairs of app name and node id. # example: 'psql:primary,myapp[0-4]:1,myapp[5-9]:standby' # valid for streaming replicaton mode only. -allow_sql_comments = off +#allow_sql_comments = off # if on, ignore SQL comments when judging if load balance or # query cache is possible. # If off, SQL comments effectively prevent the judgment # (pre 3.4 behavior). -disable_load_balance_on_write = 'transaction' +#disable_load_balance_on_write = 'transaction' # Load balance behavior when write query is issued # in an explicit transaction. # @@ -428,7 +428,7 @@ disable_load_balance_on_write = 'transaction' # Note that any query not in an explicit transaction # is not affected by the parameter except 'always'. -dml_adaptive_object_relationship_list= '' +#dml_adaptive_object_relationship_list= '' # comma separated list of object pairs # [object]:[dependent-object], to disable load balancing # of dependent objects within the explicit transaction @@ -439,34 +439,34 @@ dml_adaptive_object_relationship_list= '' # the write_function_list # only valid for disable_load_balance_on_write = 'dml_adaptive'. -statement_level_load_balance = off +#statement_level_load_balance = off # Enables statement level load balancing #------------------------------------------------------------------------------ -# NATIVE REPLICATION MODE +# STREAMING REPLICATION MODE #------------------------------------------------------------------------------ # - Streaming - -sr_check_period = 10 +#sr_check_period = 10 # Streaming replication check period # Disabled (0) by default -sr_check_user = 'nobody' +#sr_check_user = 'nobody' # Streaming replication check user # This is neccessary even if you disable streaming # replication delay check by sr_check_period = 0 -sr_check_password = '' +#sr_check_password = '' # Password for streaming replication check user # Leaving it empty will make Pgpool-II to first look for the # Password in pool_passwd file before using the empty password -sr_check_database = 'postgres' +#sr_check_database = 'postgres' # Database name for streaming replication check -delay_threshold = 10000000 +#delay_threshold = 10000000 # Threshold before not dispatching query to standby node # Unit is in bytes # Disabled (0) by default -prefer_lower_delay_standby = off +#prefer_lower_delay_standby = off # If delay_threshold is set larger than 0, Pgpool-II send to # the primary when selected node is delayed over delay_threshold. # If this is set to on, Pgpool-II send query to other standby @@ -474,7 +474,7 @@ prefer_lower_delay_standby = off # - Special commands - -follow_primary_command = '' +#follow_primary_command = '' # Executes this command after main node failover # Special values: # %d = failed node id @@ -495,26 +495,26 @@ follow_primary_command = '' # HEALTH CHECK GLOBAL PARAMETERS #------------------------------------------------------------------------------ -health_check_period = 0 +#health_check_period = 0 # Health check period # Disabled (0) by default -health_check_timeout = 20 +#health_check_timeout = 20 # Health check timeout # 0 means no timeout -health_check_user = 'nobody' +#health_check_user = 'nobody' # Health check user -health_check_password = '' +#health_check_password = '' # Password for health check user # Leaving it empty will make Pgpool-II to first look for the # Password in pool_passwd file before using the empty password -health_check_database = '' +#health_check_database = '' # Database name for health check. If '', tries 'postgres' frist, -health_check_max_retries = 0 +#health_check_max_retries = 0 # Maximum number of times to retry a failed health check before giving up. -health_check_retry_delay = 1 +#health_check_retry_delay = 1 # Amount of time to wait (in seconds) between retries. -connect_timeout = 10000 +#connect_timeout = 10000 # Timeout value in milliseconds before giving up to connect to backend. # Default is 10000 ms (10 second). Flaky network user may want to increase # the value. 0 means no timeout. @@ -537,7 +537,7 @@ connect_timeout = 10000 # FAILOVER AND FAILBACK #------------------------------------------------------------------------------ -failover_command = '' +#failover_command = '' # Executes this command at failover # Special values: # %d = failed node id @@ -553,7 +553,7 @@ failover_command = '' # %N = old primary node hostname # %S = old primary node port number # %% = '%' character -failback_command = '' +#failback_command = '' # Executes this command at failback. # Special values: # %d = failed node id @@ -570,25 +570,25 @@ failback_command = '' # %S = old primary node port number # %% = '%' character -failover_on_backend_error = on +#failover_on_backend_error = on # Initiates failover when reading/writing to the # backend communication socket fails # If set to off, pgpool will report an # error and disconnect the session. -failover_on_backend_shutdown = off +#failover_on_backend_shutdown = off # Initiates failover when backend is shutdown, # or backend process is killed. # If set to off, pgpool will report an # error and disconnect the session. -detach_false_primary = off +#detach_false_primary = off # Detach false primary if on. Only # valid in streaming replicaton # mode and with PostgreSQL 9.6 or # after. -search_primary_node_timeout = 300 +#search_primary_node_timeout = 300 # Timeout in seconds to search for the # primary node when a failover occurs. # 0 means no timeout, keep searching @@ -598,32 +598,32 @@ search_primary_node_timeout = 300 # ONLINE RECOVERY #------------------------------------------------------------------------------ -recovery_user = 'nobody' +#recovery_user = 'nobody' # Online recovery user -recovery_password = '' +#recovery_password = '' # Online recovery password # Leaving it empty will make Pgpool-II to first look for the # Password in pool_passwd file before using the empty password -recovery_1st_stage_command = '' +#recovery_1st_stage_command = '' # Executes a command in first stage -recovery_2nd_stage_command = '' +#recovery_2nd_stage_command = '' # Executes a command in second stage -recovery_timeout = 90 +#recovery_timeout = 90 # Timeout in seconds to wait for the # recovering node's postmaster to start up # 0 means no wait -client_idle_limit_in_recovery = 0 +#client_idle_limit_in_recovery = 0 # Client is disconnected after being idle # for that many seconds in the second stage # of online recovery # 0 means no disconnection # -1 means immediate disconnection -auto_failback = off +#auto_failback = off # Dettached backend node reattach automatically # if replication_state is 'streaming'. -auto_failback_interval = 1min +#auto_failback_interval = 1min # Min interval of executing auto_failback in # seconds. @@ -633,31 +633,31 @@ auto_failback_interval = 1min # - Enabling - -use_watchdog = off +#use_watchdog = off # Activates watchdog # (change requires restart) # -Connection to up stream servers - -trusted_servers = '' +#trusted_servers = '' # trusted server list which are used # to confirm network connection # (hostA,hostB,hostC,...) # (change requires restart) -ping_path = '/bin' +#ping_path = '/bin' # ping command path # (change requires restart) # - Watchdog communication Settings - -hostname0 = '' +#hostname0 = '' # Host name or IP address of pgpool node # for watchdog connection # (change requires restart) -wd_port0 = 9000 +#wd_port0 = 9000 # Port number for watchdog service # (change requires restart) -pgpool_port0 = 9999 +#pgpool_port0 = 9999 # Port number for pgpool # (change requires restart) @@ -669,15 +669,15 @@ pgpool_port0 = 9999 #wd_port2 = 9000 #pgpool_port2 = 9999 -wd_priority = 1 +#wd_priority = 1 # priority of this watchdog in leader election # (change requires restart) -wd_authkey = '' +#wd_authkey = '' # Authentication key for watchdog communication # (change requires restart) -wd_ipc_socket_dir = '/tmp' +#wd_ipc_socket_dir = '/tmp' # Unix domain socket path for watchdog IPC socket # The Debian package defaults to # /var/run/postgresql @@ -685,63 +685,63 @@ wd_ipc_socket_dir = '/tmp' # - Virtual IP control Setting - -delegate_IP = '' +#delegate_IP = '' # delegate IP address # If this is empty, virtual IP never bring up. # (change requires restart) -if_cmd_path = '/sbin' +#if_cmd_path = '/sbin' # path to the directory where if_up/down_cmd exists # If if_up/down_cmd starts with "/", if_cmd_path will be ignored. # (change requires restart) -if_up_cmd = '/usr/bin/sudo /sbin/ip addr add $_IP_$/24 dev eth0 label eth0:0' +#if_up_cmd = '/usr/bin/sudo /sbin/ip addr add $_IP_$/24 dev eth0 label eth0:0' # startup delegate IP command # (change requires restart) -if_down_cmd = '/usr/bin/sudo /sbin/ip addr del $_IP_$/24 dev eth0' +#if_down_cmd = '/usr/bin/sudo /sbin/ip addr del $_IP_$/24 dev eth0' # shutdown delegate IP command # (change requires restart) -arping_path = '/usr/sbin' +#arping_path = '/usr/sbin' # arping command path # If arping_cmd starts with "/", if_cmd_path will be ignored. # (change requires restart) -arping_cmd = '/usr/bin/sudo /usr/sbin/arping -U $_IP_$ -w 1 -I eth0' +#arping_cmd = '/usr/bin/sudo /usr/sbin/arping -U $_IP_$ -w 1 -I eth0' # arping command # (change requires restart) # - Behaivor on escalation Setting - -clear_memqcache_on_escalation = on +#clear_memqcache_on_escalation = on # Clear all the query cache on shared memory # when standby pgpool escalate to active pgpool # (= virtual IP holder). # This should be off if client connects to pgpool # not using virtual IP. # (change requires restart) -wd_escalation_command = '' +#wd_escalation_command = '' # Executes this command at escalation on new active pgpool. # (change requires restart) -wd_de_escalation_command = '' +#wd_de_escalation_command = '' # Executes this command when leader pgpool resigns from being leader. # (change requires restart) # - Watchdog consensus settings for failover - -failover_when_quorum_exists = on +#failover_when_quorum_exists = on # Only perform backend node failover # when the watchdog cluster holds the quorum # (change requires restart) -failover_require_consensus = on +#failover_require_consensus = on # Perform failover when majority of Pgpool-II nodes # aggrees on the backend node status change # (change requires restart) -allow_multiple_failover_requests_from_node = off +#allow_multiple_failover_requests_from_node = off # A Pgpool-II node can cast multiple votes # for building the consensus on failover # (change requires restart) -enable_consensus_with_half_votes = off +#enable_consensus_with_half_votes = off # apply majority rule for consensus and quorum computation # at 50% of votes in a cluster with even number of nodes. # when enabled the existence of quorum and consensus @@ -755,7 +755,7 @@ enable_consensus_with_half_votes = off # -- common -- -wd_monitoring_interfaces_list = '' +#wd_monitoring_interfaces_list = '' # Comma separated list of interfaces names to monitor. # if any interface from the list is active the watchdog will # consider the network is fine @@ -763,24 +763,24 @@ wd_monitoring_interfaces_list = '' # '' to disable monitoring # (change requires restart) -wd_lifecheck_method = 'heartbeat' +#wd_lifecheck_method = 'heartbeat' # Method of watchdog lifecheck ('heartbeat' or 'query' or 'external') # (change requires restart) -wd_interval = 10 +#wd_interval = 10 # lifecheck interval (sec) > 0 # (change requires restart) # -- heartbeat mode -- -heartbeat_hostname0 = '' +#heartbeat_hostname0 = '' # Host name or IP address used # for sending heartbeat signal. # (change requires restart) -heartbeat_port0 = 9694 +#heartbeat_port0 = 9694 # Port number used for receiving/sending heartbeat signal # Usually this is the same as heartbeat_portX. # (change requires restart) -heartbeat_device0 = '' +#heartbeat_device0 = '' # Name of NIC device (such like 'eth0') # used for sending/receiving heartbeat # signal to/from destination 0. @@ -795,28 +795,28 @@ heartbeat_device0 = '' #heartbeat_port2 = 9694 #heartbeat_device2 = '' -wd_heartbeat_keepalive = 2 +#wd_heartbeat_keepalive = 2 # Interval time of sending heartbeat signal (sec) # (change requires restart) -wd_heartbeat_deadtime = 30 +#wd_heartbeat_deadtime = 30 # Deadtime interval for heartbeat signal (sec) # (change requires restart) # -- query mode -- -wd_life_point = 3 +#wd_life_point = 3 # lifecheck retry times # (change requires restart) -wd_lifecheck_query = 'SELECT 1' +#wd_lifecheck_query = 'SELECT 1' # lifecheck query to pgpool from watchdog # (change requires restart) -wd_lifecheck_dbname = 'template1' +#wd_lifecheck_dbname = 'template1' # Database name connected for lifecheck # (change requires restart) -wd_lifecheck_user = 'nobody' +#wd_lifecheck_user = 'nobody' # watchdog user monitoring pgpools in lifecheck # (change requires restart) -wd_lifecheck_password = '' +#wd_lifecheck_password = '' # Password for watchdog user in lifecheck # Leaving it empty will make Pgpool-II to first look for the # Password in pool_passwd file before using the empty password @@ -841,7 +841,7 @@ wd_lifecheck_password = '' #------------------------------------------------------------------------------ # OTHERS #------------------------------------------------------------------------------ -relcache_expire = 0 +#relcache_expire = 0 # Life time of relation cache in seconds. # 0 means no cache expiration(the default). # The relation cache is used for cache the @@ -856,24 +856,24 @@ relcache_expire = 0 # not consistent anymore. # For this purpose, cache_expiration # controls the life time of the cache. -relcache_size = 256 +#relcache_size = 256 # Number of relation cache # entry. If you see frequently: # "pool_search_relcache: cache replacement happend" # in the pgpool log, you might want to increate this number. -check_temp_table = catalog +#check_temp_table = catalog # Temporary table check method. catalog, trace or none. # Default is catalog. -check_unlogged_table = on +#check_unlogged_table = on # If on, enable unlogged table check in SELECT statements. # This initiates queries against system catalog of primary/main # thus increases load of primary. # If you are absolutely sure that your system never uses unlogged tables # and you want to save access to primary/main, you could turn this off. # Default is on. -enable_shared_relcache = on +#enable_shared_relcache = on # If on, relation cache stored in memory cache, # the cache is shared among child process. # Default is on. @@ -885,58 +885,58 @@ relcache_query_target = primary #------------------------------------------------------------------------------ # IN MEMORY QUERY MEMORY CACHE #------------------------------------------------------------------------------ -memory_cache_enabled = off +#memory_cache_enabled = off # If on, use the memory cache functionality, off by default # (change requires restart) -memqcache_method = 'shmem' +#memqcache_method = 'shmem' # Cache storage method. either 'shmem'(shared memory) or # 'memcached'. 'shmem' by default # (change requires restart) -memqcache_memcached_host = 'localhost' +#memqcache_memcached_host = 'localhost' # Memcached host name or IP address. Mandatory if # memqcache_method = 'memcached'. # Defaults to localhost. # (change requires restart) -memqcache_memcached_port = 11211 +#memqcache_memcached_port = 11211 # Memcached port number. Mondatory if memqcache_method = 'memcached'. # Defaults to 11211. # (change requires restart) -memqcache_total_size = 64MB +#memqcache_total_size = 64MB # Total memory size in bytes for storing memory cache. # Mandatory if memqcache_method = 'shmem'. # Defaults to 64MB. # (change requires restart) -memqcache_max_num_cache = 1000000 +#memqcache_max_num_cache = 1000000 # Total number of cache entries. Mandatory # if memqcache_method = 'shmem'. # Each cache entry consumes 48 bytes on shared memory. # Defaults to 1,000,000(45.8MB). # (change requires restart) -memqcache_expire = 0 +#memqcache_expire = 0 # Memory cache entry life time specified in seconds. # 0 means infinite life time. 0 by default. # (change requires restart) -memqcache_auto_cache_invalidation = on +#memqcache_auto_cache_invalidation = on # If on, invalidation of query cache is triggered by corresponding # DDL/DML/DCL(and memqcache_expire). If off, it is only triggered # by memqcache_expire. on by default. # (change requires restart) -memqcache_maxcache = 400kB +#memqcache_maxcache = 400kB # Maximum SELECT result size in bytes. # Must be smaller than memqcache_cache_block_size. Defaults to 400KB. # (change requires restart) -memqcache_cache_block_size = 1MB +#memqcache_cache_block_size = 1MB # Cache block size in bytes. Mandatory if memqcache_method = 'shmem'. # Defaults to 1MB. # (change requires restart) -memqcache_oiddir = '/var/log/pgpool/oiddir' +#memqcache_oiddir = '/var/log/pgpool/oiddir' # Temporary work directory to record table oids # (change requires restart) -cache_safe_memqcache_table_list = '' +#cache_safe_memqcache_table_list = '' # Comma separated list of table names to memcache # that don't write to database # Regexp are accepted -cache_unsafe_memqcache_table_list = '' +#cache_unsafe_memqcache_table_list = '' # Comma separated list of table names not to memcache # that don't write to database # Regexp are accepted diff --git a/src/sample/pgpool.conf.sample-replication b/src/sample/pgpool.conf.sample-replication index 0bbbcbfce..5e754c1ca 100644 --- a/src/sample/pgpool.conf.sample-replication +++ b/src/sample/pgpool.conf.sample-replication @@ -32,40 +32,40 @@ backend_clustering_mode = 'native_replication' # - pgpool Connection Settings - -listen_addresses = 'localhost' +#listen_addresses = 'localhost' # Host name or IP address to listen on: # '*' for all, '' for no TCP/IP connections # (change requires restart) -port = 9999 +#port = 9999 # Port number # (change requires restart) -socket_dir = '/tmp' +#socket_dir = '/tmp' # Unix domain socket path # The Debian package defaults to # /var/run/postgresql # (change requires restart) -listen_backlog_multiplier = 2 +#listen_backlog_multiplier = 2 # Set the backlog parameter of listen(2) to # num_init_children * listen_backlog_multiplier. # (change requires restart) -serialize_accept = off +#serialize_accept = off # whether to serialize accept() call to avoid thundering herd problem # (change requires restart) -reserved_connections = 0 +#reserved_connections = 0 # Number of reserved connections. # Pgpool-II does not accept connections if over # num_init_chidlren - reserved_connections. # - pgpool Communication Manager Connection Settings - -pcp_listen_addresses = '*' +#pcp_listen_addresses = '*' # Host name or IP address for pcp process to listen on: # '*' for all, '' for no TCP/IP connections # (change requires restart) -pcp_port = 9898 +#pcp_port = 9898 # Port number for pcp # (change requires restart) -pcp_socket_dir = '/tmp' +#pcp_socket_dir = '/tmp' # Unix domain socket path for pcp # The Debian package defaults to # /var/run/postgresql @@ -73,15 +73,15 @@ pcp_socket_dir = '/tmp' # - Backend Connection Settings - -backend_hostname0 = 'host1' +#backend_hostname0 = 'host1' # Host name or IP address to connect to for backend 0 -backend_port0 = 5432 +#backend_port0 = 5432 # Port number for backend 0 -backend_weight0 = 1 +#backend_weight0 = 1 # Weight for backend 0 (only in load balancing mode) -backend_data_directory0 = '/data' +#backend_data_directory0 = '/data' # Data directory for backend 0 -backend_flag0 = 'ALLOW_TO_FAILOVER' +#backend_flag0 = 'ALLOW_TO_FAILOVER' # Controls various backend behavior # ALLOW_TO_FAILOVER or DISALLOW_TO_FAILOVER #backend_hostname1 = 'host2' @@ -92,13 +92,13 @@ backend_flag0 = 'ALLOW_TO_FAILOVER' # - Authentication - -enable_pool_hba = off +#enable_pool_hba = off # Use pool_hba.conf for client authentication -pool_passwd = 'pool_passwd' +#pool_passwd = 'pool_passwd' # File name of pool_passwd for md5 authentication. # "" disables pool_passwd. # (change requires restart) -authentication_timeout = 1min +#authentication_timeout = 1min # Delay in seconds to complete client authentication # 0 means no timeout. @@ -109,7 +109,7 @@ allow_clear_text_frontend_auth = off # - SSL Connections - -ssl = off +#ssl = off # Enable SSL support # (change requires restart) #ssl_key = 'server.key' @@ -129,16 +129,16 @@ ssl = off # SSL certificate revocation list file # (change requires restart) -ssl_ciphers = 'HIGH:MEDIUM:+3DES:!aNULL' +#ssl_ciphers = 'HIGH:MEDIUM:+3DES:!aNULL' # Allowed SSL ciphers # (change requires restart) -ssl_prefer_server_ciphers = off +#ssl_prefer_server_ciphers = off # Use server's SSL cipher preferences, # rather than the client's # (change requires restart) -ssl_ecdh_curve = 'prime256v1' +#ssl_ecdh_curve = 'prime256v1' # Name of the curve to use in ECDH key exchange -ssl_dh_params_file = '' +#ssl_dh_params_file = '' # Name of the file containing Diffie-Hellman parameters used # for so-called ephemeral DH family of SSL cipher. #ssl_passphrase_command='' @@ -152,24 +152,24 @@ ssl_dh_params_file = '' # - Concurrent session and pool size - -num_init_children = 32 +#num_init_children = 32 # Number of concurrent sessions allowed # (change requires restart) -max_pool = 4 +#max_pool = 4 # Number of connection pool caches per connection # (change requires restart) # - Life time - -child_life_time = 5min +#child_life_time = 5min # Pool exits after being idle for this many seconds -child_max_connections = 0 +#child_max_connections = 0 # Pool exits after receiving that many connections # 0 means no exit -connection_life_time = 0 +#connection_life_time = 0 # Connection to backend closes after being idle for this many seconds # 0 means no close -client_idle_limit = 0 +#client_idle_limit = 0 # Client is disconnected after being idle for that many seconds # (even inside an explicit transactions!) # 0 means no disconnection @@ -181,39 +181,39 @@ client_idle_limit = 0 # - Where to log - -log_destination = 'stderr' +#log_destination = 'stderr' # Where to log # Valid values are combinations of stderr, # and syslog. Default to stderr. # - What to log - -log_line_prefix = '%t: pid %p: ' # printf-style string to output at beginning of each log line. +#log_line_prefix = '%t: pid %p: ' # printf-style string to output at beginning of each log line. -log_connections = off +#log_connections = off # Log connections -log_disconnections = off +#log_disconnections = off # Log disconnections -log_hostname = off +#log_hostname = off # Hostname will be shown in ps status # and in logs if connections are logged -log_statement = off +#log_statement = off # Log all statements -log_per_node_statement = off +#log_per_node_statement = off # Log all statements # with node and backend informations -log_client_messages = off +#log_client_messages = off # Log any client messages -log_standby_delay = 'none' +#log_standby_delay = 'none' # Log standby delay # Valid values are combinations of always, # if_over_threshold, none # - Syslog specific - -syslog_facility = 'LOCAL0' +#syslog_facility = 'LOCAL0' # Syslog local facility. Default to LOCAL0 -syslog_ident = 'pgpool' +#syslog_ident = 'pgpool' # Syslog program identification string # Default to 'pgpool' @@ -288,13 +288,13 @@ syslog_ident = 'pgpool' # FILE LOCATIONS #------------------------------------------------------------------------------ -pid_file_name = '/var/run/pgpool/pgpool.pid' +#pid_file_name = '/var/run/pgpool/pgpool.pid' # PID file name # Can be specified as relative to the" # location of pgpool.conf file or # as an absolute path # (change requires restart) -logdir = '/tmp' +#logdir = '/tmp' # Directory of pgPool status file # (change requires restart) @@ -303,14 +303,14 @@ logdir = '/tmp' # CONNECTION POOLING #------------------------------------------------------------------------------ -connection_cache = on +#connection_cache = on # Activate connection pools # (change requires restart) # Semicolon separated list of queries # to be issued at the end of a session # The default is for 8.3 and later -reset_query_list = 'ABORT; DISCARD ALL' +#reset_query_list = 'ABORT; DISCARD ALL' # The following one is for 8.2 and before #reset_query_list = 'ABORT; RESET ALL; SET SESSION AUTHORIZATION DEFAULT' @@ -319,31 +319,31 @@ reset_query_list = 'ABORT; DISCARD ALL' # REPLICATION MODE #------------------------------------------------------------------------------ -replicate_select = off +#replicate_select = off # Replicate SELECT statements # when in replication mode # replicate_select is higher priority than # load_balance_mode. -insert_lock = on +#insert_lock = on # Automatically locks a dummy row or a table # with INSERT statements to keep SERIAL data # consistency # Without SERIAL, no lock will be issued -lobj_lock_table = '' +#lobj_lock_table = '' # When rewriting lo_creat command in # replication mode, specify table name to # lock # - Degenerate handling - -replication_stop_on_mismatch = off +#replication_stop_on_mismatch = off # On disagreement with the packet kind # sent from backend, degenerate the node # which is most likely "minority" # If off, just force to exit this session -failover_if_affected_tuples_mismatch = off +#failover_if_affected_tuples_mismatch = off # On disagreement with the number of affected # tuples in UPDATE/DELETE queries, then # degenerate the node which is most likely @@ -356,16 +356,16 @@ failover_if_affected_tuples_mismatch = off # LOAD BALANCING MODE #------------------------------------------------------------------------------ -load_balance_mode = on +#load_balance_mode = on # Activate load balancing mode # (change requires restart) -ignore_leading_white_space = on +#ignore_leading_white_space = on # Ignore leading white spaces of each query -read_only_function_list = '' +#read_only_function_list = '' # Comma separated list of function names # that don't write to database # Regexp are accepted -write_function_list = '' +#write_function_list = '' # Comma separated list of function names # that write to database # Regexp are accepted @@ -374,28 +374,28 @@ write_function_list = '' # If it's volatile, the function is regarded as a # writing function. -primary_routing_query_pattern_list = '' +#primary_routing_query_pattern_list = '' # Semicolon separated list of query patterns # that should be sent to primary node # Regexp are accepted # valid for streaming replicaton mode only. -database_redirect_preference_list = '' +#database_redirect_preference_list = '' # comma separated list of pairs of database and node id. # example: postgres:primary,mydb[0-4]:1,mydb[5-9]:2' # valid for streaming replicaton mode only. -app_name_redirect_preference_list = '' +#app_name_redirect_preference_list = '' # comma separated list of pairs of app name and node id. # example: 'psql:primary,myapp[0-4]:1,myapp[5-9]:standby' # valid for streaming replicaton mode only. -allow_sql_comments = off +#allow_sql_comments = off # if on, ignore SQL comments when judging if load balance or # query cache is possible. # If off, SQL comments effectively prevent the judgment # (pre 3.4 behavior). -disable_load_balance_on_write = 'transaction' +#disable_load_balance_on_write = 'transaction' # Load balance behavior when write query is issued # in an explicit transaction. # @@ -423,7 +423,7 @@ disable_load_balance_on_write = 'transaction' # Note that any query not in an explicit transaction # is not affected by the parameter except 'always'. -dml_adaptive_object_relationship_list= '' +#dml_adaptive_object_relationship_list= '' # comma separated list of object pairs # [object]:[dependent-object], to disable load balancing # of dependent objects within the explicit transaction @@ -438,31 +438,31 @@ statement_level_load_balance = off # Enables statement level load balancing #------------------------------------------------------------------------------ -# NATIVE REPLICATION MODE +# STREAMING REPLICATION MODE #------------------------------------------------------------------------------ # - Streaming - -sr_check_period = 0 +#sr_check_period = 0 # Streaming replication check period # Disabled (0) by default -sr_check_user = 'nobody' +#sr_check_user = 'nobody' # Streaming replication check user # This is neccessary even if you disable streaming # replication delay check by sr_check_period = 0 -sr_check_password = '' +#sr_check_password = '' # Password for streaming replication check user # Leaving it empty will make Pgpool-II to first look for the # Password in pool_passwd file before using the empty password -sr_check_database = 'postgres' +#sr_check_database = 'postgres' # Database name for streaming replication check -delay_threshold = 0 +#delay_threshold = 0 # Threshold before not dispatching query to standby node # Unit is in bytes # Disabled (0) by default -prefer_lower_delay_standby = off +#prefer_lower_delay_standby = off # If delay_threshold is set larger than 0, Pgpool-II send to # the primary when selected node is delayed over delay_threshold. # If this is set to on, Pgpool-II send query to other standby @@ -470,7 +470,7 @@ prefer_lower_delay_standby = off # - Special commands - -follow_primary_command = '' +#follow_primary_command = '' # Executes this command after main node failover # Special values: # %d = failed node id @@ -491,26 +491,26 @@ follow_primary_command = '' # HEALTH CHECK GLOBAL PARAMETERS #------------------------------------------------------------------------------ -health_check_period = 0 +#health_check_period = 0 # Health check period # Disabled (0) by default -health_check_timeout = 20 +#health_check_timeout = 20 # Health check timeout # 0 means no timeout -health_check_user = 'nobody' +#health_check_user = 'nobody' # Health check user -health_check_password = '' +#health_check_password = '' # Password for health check user # Leaving it empty will make Pgpool-II to first look for the # Password in pool_passwd file before using the empty password -health_check_database = '' +#health_check_database = '' # Database name for health check. If '', tries 'postgres' frist, -health_check_max_retries = 0 +#health_check_max_retries = 0 # Maximum number of times to retry a failed health check before giving up. -health_check_retry_delay = 1 +#health_check_retry_delay = 1 # Amount of time to wait (in seconds) between retries. -connect_timeout = 10000 +#connect_timeout = 10000 # Timeout value in milliseconds before giving up to connect to backend. # Default is 10000 ms (10 second). Flaky network user may want to increase # the value. 0 means no timeout. @@ -533,7 +533,7 @@ connect_timeout = 10000 # FAILOVER AND FAILBACK #------------------------------------------------------------------------------ -failover_command = '' +#failover_command = '' # Executes this command at failover # Special values: # %d = failed node id @@ -549,7 +549,7 @@ failover_command = '' # %N = old primary node hostname # %S = old primary node port number # %% = '%' character -failback_command = '' +#failback_command = '' # Executes this command at failback. # Special values: # %d = failed node id @@ -566,34 +566,34 @@ failback_command = '' # %S = old primary node port number # %% = '%' character -failover_on_backend_error = on +#failover_on_backend_error = on # Initiates failover when reading/writing to the # backend communication socket fails # If set to off, pgpool will report an # error and disconnect the session. -failover_on_backend_shutdown = off +#failover_on_backend_shutdown = off # Initiates failover when backend is shutdown, # or backend process is killed. # If set to off, pgpool will report an # error and disconnect the session. -detach_false_primary = off +#detach_false_primary = off # Detach false primary if on. Only # valid in streaming replicaton # mode and with PostgreSQL 9.6 or # after. -search_primary_node_timeout = 5min +#search_primary_node_timeout = 5min # Timeout in seconds to search for the # primary node when a failover occurs. # 0 means no timeout, keep searching # for a primary node forever. -auto_failback = off +#auto_failback = off # Dettached backend node reattach automatically # if replication_state is 'streaming'. -auto_failback_interval = 1min +#auto_failback_interval = 1min # Min interval of executing auto_failback in # seconds. @@ -601,22 +601,22 @@ auto_failback_interval = 1min # ONLINE RECOVERY #------------------------------------------------------------------------------ -recovery_user = 'nobody' +#recovery_user = 'nobody' # Online recovery user -recovery_password = '' +#recovery_password = '' # Online recovery password # Leaving it empty will make Pgpool-II to first look for the # Password in pool_passwd file before using the empty password -recovery_1st_stage_command = '' +#recovery_1st_stage_command = '' # Executes a command in first stage -recovery_2nd_stage_command = '' +#recovery_2nd_stage_command = '' # Executes a command in second stage -recovery_timeout = 90 +#recovery_timeout = 90 # Timeout in seconds to wait for the # recovering node's postmaster to start up # 0 means no wait -client_idle_limit_in_recovery = 0 +#client_idle_limit_in_recovery = 0 # Client is disconnected after being idle # for that many seconds in the second stage # of online recovery @@ -630,31 +630,31 @@ client_idle_limit_in_recovery = 0 # - Enabling - -use_watchdog = off +#use_watchdog = off # Activates watchdog # (change requires restart) # -Connection to up stream servers - -trusted_servers = '' +#trusted_servers = '' # trusted server list which are used # to confirm network connection # (hostA,hostB,hostC,...) # (change requires restart) -ping_path = '/bin' +#ping_path = '/bin' # ping command path # (change requires restart) # - Watchdog communication Settings - -hostname0 = '' +#hostname0 = '' # Host name or IP address of pgpool node # for watchdog connection # (change requires restart) -wd_port0 = 9000 +#wd_port0 = 9000 # Port number for watchdog service # (change requires restart) -pgpool_port0 = 9999 +#pgpool_port0 = 9999 # Port number for pgpool # (change requires restart) @@ -666,15 +666,15 @@ pgpool_port0 = 9999 #wd_port2 = 9000 #pgpool_port2 = 9999 -wd_priority = 1 +#wd_priority = 1 # priority of this watchdog in leader election # (change requires restart) -wd_authkey = '' +#wd_authkey = '' # Authentication key for watchdog communication # (change requires restart) -wd_ipc_socket_dir = '/tmp' +#wd_ipc_socket_dir = '/tmp' # Unix domain socket path for watchdog IPC socket # The Debian package defaults to # /var/run/postgresql @@ -683,65 +683,65 @@ wd_ipc_socket_dir = '/tmp' # - Virtual IP control Setting - -delegate_IP = '' +#delegate_IP = '' # delegate IP address # If this is empty, virtual IP never bring up. # (change requires restart) -if_cmd_path = '/sbin' +#if_cmd_path = '/sbin' # path to the directory where if_up/down_cmd exists # If if_up/down_cmd starts with "/", if_cmd_path will be ignored. # (change requires restart) -if_up_cmd = '/usr/bin/sudo /sbin/ip addr add $_IP_$/24 dev eth0 label eth0:0' +#if_up_cmd = '/usr/bin/sudo /sbin/ip addr add $_IP_$/24 dev eth0 label eth0:0' # startup delegate IP command # (change requires restart) -if_down_cmd = '/usr/bin/sudo /sbin/ip addr del $_IP_$/24 dev eth0' +#if_down_cmd = '/usr/bin/sudo /sbin/ip addr del $_IP_$/24 dev eth0' # shutdown delegate IP command # (change requires restart) -arping_path = '/usr/sbin' +#arping_path = '/usr/sbin' # arping command path # If arping_cmd starts with "/", if_cmd_path will be ignored. # (change requires restart) -arping_cmd = '/usr/bin/sudo /usr/sbin/arping -U $_IP_$ -w 1 -I eth0' +#arping_cmd = '/usr/bin/sudo /usr/sbin/arping -U $_IP_$ -w 1 -I eth0' # arping command # (change requires restart) # - Behaivor on escalation Setting - -clear_memqcache_on_escalation = on +#clear_memqcache_on_escalation = on # Clear all the query cache on shared memory # when standby pgpool escalate to active pgpool # (= virtual IP holder). # This should be off if client connects to pgpool # not using virtual IP. # (change requires restart) -wd_escalation_command = '' +#wd_escalation_command = '' # Executes this command at escalation on new active pgpool. # (change requires restart) -wd_de_escalation_command = '' +#wd_de_escalation_command = '' # Executes this command when leader pgpool resigns from being leader. # (change requires restart) # - Watchdog consensus settings for failover - -failover_when_quorum_exists = off +#failover_when_quorum_exists = off # Only perform backend node failover # when the watchdog cluster holds the quorum. # not allowed in replication mode # (change requires restart) -failover_require_consensus = off +#failover_require_consensus = off # Perform failover when majority of Pgpool-II nodes # aggrees on the backend node status change. # not allowed in replication mode # (change requires restart) -allow_multiple_failover_requests_from_node = off +#allow_multiple_failover_requests_from_node = off # A Pgpool-II node can cast multiple votes # for building the consensus on failover # (change requires restart) -enable_consensus_with_half_votes = off +#enable_consensus_with_half_votes = off # apply majority rule for consensus and quorum computation # at 50% of votes in a cluster with even number of nodes. # when enabled the existence of quorum and consensus @@ -755,7 +755,7 @@ enable_consensus_with_half_votes = off # -- common -- -wd_monitoring_interfaces_list = '' +#wd_monitoring_interfaces_list = '' # Comma separated list of interfaces names to monitor. # if any interface from the list is active the watchdog will # consider the network is fine @@ -763,24 +763,24 @@ wd_monitoring_interfaces_list = '' # '' to disable monitoring # (change requires restart) -wd_lifecheck_method = 'heartbeat' +#wd_lifecheck_method = 'heartbeat' # Method of watchdog lifecheck ('heartbeat' or 'query' or 'external') # (change requires restart) -wd_interval = 10 +#wd_interval = 10 # lifecheck interval (sec) > 0 # (change requires restart) # -- heartbeat mode -- -heartbeat_hostname0 = '' +#heartbeat_hostname0 = '' # Host name or IP address used # for sending heartbeat signal. # (change requires restart) -heartbeat_port0 = 9694 +#heartbeat_port0 = 9694 # Port number used for receiving/sending heartbeat signal # Usually this is the same as heartbeat_portX. # (change requires restart) -heartbeat_device0 = '' +#heartbeat_device0 = '' # Name of NIC device (such like 'eth0') # used for sending/receiving heartbeat # signal to/from destination 0. @@ -795,28 +795,28 @@ heartbeat_device0 = '' #heartbeat_port2 = 9694 #heartbeat_device2 = '' -wd_heartbeat_keepalive = 2 +#wd_heartbeat_keepalive = 2 # Interval time of sending heartbeat signal (sec) # (change requires restart) -wd_heartbeat_deadtime = 30 +#wd_heartbeat_deadtime = 30 # Deadtime interval for heartbeat signal (sec) # (change requires restart) # -- query mode -- -wd_life_point = 3 +#wd_life_point = 3 # lifecheck retry times # (change requires restart) -wd_lifecheck_query = 'SELECT 1' +#wd_lifecheck_query = 'SELECT 1' # lifecheck query to pgpool from watchdog # (change requires restart) -wd_lifecheck_dbname = 'template1' +#wd_lifecheck_dbname = 'template1' # Database name connected for lifecheck # (change requires restart) -wd_lifecheck_user = 'nobody' +#wd_lifecheck_user = 'nobody' # watchdog user monitoring pgpools in lifecheck # (change requires restart) -wd_lifecheck_password = '' +#wd_lifecheck_password = '' # Password for watchdog user in lifecheck # Leaving it empty will make Pgpool-II to first look for the # Password in pool_passwd file before using the empty password @@ -841,7 +841,7 @@ wd_lifecheck_password = '' #------------------------------------------------------------------------------ # OTHERS #------------------------------------------------------------------------------ -relcache_expire = 0 +#relcache_expire = 0 # Life time of relation cache in seconds. # 0 means no cache expiration(the default). # The relation cache is used for cache the @@ -856,24 +856,24 @@ relcache_expire = 0 # not consistent anymore. # For this purpose, cache_expiration # controls the life time of the cache. -relcache_size = 256 +#relcache_size = 256 # Number of relation cache # entry. If you see frequently: # "pool_search_relcache: cache replacement happend" # in the pgpool log, you might want to increate this number. -check_temp_table = catalog +#check_temp_table = catalog # Temporary table check method. catalog, trace or none. # Default is catalog. -check_unlogged_table = on +#check_unlogged_table = on # If on, enable unlogged table check in SELECT statements. # This initiates queries against system catalog of primary/main # thus increases load of primary. # If you are absolutely sure that your system never uses unlogged tables # and you want to save access to primary/main, you could turn this off. # Default is on. -enable_shared_relcache = on +#enable_shared_relcache = on # If on, relation cache stored in memory cache, # the cache is shared among child process. # Default is on. @@ -885,58 +885,58 @@ relcache_query_target = primary #------------------------------------------------------------------------------ # IN MEMORY QUERY MEMORY CACHE #------------------------------------------------------------------------------ -memory_cache_enabled = off +#memory_cache_enabled = off # If on, use the memory cache functionality, off by default # (change requires restart) -memqcache_method = 'shmem' +#memqcache_method = 'shmem' # Cache storage method. either 'shmem'(shared memory) or # 'memcached'. 'shmem' by default # (change requires restart) -memqcache_memcached_host = 'localhost' +#memqcache_memcached_host = 'localhost' # Memcached host name or IP address. Mandatory if # memqcache_method = 'memcached'. # Defaults to localhost. # (change requires restart) -memqcache_memcached_port = 11211 +#memqcache_memcached_port = 11211 # Memcached port number. Mondatory if memqcache_method = 'memcached'. # Defaults to 11211. # (change requires restart) -memqcache_total_size = 64MB +#memqcache_total_size = 64MB # Total memory size in bytes for storing memory cache. # Mandatory if memqcache_method = 'shmem'. # Defaults to 64MB. # (change requires restart) -memqcache_max_num_cache = 1000000 +#memqcache_max_num_cache = 1000000 # Total number of cache entries. Mandatory # if memqcache_method = 'shmem'. # Each cache entry consumes 48 bytes on shared memory. # Defaults to 1,000,000(45.8MB). # (change requires restart) -memqcache_expire = 0 +#memqcache_expire = 0 # Memory cache entry life time specified in seconds. # 0 means infinite life time. 0 by default. # (change requires restart) -memqcache_auto_cache_invalidation = on +#memqcache_auto_cache_invalidation = on # If on, invalidation of query cache is triggered by corresponding # DDL/DML/DCL(and memqcache_expire). If off, it is only triggered # by memqcache_expire. on by default. # (change requires restart) -memqcache_maxcache = 400kB +#memqcache_maxcache = 400kB # Maximum SELECT result size in bytes. # Must be smaller than memqcache_cache_block_size. Defaults to 400KB. # (change requires restart) -memqcache_cache_block_size = 1MB +#memqcache_cache_block_size = 1MB # Cache block size in bytes. Mandatory if memqcache_method = 'shmem'. # Defaults to 1MB. # (change requires restart) -memqcache_oiddir = '/var/log/pgpool/oiddir' +#memqcache_oiddir = '/var/log/pgpool/oiddir' # Temporary work directory to record table oids # (change requires restart) -cache_safe_memqcache_table_list = '' +#cache_safe_memqcache_table_list = '' # Comma separated list of table names to memcache # that don't write to database # Regexp are accepted -cache_unsafe_memqcache_table_list = '' +#cache_unsafe_memqcache_table_list = '' # Comma separated list of table names not to memcache # that don't write to database # Regexp are accepted diff --git a/src/sample/pgpool.conf.sample-slony b/src/sample/pgpool.conf.sample-slony index c38072a71..bc68f95e1 100644 --- a/src/sample/pgpool.conf.sample-slony +++ b/src/sample/pgpool.conf.sample-slony @@ -32,40 +32,40 @@ backend_clustering_mode = 'slony' # - pgpool Connection Settings - -listen_addresses = 'localhost' +#listen_addresses = 'localhost' # Host name or IP address to listen on: # '*' for all, '' for no TCP/IP connections # (change requires restart) -port = 9999 +#port = 9999 # Port number # (change requires restart) -socket_dir = '/tmp' +#socket_dir = '/tmp' # Unix domain socket path # The Debian package defaults to # /var/run/postgresql # (change requires restart) -listen_backlog_multiplier = 2 +#listen_backlog_multiplier = 2 # Set the backlog parameter of listen(2) to # num_init_children * listen_backlog_multiplier. # (change requires restart) -serialize_accept = off +#serialize_accept = off # whether to serialize accept() call to avoid thundering herd problem # (change requires restart) -reserved_connections = 0 +#reserved_connections = 0 # Number of reserved connections. # Pgpool-II does not accept connections if over # num_init_chidlren - reserved_connections. # - pgpool Communication Manager Connection Settings - -pcp_listen_addresses = '*' +#pcp_listen_addresses = '*' # Host name or IP address for pcp process to listen on: # '*' for all, '' for no TCP/IP connections # (change requires restart) -pcp_port = 9898 +#pcp_port = 9898 # Port number for pcp # (change requires restart) -pcp_socket_dir = '/tmp' +#pcp_socket_dir = '/tmp' # Unix domain socket path for pcp # The Debian package defaults to # /var/run/postgresql @@ -73,15 +73,15 @@ pcp_socket_dir = '/tmp' # - Backend Connection Settings - -backend_hostname0 = 'host1' +#backend_hostname0 = 'host1' # Host name or IP address to connect to for backend 0 -backend_port0 = 5432 +#backend_port0 = 5432 # Port number for backend 0 -backend_weight0 = 1 +#backend_weight0 = 1 # Weight for backend 0 (only in load balancing mode) -backend_data_directory0 = '/data' +#backend_data_directory0 = '/data' # Data directory for backend 0 -backend_flag0 = 'ALLOW_TO_FAILOVER' +#backend_flag0 = 'ALLOW_TO_FAILOVER' # Controls various backend behavior # ALLOW_TO_FAILOVER, DISALLOW_TO_FAILOVER # or ALWAYS_PRIMARY @@ -93,24 +93,24 @@ backend_flag0 = 'ALLOW_TO_FAILOVER' # - Authentication - -enable_pool_hba = off +#enable_pool_hba = off # Use pool_hba.conf for client authentication -pool_passwd = 'pool_passwd' +#pool_passwd = 'pool_passwd' # File name of pool_passwd for md5 authentication. # "" disables pool_passwd. # (change requires restart) -authentication_timeout = 60 +#authentication_timeout = 60 # Delay in seconds to complete client authentication # 0 means no timeout. -allow_clear_text_frontend_auth = off +#allow_clear_text_frontend_auth = off # Allow Pgpool-II to use clear text password authentication # with clients, when pool_passwd does not # contain the user password # - SSL Connections - -ssl = off +#ssl = off # Enable SSL support # (change requires restart) #ssl_key = 'server.key' @@ -130,16 +130,16 @@ ssl = off # SSL certificate revocation list file # (change requires restart) -ssl_ciphers = 'HIGH:MEDIUM:+3DES:!aNULL' +#ssl_ciphers = 'HIGH:MEDIUM:+3DES:!aNULL' # Allowed SSL ciphers # (change requires restart) -ssl_prefer_server_ciphers = off +#ssl_prefer_server_ciphers = off # Use server's SSL cipher preferences, # rather than the client's # (change requires restart) -ssl_ecdh_curve = 'prime256v1' +#ssl_ecdh_curve = 'prime256v1' # Name of the curve to use in ECDH key exchange -ssl_dh_params_file = '' +#ssl_dh_params_file = '' # Name of the file containing Diffie-Hellman parameters used # for so-called ephemeral DH family of SSL cipher. #ssl_passphrase_command='' @@ -153,24 +153,24 @@ ssl_dh_params_file = '' # - Concurrent session and pool size - -num_init_children = 32 +#num_init_children = 32 # Number of concurrent sessions allowed # (change requires restart) -max_pool = 4 +#max_pool = 4 # Number of connection pool caches per connection # (change requires restart) # - Life time - -child_life_time = 5min +#child_life_time = 5min # Pool exits after being idle for this many seconds -child_max_connections = 0 +#child_max_connections = 0 # Pool exits after receiving that many connections # 0 means no exit -connection_life_time = 0 +#connection_life_time = 0 # Connection to backend closes after being idle for this many seconds # 0 means no close -client_idle_limit = 0 +#client_idle_limit = 0 # Client is disconnected after being idle for that many seconds # (even inside an explicit transactions!) # 0 means no disconnection @@ -189,32 +189,32 @@ log_destination = 'stderr' # - What to log - -log_line_prefix = '%t: pid %p: ' # printf-style string to output at beginning of each log line. +#log_line_prefix = '%t: pid %p: ' # printf-style string to output at beginning of each log line. -log_connections = off +#log_connections = off # Log connections -log_disconnections = off +#log_disconnections = off # Log disconnections -log_hostname = off +#log_hostname = off # Hostname will be shown in ps status # and in logs if connections are logged -log_statement = off +#log_statement = off # Log all statements -log_per_node_statement = off +#log_per_node_statement = off # Log all statements # with node and backend informations -log_client_messages = off +#log_client_messages = off # Log any client messages -log_standby_delay = 'none' +#log_standby_delay = 'none' # Log standby delay # Valid values are combinations of always, # if_over_threshold, none # - Syslog specific - -syslog_facility = 'LOCAL0' +#syslog_facility = 'LOCAL0' # Syslog local facility. Default to LOCAL0 -syslog_ident = 'pgpool' +#syslog_ident = 'pgpool' # Syslog program identification string # Default to 'pgpool' @@ -289,13 +289,13 @@ syslog_ident = 'pgpool' # FILE LOCATIONS #------------------------------------------------------------------------------ -pid_file_name = '/var/run/pgpool/pgpool.pid' +#pid_file_name = '/var/run/pgpool/pgpool.pid' # PID file name # Can be specified as relative to the" # location of pgpool.conf file or # as an absolute path # (change requires restart) -logdir = '/tmp' +#logdir = '/tmp' # Directory of pgPool status file # (change requires restart) @@ -304,14 +304,14 @@ logdir = '/tmp' # CONNECTION POOLING #------------------------------------------------------------------------------ -connection_cache = on +#connection_cache = on # Activate connection pools # (change requires restart) # Semicolon separated list of queries # to be issued at the end of a session # The default is for 8.3 and later -reset_query_list = 'ABORT; DISCARD ALL' +#reset_query_list = 'ABORT; DISCARD ALL' # The following one is for 8.2 and before #reset_query_list = 'ABORT; RESET ALL; SET SESSION AUTHORIZATION DEFAULT' @@ -320,31 +320,31 @@ reset_query_list = 'ABORT; DISCARD ALL' # REPLICATION MODE #------------------------------------------------------------------------------ -replicate_select = off +#replicate_select = off # Replicate SELECT statements # when in replication mode # replicate_select is higher priority than # load_balance_mode. -insert_lock = off +#insert_lock = off # Automatically locks a dummy row or a table # with INSERT statements to keep SERIAL data # consistency # Without SERIAL, no lock will be issued -lobj_lock_table = '' +#lobj_lock_table = '' # When rewriting lo_creat command in # replication mode, specify table name to # lock # - Degenerate handling - -replication_stop_on_mismatch = off +#replication_stop_on_mismatch = off # On disagreement with the packet kind # sent from backend, degenerate the node # which is most likely "minority" # If off, just force to exit this session -failover_if_affected_tuples_mismatch = off +#failover_if_affected_tuples_mismatch = off # On disagreement with the number of affected # tuples in UPDATE/DELETE queries, then # degenerate the node which is most likely @@ -357,16 +357,16 @@ failover_if_affected_tuples_mismatch = off # LOAD BALANCING MODE #------------------------------------------------------------------------------ -load_balance_mode = on +#load_balance_mode = on # Activate load balancing mode # (change requires restart) -ignore_leading_white_space = on +#ignore_leading_white_space = on # Ignore leading white spaces of each query -read_only_function_list = '' +#read_only_function_list = '' # Comma separated list of function names # that don't write to database # Regexp are accepted -write_function_list = '' +#write_function_list = '' # Comma separated list of function names # that write to database # Regexp are accepted @@ -375,28 +375,28 @@ write_function_list = '' # If it's volatile, the function is regarded as a # writing function. -primary_routing_query_pattern_list = '' +#primary_routing_query_pattern_list = '' # Semicolon separated list of query patterns # that should be sent to primary node # Regexp are accepted # valid for streaming replicaton mode only. -database_redirect_preference_list = '' +#database_redirect_preference_list = '' # comma separated list of pairs of database and node id. # example: postgres:primary,mydb[0-4]:1,mydb[5-9]:2' # valid for streaming replicaton mode only. -app_name_redirect_preference_list = '' +#app_name_redirect_preference_list = '' # comma separated list of pairs of app name and node id. # example: 'psql:primary,myapp[0-4]:1,myapp[5-9]:standby' # valid for streaming replicaton mode only. -allow_sql_comments = off +#allow_sql_comments = off # if on, ignore SQL comments when judging if load balance or # query cache is possible. # If off, SQL comments effectively prevent the judgment # (pre 3.4 behavior). -disable_load_balance_on_write = 'transaction' +#disable_load_balance_on_write = 'transaction' # Load balance behavior when write query is issued # in an explicit transaction. # @@ -424,7 +424,7 @@ disable_load_balance_on_write = 'transaction' # Note that any query not in an explicit transaction # is not affected by the parameter except 'always'. -dml_adaptive_object_relationship_list= '' +#dml_adaptive_object_relationship_list= '' # comma separated list of object pairs # [object]:[dependent-object], to disable load balancing # of dependent objects within the explicit transaction @@ -439,31 +439,31 @@ statement_level_load_balance = off # Enables statement level load balancing #------------------------------------------------------------------------------ -# NATIVE REPLICATION MODE +# STREAMING REPLICATION MODE #------------------------------------------------------------------------------ # - Streaming - -sr_check_period = 0 +#sr_check_period = 0 # Streaming replication check period # Disabled (0) by default -sr_check_user = 'nobody' +#sr_check_user = 'nobody' # Streaming replication check user # This is neccessary even if you disable streaming # replication delay check by sr_check_period = 0 -sr_check_password = '' +#sr_check_password = '' # Password for streaming replication check user # Leaving it empty will make Pgpool-II to first look for the # Password in pool_passwd file before using the empty password -sr_check_database = 'postgres' +#sr_check_database = 'postgres' # Database name for streaming replication check -delay_threshold = 0 +#delay_threshold = 0 # Threshold before not dispatching query to standby node # Unit is in bytes # Disabled (0) by default -prefer_lower_delay_standby = off +#prefer_lower_delay_standby = off # If delay_threshold is set larger than 0, Pgpool-II send to # the primary when selected node is delayed over delay_threshold. # If this is set to on, Pgpool-II send query to other standby @@ -471,7 +471,7 @@ prefer_lower_delay_standby = off # - Special commands - -follow_primary_command = '' +#follow_primary_command = '' # Executes this command after main node failover # Special values: # %d = failed node id @@ -492,26 +492,26 @@ follow_primary_command = '' # HEALTH CHECK GLOBAL PARAMETERS #------------------------------------------------------------------------------ -health_check_period = 0 +#health_check_period = 0 # Health check period # Disabled (0) by default -health_check_timeout = 20 +#health_check_timeout = 20 # Health check timeout # 0 means no timeout -health_check_user = 'nobody' +#health_check_user = 'nobody' # Health check user -health_check_password = '' +#health_check_password = '' # Password for health check user # Leaving it empty will make Pgpool-II to first look for the # Password in pool_passwd file before using the empty password -health_check_database = '' +#health_check_database = '' # Database name for health check. If '', tries 'postgres' frist, -health_check_max_retries = 0 +#health_check_max_retries = 0 # Maximum number of times to retry a failed health check before giving up. -health_check_retry_delay = 1 +#health_check_retry_delay = 1 # Amount of time to wait (in seconds) between retries. -connect_timeout = 10000 +#connect_timeout = 10000 # Timeout value in milliseconds before giving up to connect to backend. # Default is 10000 ms (10 second). Flaky network user may want to increase # the value. 0 means no timeout. @@ -534,7 +534,7 @@ connect_timeout = 10000 # FAILOVER AND FAILBACK #------------------------------------------------------------------------------ -failover_command = '' +#failover_command = '' # Executes this command at failover # Special values: # %d = failed node id @@ -550,7 +550,7 @@ failover_command = '' # %N = old primary node hostname # %S = old primary node port number # %% = '%' character -failback_command = '' +#failback_command = '' # Executes this command at failback. # Special values: # %d = failed node id @@ -567,34 +567,34 @@ failback_command = '' # %S = old primary node port number # %% = '%' character -failover_on_backend_error = on +#failover_on_backend_error = on # Initiates failover when reading/writing to the # backend communication socket fails # If set to off, pgpool will report an # error and disconnect the session. -failover_on_backend_shutdown = off +#failover_on_backend_shutdown = off # Initiates failover when backend is shutdown, # or backend process is killed. # If set to off, pgpool will report an # error and disconnect the session. -detach_false_primary = off +#detach_false_primary = off # Detach false primary if on. Only # valid in streaming replicaton # mode and with PostgreSQL 9.6 or # after. -search_primary_node_timeout = 5min +#search_primary_node_timeout = 5min # Timeout in seconds to search for the # primary node when a failover occurs. # 0 means no timeout, keep searching # for a primary node forever. -auto_failback = off +#auto_failback = off # Dettached backend node reattach automatically # if replication_state is 'streaming'. -auto_failback_interval = 1min +#auto_failback_interval = 1min # Min interval of executing auto_failback in # seconds. @@ -602,22 +602,22 @@ auto_failback_interval = 1min # ONLINE RECOVERY #------------------------------------------------------------------------------ -recovery_user = 'nobody' +#recovery_user = 'nobody' # Online recovery user -recovery_password = '' +#recovery_password = '' # Online recovery password # Leaving it empty will make Pgpool-II to first look for the # Password in pool_passwd file before using the empty password -recovery_1st_stage_command = '' +#recovery_1st_stage_command = '' # Executes a command in first stage -recovery_2nd_stage_command = '' +#recovery_2nd_stage_command = '' # Executes a command in second stage -recovery_timeout = 90 +#recovery_timeout = 90 # Timeout in seconds to wait for the # recovering node's postmaster to start up # 0 means no wait -client_idle_limit_in_recovery = 0 +#client_idle_limit_in_recovery = 0 # Client is disconnected after being idle # for that many seconds in the second stage # of online recovery @@ -631,31 +631,31 @@ client_idle_limit_in_recovery = 0 # - Enabling - -use_watchdog = off +#use_watchdog = off # Activates watchdog # (change requires restart) # -Connection to up stream servers - -trusted_servers = '' +#trusted_servers = '' # trusted server list which are used # to confirm network connection # (hostA,hostB,hostC,...) # (change requires restart) -ping_path = '/bin' +#ping_path = '/bin' # ping command path # (change requires restart) # - Watchdog communication Settings - -hostname0 = '' +#hostname0 = '' # Host name or IP address of pgpool node # for watchdog connection # (change requires restart) -wd_port0 = 9000 +#wd_port0 = 9000 # Port number for watchdog service # (change requires restart) -pgpool_port0 = 9999 +#pgpool_port0 = 9999 # Port number for pgpool # (change requires restart) @@ -667,15 +667,15 @@ pgpool_port0 = 9999 #wd_port2 = 9000 #pgpool_port2 = 9999 -wd_priority = 1 +#wd_priority = 1 # priority of this watchdog in leader election # (change requires restart) -wd_authkey = '' +#wd_authkey = '' # Authentication key for watchdog communication # (change requires restart) -wd_ipc_socket_dir = '/tmp' +#wd_ipc_socket_dir = '/tmp' # Unix domain socket path for watchdog IPC socket # The Debian package defaults to # /var/run/postgresql @@ -683,64 +683,64 @@ wd_ipc_socket_dir = '/tmp' # - Virtual IP control Setting - -delegate_IP = '' +#delegate_IP = '' # delegate IP address # If this is empty, virtual IP never bring up. # (change requires restart) -if_cmd_path = '/sbin' +#if_cmd_path = '/sbin' # path to the directory where if_up/down_cmd exists # If if_up/down_cmd starts with "/", if_cmd_path will be ignored. # (change requires restart) -if_up_cmd = '/usr/bin/sudo /sbin/ip addr add $_IP_$/24 dev eth0 label eth0:0' +#if_up_cmd = '/usr/bin/sudo /sbin/ip addr add $_IP_$/24 dev eth0 label eth0:0' # startup delegate IP command # (change requires restart) -if_down_cmd = '/usr/bin/sudo /sbin/ip addr del $_IP_$/24 dev eth0' +#if_down_cmd = '/usr/bin/sudo /sbin/ip addr del $_IP_$/24 dev eth0' # shutdown delegate IP command # (change requires restart) -arping_path = '/usr/sbin' +#arping_path = '/usr/sbin' # arping command path # If arping_cmd starts with "/", arping_path will be ignored. # (change requires restart) -arping_cmd = '/usr/bin/sudo /usr/sbin/arping -U $_IP_$ -w 1 -I eth0' +#arping_cmd = '/usr/bin/sudo /usr/sbin/arping -U $_IP_$ -w 1 -I eth0' # arping command # (change requires restart) # - Behaivor on escalation Setting - -clear_memqcache_on_escalation = on +#clear_memqcache_on_escalation = on # Clear all the query cache on shared memory # when standby pgpool escalate to active pgpool # (= virtual IP holder). # This should be off if client connects to pgpool # not using virtual IP. # (change requires restart) -wd_escalation_command = '' +#wd_escalation_command = '' # Executes this command at escalation on new active pgpool. # (change requires restart) -wd_de_escalation_command = '' +#wd_de_escalation_command = '' # Executes this command when leader pgpool resigns from being leader. # (change requires restart) # - Watchdog consensus settings for failover - -failover_when_quorum_exists = on +#failover_when_quorum_exists = on # Only perform backend node failover # when the watchdog cluster holds the quorum # (change requires restart) -failover_require_consensus = on +#failover_require_consensus = on # Perform failover when majority of Pgpool-II nodes # aggrees on the backend node status change # (change requires restart) -allow_multiple_failover_requests_from_node = off +#allow_multiple_failover_requests_from_node = off # A Pgpool-II node can cast multiple votes # for building the consensus on failover # (change requires restart) -enable_consensus_with_half_votes = off +#enable_consensus_with_half_votes = off # apply majority rule for consensus and quorum computation # at 50% of votes in a cluster with even number of nodes. # when enabled the existence of quorum and consensus @@ -754,7 +754,7 @@ enable_consensus_with_half_votes = off # -- common -- -wd_monitoring_interfaces_list = '' +#wd_monitoring_interfaces_list = '' # Comma separated list of interfaces names to monitor. # if any interface from the list is active the watchdog will # consider the network is fine @@ -762,24 +762,24 @@ wd_monitoring_interfaces_list = '' # '' to disable monitoring # (change requires restart) -wd_lifecheck_method = 'heartbeat' +#wd_lifecheck_method = 'heartbeat' # Method of watchdog lifecheck ('heartbeat' or 'query' or 'external') # (change requires restart) -wd_interval = 10 +#wd_interval = 10 # lifecheck interval (sec) > 0 # (change requires restart) # -- heartbeat mode -- -heartbeat_hostname0 = '' +#heartbeat_hostname0 = '' # Host name or IP address used # for sending heartbeat signal. # (change requires restart) -heartbeat_port0 = 9694 +#heartbeat_port0 = 9694 # Port number used for receiving/sending heartbeat signal # Usually this is the same as heartbeat_portX. # (change requires restart) -heartbeat_device0 = '' +#heartbeat_device0 = '' # Name of NIC device (such like 'eth0') # used for sending/receiving heartbeat # signal to/from destination 0. @@ -794,28 +794,28 @@ heartbeat_device0 = '' #heartbeat_port2 = 9694 #heartbeat_device2 = '' -wd_heartbeat_keepalive = 2 +#wd_heartbeat_keepalive = 2 # Interval time of sending heartbeat signal (sec) # (change requires restart) -wd_heartbeat_deadtime = 30 +#wd_heartbeat_deadtime = 30 # Deadtime interval for heartbeat signal (sec) # (change requires restart) # -- query mode -- -wd_life_point = 3 +#wd_life_point = 3 # lifecheck retry times # (change requires restart) -wd_lifecheck_query = 'SELECT 1' +#wd_lifecheck_query = 'SELECT 1' # lifecheck query to pgpool from watchdog # (change requires restart) -wd_lifecheck_dbname = 'template1' +#wd_lifecheck_dbname = 'template1' # Database name connected for lifecheck # (change requires restart) -wd_lifecheck_user = 'nobody' +#wd_lifecheck_user = 'nobody' # watchdog user monitoring pgpools in lifecheck # (change requires restart) -wd_lifecheck_password = '' +#wd_lifecheck_password = '' # Password for watchdog user in lifecheck # Leaving it empty will make Pgpool-II to first look for the # Password in pool_passwd file before using the empty password @@ -840,7 +840,7 @@ wd_lifecheck_password = '' #------------------------------------------------------------------------------ # OTHERS #------------------------------------------------------------------------------ -relcache_expire = 0 +#relcache_expire = 0 # Life time of relation cache in seconds. # 0 means no cache expiration(the default). # The relation cache is used for cache the @@ -855,24 +855,24 @@ relcache_expire = 0 # not consistent anymore. # For this purpose, cache_expiration # controls the life time of the cache. -relcache_size = 256 +#relcache_size = 256 # Number of relation cache # entry. If you see frequently: # "pool_search_relcache: cache replacement happend" # in the pgpool log, you might want to increate this number. -check_temp_table = catalog +#check_temp_table = catalog # Temporary table check method. catalog, trace or none. # Default is catalog. -check_unlogged_table = on +#check_unlogged_table = on # If on, enable unlogged table check in SELECT statements. # This initiates queries against system catalog of primary/main # thus increases load of primary. # If you are absolutely sure that your system never uses unlogged tables # and you want to save access to primary/main, you could turn this off. # Default is on. -enable_shared_relcache = on +#enable_shared_relcache = on # If on, relation cache stored in memory cache, # the cache is shared among child process. # Default is on. @@ -884,58 +884,58 @@ relcache_query_target = primary #------------------------------------------------------------------------------ # IN MEMORY QUERY MEMORY CACHE #------------------------------------------------------------------------------ -memory_cache_enabled = off +#memory_cache_enabled = off # If on, use the memory cache functionality, off by default # (change requires restart) -memqcache_method = 'shmem' +#memqcache_method = 'shmem' # Cache storage method. either 'shmem'(shared memory) or # 'memcached'. 'shmem' by default # (change requires restart) -memqcache_memcached_host = 'localhost' +#memqcache_memcached_host = 'localhost' # Memcached host name or IP address. Mandatory if # memqcache_method = 'memcached'. # Defaults to localhost. # (change requires restart) -memqcache_memcached_port = 11211 +#memqcache_memcached_port = 11211 # Memcached port number. Mondatory if memqcache_method = 'memcached'. # Defaults to 11211. # (change requires restart) -memqcache_total_size = 64MB +#memqcache_total_size = 64MB # Total memory size in bytes for storing memory cache. # Mandatory if memqcache_method = 'shmem'. # Defaults to 64MB. # (change requires restart) -memqcache_max_num_cache = 1000000 +#memqcache_max_num_cache = 1000000 # Total number of cache entries. Mandatory # if memqcache_method = 'shmem'. # Each cache entry consumes 48 bytes on shared memory. # Defaults to 1,000,000(45.8MB). # (change requires restart) -memqcache_expire = 0 +#memqcache_expire = 0 # Memory cache entry life time specified in seconds. # 0 means infinite life time. 0 by default. # (change requires restart) -memqcache_auto_cache_invalidation = on +#memqcache_auto_cache_invalidation = on # If on, invalidation of query cache is triggered by corresponding # DDL/DML/DCL(and memqcache_expire). If off, it is only triggered # by memqcache_expire. on by default. # (change requires restart) -memqcache_maxcache = 400kB +#memqcache_maxcache = 400kB # Maximum SELECT result size in bytes. # Must be smaller than memqcache_cache_block_size. Defaults to 400KB. # (change requires restart) -memqcache_cache_block_size = 1MB +#memqcache_cache_block_size = 1MB # Cache block size in bytes. Mandatory if memqcache_method = 'shmem'. # Defaults to 1MB. # (change requires restart) -memqcache_oiddir = '/var/log/pgpool/oiddir' +#memqcache_oiddir = '/var/log/pgpool/oiddir' # Temporary work directory to record table oids # (change requires restart) -cache_safe_memqcache_table_list = '' +#cache_safe_memqcache_table_list = '' # Comma separated list of table names to memcache # that don't write to database # Regexp are accepted -cache_unsafe_memqcache_table_list = '' +#cache_unsafe_memqcache_table_list = '' # Comma separated list of table names not to memcache # that don't write to database # Regexp are accepted diff --git a/src/sample/pgpool.conf.sample-snapshot b/src/sample/pgpool.conf.sample-snapshot index 8cf8ed737..a039dc4d6 100644 --- a/src/sample/pgpool.conf.sample-snapshot +++ b/src/sample/pgpool.conf.sample-snapshot @@ -32,40 +32,40 @@ backend_clustering_mode = 'snapshot_isolation' # - pgpool Connection Settings - -listen_addresses = 'localhost' +#listen_addresses = 'localhost' # Host name or IP address to listen on: # '*' for all, '' for no TCP/IP connections # (change requires restart) -port = 9999 +#port = 9999 # Port number # (change requires restart) -socket_dir = '/tmp' +#socket_dir = '/tmp' # Unix domain socket path # The Debian package defaults to # /var/run/postgresql # (change requires restart) -listen_backlog_multiplier = 2 +#listen_backlog_multiplier = 2 # Set the backlog parameter of listen(2) to # num_init_children * listen_backlog_multiplier. # (change requires restart) -serialize_accept = off +#serialize_accept = off # whether to serialize accept() call to avoid thundering herd problem # (change requires restart) -reserved_connections = 0 +#reserved_connections = 0 # Number of reserved connections. # Pgpool-II does not accept connections if over # num_init_chidlren - reserved_connections. # - pgpool Communication Manager Connection Settings - -pcp_listen_addresses = '*' +#pcp_listen_addresses = '*' # Host name or IP address for pcp process to listen on: # '*' for all, '' for no TCP/IP connections # (change requires restart) -pcp_port = 9898 +#pcp_port = 9898 # Port number for pcp # (change requires restart) -pcp_socket_dir = '/tmp' +#pcp_socket_dir = '/tmp' # Unix domain socket path for pcp # The Debian package defaults to # /var/run/postgresql @@ -73,15 +73,15 @@ pcp_socket_dir = '/tmp' # - Backend Connection Settings - -backend_hostname0 = 'host1' +#backend_hostname0 = 'host1' # Host name or IP address to connect to for backend 0 -backend_port0 = 5432 +#backend_port0 = 5432 # Port number for backend 0 -backend_weight0 = 1 +#backend_weight0 = 1 # Weight for backend 0 (only in load balancing mode) -backend_data_directory0 = '/data' +#backend_data_directory0 = '/data' # Data directory for backend 0 -backend_flag0 = 'ALLOW_TO_FAILOVER' +#backend_flag0 = 'ALLOW_TO_FAILOVER' # Controls various backend behavior # ALLOW_TO_FAILOVER or DISALLOW_TO_FAILOVER #backend_hostname1 = 'host2' @@ -92,13 +92,13 @@ backend_flag0 = 'ALLOW_TO_FAILOVER' # - Authentication - -enable_pool_hba = off +#enable_pool_hba = off # Use pool_hba.conf for client authentication -pool_passwd = 'pool_passwd' +#pool_passwd = 'pool_passwd' # File name of pool_passwd for md5 authentication. # "" disables pool_passwd. # (change requires restart) -authentication_timeout = 1min +#authentication_timeout = 1min # Delay in seconds to complete client authentication # 0 means no timeout. @@ -109,7 +109,7 @@ allow_clear_text_frontend_auth = off # - SSL Connections - -ssl = off +#ssl = off # Enable SSL support # (change requires restart) #ssl_key = 'server.key' @@ -129,16 +129,16 @@ ssl = off # SSL certificate revocation list file # (change requires restart) -ssl_ciphers = 'HIGH:MEDIUM:+3DES:!aNULL' +#ssl_ciphers = 'HIGH:MEDIUM:+3DES:!aNULL' # Allowed SSL ciphers # (change requires restart) -ssl_prefer_server_ciphers = off +#ssl_prefer_server_ciphers = off # Use server's SSL cipher preferences, # rather than the client's # (change requires restart) -ssl_ecdh_curve = 'prime256v1' +#ssl_ecdh_curve = 'prime256v1' # Name of the curve to use in ECDH key exchange -ssl_dh_params_file = '' +#ssl_dh_params_file = '' # Name of the file containing Diffie-Hellman parameters used # for so-called ephemeral DH family of SSL cipher. #ssl_passphrase_command='' @@ -152,24 +152,24 @@ ssl_dh_params_file = '' # - Concurrent session and pool size - -num_init_children = 32 +#num_init_children = 32 # Number of concurrent sessions allowed # (change requires restart) -max_pool = 4 +#max_pool = 4 # Number of connection pool caches per connection # (change requires restart) # - Life time - -child_life_time = 5min +#child_life_time = 5min # Pool exits after being idle for this many seconds -child_max_connections = 0 +#child_max_connections = 0 # Pool exits after receiving that many connections # 0 means no exit -connection_life_time = 0 +#connection_life_time = 0 # Connection to backend closes after being idle for this many seconds # 0 means no close -client_idle_limit = 0 +#client_idle_limit = 0 # Client is disconnected after being idle for that many seconds # (even inside an explicit transactions!) # 0 means no disconnection @@ -181,37 +181,37 @@ client_idle_limit = 0 # - Where to log - -log_destination = 'stderr' +#log_destination = 'stderr' # Where to log # Valid values are combinations of stderr, # and syslog. Default to stderr. # - What to log - -log_line_prefix = '%t: pid %p: ' # printf-style string to output at beginning of each log line. +#log_line_prefix = '%t: pid %p: ' # printf-style string to output at beginning of each log line. -log_connections = off +#log_connections = off # Log connections -log_hostname = off +#log_hostname = off # Hostname will be shown in ps status # and in logs if connections are logged -log_statement = off +#log_statement = off # Log all statements -log_per_node_statement = off +#log_per_node_statement = off # Log all statements # with node and backend informations -log_client_messages = off +#log_client_messages = off # Log any client messages -log_standby_delay = 'none' +#log_standby_delay = 'none' # Log standby delay # Valid values are combinations of always, # if_over_threshold, none # - Syslog specific - -syslog_facility = 'LOCAL0' +#syslog_facility = 'LOCAL0' # Syslog local facility. Default to LOCAL0 -syslog_ident = 'pgpool' +#syslog_ident = 'pgpool' # Syslog program identification string # Default to 'pgpool' @@ -286,13 +286,13 @@ syslog_ident = 'pgpool' # FILE LOCATIONS #------------------------------------------------------------------------------ -pid_file_name = '/var/run/pgpool/pgpool.pid' +#pid_file_name = '/var/run/pgpool/pgpool.pid' # PID file name # Can be specified as relative to the" # location of pgpool.conf file or # as an absolute path # (change requires restart) -logdir = '/tmp' +#logdir = '/tmp' # Directory of pgPool status file # (change requires restart) @@ -301,14 +301,14 @@ logdir = '/tmp' # CONNECTION POOLING #------------------------------------------------------------------------------ -connection_cache = on +#connection_cache = on # Activate connection pools # (change requires restart) # Semicolon separated list of queries # to be issued at the end of a session # The default is for 8.3 and later -reset_query_list = 'ABORT; DISCARD ALL' +#reset_query_list = 'ABORT; DISCARD ALL' # The following one is for 8.2 and before #reset_query_list = 'ABORT; RESET ALL; SET SESSION AUTHORIZATION DEFAULT' @@ -317,31 +317,31 @@ reset_query_list = 'ABORT; DISCARD ALL' # REPLICATION MODE #------------------------------------------------------------------------------ -replicate_select = off +#replicate_select = off # Replicate SELECT statements # when in replication mode # replicate_select is higher priority than # load_balance_mode. -insert_lock = on +#insert_lock = on # Automatically locks a dummy row or a table # with INSERT statements to keep SERIAL data # consistency # Without SERIAL, no lock will be issued -lobj_lock_table = '' +#lobj_lock_table = '' # When rewriting lo_creat command in # replication mode, specify table name to # lock # - Degenerate handling - -replication_stop_on_mismatch = off +#replication_stop_on_mismatch = off # On disagreement with the packet kind # sent from backend, degenerate the node # which is most likely "minority" # If off, just force to exit this session -failover_if_affected_tuples_mismatch = off +#failover_if_affected_tuples_mismatch = off # On disagreement with the number of affected # tuples in UPDATE/DELETE queries, then # degenerate the node which is most likely @@ -354,16 +354,16 @@ failover_if_affected_tuples_mismatch = off # LOAD BALANCING MODE #------------------------------------------------------------------------------ -load_balance_mode = on +#load_balance_mode = on # Activate load balancing mode # (change requires restart) -ignore_leading_white_space = on +#ignore_leading_white_space = on # Ignore leading white spaces of each query -read_only_function_list = '' +#read_only_function_list = '' # Comma separated list of function names # that don't write to database # Regexp are accepted -write_function_list = '' +#write_function_list = '' # Comma separated list of function names # that write to database # Regexp are accepted @@ -372,28 +372,28 @@ write_function_list = '' # If it's volatile, the function is regarded as a # writing function. -primary_routing_query_pattern_list = '' +#primary_routing_query_pattern_list = '' # Semicolon separated list of query patterns # that should be sent to primary node # Regexp are accepted # valid for streaming replicaton mode only. -database_redirect_preference_list = '' +#database_redirect_preference_list = '' # comma separated list of pairs of database and node id. # example: postgres:primary,mydb[0-4]:1,mydb[5-9]:2' # valid for streaming replicaton mode only. -app_name_redirect_preference_list = '' +#app_name_redirect_preference_list = '' # comma separated list of pairs of app name and node id. # example: 'psql:primary,myapp[0-4]:1,myapp[5-9]:standby' # valid for streaming replicaton mode only. -allow_sql_comments = off +#allow_sql_comments = off # if on, ignore SQL comments when judging if load balance or # query cache is possible. # If off, SQL comments effectively prevent the judgment # (pre 3.4 behavior). -disable_load_balance_on_write = 'transaction' +#disable_load_balance_on_write = 'transaction' # Load balance behavior when write query is issued # in an explicit transaction. # @@ -421,7 +421,7 @@ disable_load_balance_on_write = 'transaction' # Note that any query not in an explicit transaction # is not affected by the parameter except 'always'. -dml_adaptive_object_relationship_list= '' +#dml_adaptive_object_relationship_list= '' # comma separated list of object pairs # [object]:[dependent-object], to disable load balancing # of dependent objects within the explicit transaction @@ -436,31 +436,31 @@ statement_level_load_balance = off # Enables statement level load balancing #------------------------------------------------------------------------------ -# NATIVE REPLICATION MODE +# STREAMING REPLICATION MODE #------------------------------------------------------------------------------ # - Streaming - -sr_check_period = 0 +#sr_check_period = 0 # Streaming replication check period # Disabled (0) by default -sr_check_user = 'nobody' +#sr_check_user = 'nobody' # Streaming replication check user # This is neccessary even if you disable streaming # replication delay check by sr_check_period = 0 -sr_check_password = '' +#sr_check_password = '' # Password for streaming replication check user # Leaving it empty will make Pgpool-II to first look for the # Password in pool_passwd file before using the empty password -sr_check_database = 'postgres' +#sr_check_database = 'postgres' # Database name for streaming replication check -delay_threshold = 0 +#delay_threshold = 0 # Threshold before not dispatching query to standby node # Unit is in bytes # Disabled (0) by default -prefer_lower_delay_standby = off +#prefer_lower_delay_standby = off # If delay_threshold is set larger than 0, Pgpool-II send to # the primary when selected node is delayed over delay_threshold. # If this is set to on, Pgpool-II send query to other standby @@ -468,7 +468,7 @@ prefer_lower_delay_standby = off # - Special commands - -follow_primary_command = '' +#follow_primary_command = '' # Executes this command after main node failover # Special values: # %d = failed node id @@ -489,26 +489,26 @@ follow_primary_command = '' # HEALTH CHECK GLOBAL PARAMETERS #------------------------------------------------------------------------------ -health_check_period = 0 +#health_check_period = 0 # Health check period # Disabled (0) by default -health_check_timeout = 20 +#health_check_timeout = 20 # Health check timeout # 0 means no timeout -health_check_user = 'nobody' +#health_check_user = 'nobody' # Health check user -health_check_password = '' +#health_check_password = '' # Password for health check user # Leaving it empty will make Pgpool-II to first look for the # Password in pool_passwd file before using the empty password -health_check_database = '' +#health_check_database = '' # Database name for health check. If '', tries 'postgres' frist, -health_check_max_retries = 0 +#health_check_max_retries = 0 # Maximum number of times to retry a failed health check before giving up. -health_check_retry_delay = 1 +#health_check_retry_delay = 1 # Amount of time to wait (in seconds) between retries. -connect_timeout = 10000 +#connect_timeout = 10000 # Timeout value in milliseconds before giving up to connect to backend. # Default is 10000 ms (10 second). Flaky network user may want to increase # the value. 0 means no timeout. @@ -531,7 +531,7 @@ connect_timeout = 10000 # FAILOVER AND FAILBACK #------------------------------------------------------------------------------ -failover_command = '' +#failover_command = '' # Executes this command at failover # Special values: # %d = failed node id @@ -547,7 +547,7 @@ failover_command = '' # %N = old primary node hostname # %S = old primary node port number # %% = '%' character -failback_command = '' +#failback_command = '' # Executes this command at failback. # Special values: # %d = failed node id @@ -564,34 +564,34 @@ failback_command = '' # %S = old primary node port number # %% = '%' character -failover_on_backend_error = on +#failover_on_backend_error = on # Initiates failover when reading/writing to the # backend communication socket fails # If set to off, pgpool will report an # error and disconnect the session. -failover_on_backend_shutdown = off +#failover_on_backend_shutdown = off # Initiates failover when backend is shutdown, # or backend process is killed. # If set to off, pgpool will report an # error and disconnect the session. -detach_false_primary = off +#detach_false_primary = off # Detach false primary if on. Only # valid in streaming replicaton # mode and with PostgreSQL 9.6 or # after. -search_primary_node_timeout = 5min +#search_primary_node_timeout = 5min # Timeout in seconds to search for the # primary node when a failover occurs. # 0 means no timeout, keep searching # for a primary node forever. -auto_failback = off +#auto_failback = off # Dettached backend node reattach automatically # if replication_state is 'streaming'. -auto_failback_interval = 1min +#auto_failback_interval = 1min # Min interval of executing auto_failback in # seconds. @@ -599,22 +599,22 @@ auto_failback_interval = 1min # ONLINE RECOVERY #------------------------------------------------------------------------------ -recovery_user = 'nobody' +#recovery_user = 'nobody' # Online recovery user -recovery_password = '' +#recovery_password = '' # Online recovery password # Leaving it empty will make Pgpool-II to first look for the # Password in pool_passwd file before using the empty password -recovery_1st_stage_command = '' +#recovery_1st_stage_command = '' # Executes a command in first stage -recovery_2nd_stage_command = '' +#recovery_2nd_stage_command = '' # Executes a command in second stage -recovery_timeout = 90 +#recovery_timeout = 90 # Timeout in seconds to wait for the # recovering node's postmaster to start up # 0 means no wait -client_idle_limit_in_recovery = 0 +#client_idle_limit_in_recovery = 0 # Client is disconnected after being idle # for that many seconds in the second stage # of online recovery @@ -628,31 +628,31 @@ client_idle_limit_in_recovery = 0 # - Enabling - -use_watchdog = off +#use_watchdog = off # Activates watchdog # (change requires restart) # -Connection to up stream servers - -trusted_servers = '' +#trusted_servers = '' # trusted server list which are used # to confirm network connection # (hostA,hostB,hostC,...) # (change requires restart) -ping_path = '/bin' +#ping_path = '/bin' # ping command path # (change requires restart) # - Watchdog communication Settings - -hostname0 = '' +#hostname0 = '' # Host name or IP address of pgpool node # for watchdog connection # (change requires restart) -wd_port0 = 9000 +#wd_port0 = 9000 # Port number for watchdog service # (change requires restart) -pgpool_port0 = 9999 +#pgpool_port0 = 9999 # Port number for pgpool # (change requires restart) @@ -664,15 +664,15 @@ pgpool_port0 = 9999 #wd_port2 = 9000 #pgpool_port2 = 9999 -wd_priority = 1 +#wd_priority = 1 # priority of this watchdog in leader election # (change requires restart) -wd_authkey = '' +#wd_authkey = '' # Authentication key for watchdog communication # (change requires restart) -wd_ipc_socket_dir = '/tmp' +#wd_ipc_socket_dir = '/tmp' # Unix domain socket path for watchdog IPC socket # The Debian package defaults to # /var/run/postgresql @@ -681,65 +681,65 @@ wd_ipc_socket_dir = '/tmp' # - Virtual IP control Setting - -delegate_IP = '' +#delegate_IP = '' # delegate IP address # If this is empty, virtual IP never bring up. # (change requires restart) -if_cmd_path = '/sbin' +#if_cmd_path = '/sbin' # path to the directory where if_up/down_cmd exists # If if_up/down_cmd starts with "/", if_cmd_path will be ignored. # (change requires restart) -if_up_cmd = '/usr/bin/sudo /sbin/ip addr add $_IP_$/24 dev eth0 label eth0:0' +#if_up_cmd = '/usr/bin/sudo /sbin/ip addr add $_IP_$/24 dev eth0 label eth0:0' # startup delegate IP command # (change requires restart) -if_down_cmd = '/usr/bin/sudo /sbin/ip addr del $_IP_$/24 dev eth0' +#if_down_cmd = '/usr/bin/sudo /sbin/ip addr del $_IP_$/24 dev eth0' # shutdown delegate IP command # (change requires restart) -arping_path = '/usr/sbin' +#arping_path = '/usr/sbin' # arping command path # If arping_cmd starts with "/", if_cmd_path will be ignored. # (change requires restart) -arping_cmd = '/usr/bin/sudo /usr/sbin/arping -U $_IP_$ -w 1 -I eth0' +#arping_cmd = '/usr/bin/sudo /usr/sbin/arping -U $_IP_$ -w 1 -I eth0' # arping command # (change requires restart) # - Behaivor on escalation Setting - -clear_memqcache_on_escalation = on +#clear_memqcache_on_escalation = on # Clear all the query cache on shared memory # when standby pgpool escalate to active pgpool # (= virtual IP holder). # This should be off if client connects to pgpool # not using virtual IP. # (change requires restart) -wd_escalation_command = '' +#wd_escalation_command = '' # Executes this command at escalation on new active pgpool. # (change requires restart) -wd_de_escalation_command = '' +#wd_de_escalation_command = '' # Executes this command when leader pgpool resigns from being leader. # (change requires restart) # - Watchdog consensus settings for failover - -failover_when_quorum_exists = off +#failover_when_quorum_exists = off # Only perform backend node failover # when the watchdog cluster holds the quorum. # not allowed in replication mode # (change requires restart) -failover_require_consensus = off +#failover_require_consensus = off # Perform failover when majority of Pgpool-II nodes # aggrees on the backend node status change. # not allowed in replication mode # (change requires restart) -allow_multiple_failover_requests_from_node = off +#allow_multiple_failover_requests_from_node = off # A Pgpool-II node can cast multiple votes # for building the consensus on failover # (change requires restart) -enable_consensus_with_half_votes = off +#enable_consensus_with_half_votes = off # apply majority rule for consensus and quorum computation # at 50% of votes in a cluster with even number of nodes. # when enabled the existence of quorum and consensus @@ -753,7 +753,7 @@ enable_consensus_with_half_votes = off # -- common -- -wd_monitoring_interfaces_list = '' +#wd_monitoring_interfaces_list = '' # Comma separated list of interfaces names to monitor. # if any interface from the list is active the watchdog will # consider the network is fine @@ -761,24 +761,24 @@ wd_monitoring_interfaces_list = '' # '' to disable monitoring # (change requires restart) -wd_lifecheck_method = 'heartbeat' +#wd_lifecheck_method = 'heartbeat' # Method of watchdog lifecheck ('heartbeat' or 'query' or 'external') # (change requires restart) -wd_interval = 10 +#wd_interval = 10 # lifecheck interval (sec) > 0 # (change requires restart) # -- heartbeat mode -- -heartbeat_hostname0 = '' +#heartbeat_hostname0 = '' # Host name or IP address used # for sending heartbeat signal. # (change requires restart) -heartbeat_port0 = 9694 +#heartbeat_port0 = 9694 # Port number used for receiving/sending heartbeat signal # Usually this is the same as heartbeat_portX. # (change requires restart) -heartbeat_device0 = '' +#heartbeat_device0 = '' # Name of NIC device (such like 'eth0') # used for sending/receiving heartbeat # signal to/from destination 0. @@ -793,28 +793,28 @@ heartbeat_device0 = '' #heartbeat_port2 = 9694 #heartbeat_device2 = '' -wd_heartbeat_keepalive = 2 +#wd_heartbeat_keepalive = 2 # Interval time of sending heartbeat signal (sec) # (change requires restart) -wd_heartbeat_deadtime = 30 +#wd_heartbeat_deadtime = 30 # Deadtime interval for heartbeat signal (sec) # (change requires restart) # -- query mode -- -wd_life_point = 3 +#wd_life_point = 3 # lifecheck retry times # (change requires restart) -wd_lifecheck_query = 'SELECT 1' +#wd_lifecheck_query = 'SELECT 1' # lifecheck query to pgpool from watchdog # (change requires restart) -wd_lifecheck_dbname = 'template1' +#wd_lifecheck_dbname = 'template1' # Database name connected for lifecheck # (change requires restart) -wd_lifecheck_user = 'nobody' +#wd_lifecheck_user = 'nobody' # watchdog user monitoring pgpools in lifecheck # (change requires restart) -wd_lifecheck_password = '' +#wd_lifecheck_password = '' # Password for watchdog user in lifecheck # Leaving it empty will make Pgpool-II to first look for the # Password in pool_passwd file before using the empty password @@ -823,7 +823,7 @@ wd_lifecheck_password = '' #------------------------------------------------------------------------------ # OTHERS #------------------------------------------------------------------------------ -relcache_expire = 0 +#relcache_expire = 0 # Life time of relation cache in seconds. # 0 means no cache expiration(the default). # The relation cache is used for cache the @@ -838,24 +838,24 @@ relcache_expire = 0 # not consistent anymore. # For this purpose, cache_expiration # controls the life time of the cache. -relcache_size = 256 +#relcache_size = 256 # Number of relation cache # entry. If you see frequently: # "pool_search_relcache: cache replacement happend" # in the pgpool log, you might want to increate this number. -check_temp_table = catalog +#check_temp_table = catalog # Temporary table check method. catalog, trace or none. # Default is catalog. -check_unlogged_table = on +#check_unlogged_table = on # If on, enable unlogged table check in SELECT statements. # This initiates queries against system catalog of primary/main # thus increases load of primary. # If you are absolutely sure that your system never uses unlogged tables # and you want to save access to primary/main, you could turn this off. # Default is on. -enable_shared_relcache = on +#enable_shared_relcache = on # If on, relation cache stored in memory cache, # the cache is shared among child process. # Default is on. @@ -867,58 +867,58 @@ relcache_query_target = primary #------------------------------------------------------------------------------ # IN MEMORY QUERY MEMORY CACHE #------------------------------------------------------------------------------ -memory_cache_enabled = off +#memory_cache_enabled = off # If on, use the memory cache functionality, off by default # (change requires restart) -memqcache_method = 'shmem' +#memqcache_method = 'shmem' # Cache storage method. either 'shmem'(shared memory) or # 'memcached'. 'shmem' by default # (change requires restart) -memqcache_memcached_host = 'localhost' +#memqcache_memcached_host = 'localhost' # Memcached host name or IP address. Mandatory if # memqcache_method = 'memcached'. # Defaults to localhost. # (change requires restart) -memqcache_memcached_port = 11211 +#memqcache_memcached_port = 11211 # Memcached port number. Mondatory if memqcache_method = 'memcached'. # Defaults to 11211. # (change requires restart) -memqcache_total_size = 64MB +#memqcache_total_size = 64MB # Total memory size in bytes for storing memory cache. # Mandatory if memqcache_method = 'shmem'. # Defaults to 64MB. # (change requires restart) -memqcache_max_num_cache = 1000000 +#memqcache_max_num_cache = 1000000 # Total number of cache entries. Mandatory # if memqcache_method = 'shmem'. # Each cache entry consumes 48 bytes on shared memory. # Defaults to 1,000,000(45.8MB). # (change requires restart) -memqcache_expire = 0 +#memqcache_expire = 0 # Memory cache entry life time specified in seconds. # 0 means infinite life time. 0 by default. # (change requires restart) -memqcache_auto_cache_invalidation = on +#memqcache_auto_cache_invalidation = on # If on, invalidation of query cache is triggered by corresponding # DDL/DML/DCL(and memqcache_expire). If off, it is only triggered # by memqcache_expire. on by default. # (change requires restart) -memqcache_maxcache = 400kB +#memqcache_maxcache = 400kB # Maximum SELECT result size in bytes. # Must be smaller than memqcache_cache_block_size. Defaults to 400KB. # (change requires restart) -memqcache_cache_block_size = 1MB +#memqcache_cache_block_size = 1MB # Cache block size in bytes. Mandatory if memqcache_method = 'shmem'. # Defaults to 1MB. # (change requires restart) -memqcache_oiddir = '/var/log/pgpool/oiddir' +#memqcache_oiddir = '/var/log/pgpool/oiddir' # Temporary work directory to record table oids # (change requires restart) -cache_safe_memqcache_table_list = '' +#cache_safe_memqcache_table_list = '' # Comma separated list of table names to memcache # that don't write to database # Regexp are accepted -cache_unsafe_memqcache_table_list = '' +#cache_unsafe_memqcache_table_list = '' # Comma separated list of table names not to memcache # that don't write to database # Regexp are accepted diff --git a/src/sample/pgpool.conf.sample-stream b/src/sample/pgpool.conf.sample-stream index 34fcab6d1..ce7e39fa0 100644 --- a/src/sample/pgpool.conf.sample-stream +++ b/src/sample/pgpool.conf.sample-stream @@ -32,19 +32,19 @@ backend_clustering_mode = 'streaming_replication' # - pgpool Connection Settings - -listen_addresses = 'localhost' +#listen_addresses = 'localhost' # Host name or IP address to listen on: # '*' for all, '' for no TCP/IP connections # (change requires restart) -port = 9999 +#port = 9999 # Port number # (change requires restart) -socket_dir = '/tmp' +#socket_dir = '/tmp' # Unix domain socket path # The Debian package defaults to # /var/run/postgresql # (change requires restart) -reserved_connections = 0 +#reserved_connections = 0 # Number of reserved connections. # Pgpool-II does not accept connections if over # num_init_chidlren - reserved_connections. @@ -52,41 +52,41 @@ reserved_connections = 0 # - pgpool Communication Manager Connection Settings - -pcp_listen_addresses = '*' +#pcp_listen_addresses = '*' # Host name or IP address for pcp process to listen on: # '*' for all, '' for no TCP/IP connections # (change requires restart) -pcp_port = 9898 +#pcp_port = 9898 # Port number for pcp # (change requires restart) -pcp_socket_dir = '/tmp' +#pcp_socket_dir = '/tmp' # Unix domain socket path for pcp # The Debian package defaults to # /var/run/postgresql # (change requires restart) -listen_backlog_multiplier = 2 +#listen_backlog_multiplier = 2 # Set the backlog parameter of listen(2) to # num_init_children * listen_backlog_multiplier. # (change requires restart) -serialize_accept = off +#serialize_accept = off # whether to serialize accept() call to avoid thundering herd problem # (change requires restart) # - Backend Connection Settings - -backend_hostname0 = 'host1' +#backend_hostname0 = 'host1' # Host name or IP address to connect to for backend 0 -backend_port0 = 5432 +#backend_port0 = 5432 # Port number for backend 0 -backend_weight0 = 1 +#backend_weight0 = 1 # Weight for backend 0 (only in load balancing mode) -backend_data_directory0 = '/data' +#backend_data_directory0 = '/data' # Data directory for backend 0 -backend_flag0 = 'ALLOW_TO_FAILOVER' +#backend_flag0 = 'ALLOW_TO_FAILOVER' # Controls various backend behavior # ALLOW_TO_FAILOVER, DISALLOW_TO_FAILOVER # or ALWAYS_PRIMARY -backend_application_name0 = 'server0' +#backend_application_name0 = 'server0' # walsender's application_name, used for "show pool_nodes" command #backend_hostname1 = 'host2' #backend_port1 = 5433 @@ -97,24 +97,24 @@ backend_application_name0 = 'server0' # - Authentication - -enable_pool_hba = off +#enable_pool_hba = off # Use pool_hba.conf for client authentication -pool_passwd = 'pool_passwd' +#pool_passwd = 'pool_passwd' # File name of pool_passwd for md5 authentication. # "" disables pool_passwd. # (change requires restart) -authentication_timeout = 1min +#authentication_timeout = 1min # Delay in seconds to complete client authentication # 0 means no timeout. -allow_clear_text_frontend_auth = off +#allow_clear_text_frontend_auth = off # Allow Pgpool-II to use clear text password authentication # with clients, when pool_passwd does not # contain the user password # - SSL Connections - -ssl = off +#ssl = off # Enable SSL support # (change requires restart) #ssl_key = 'server.key' @@ -134,16 +134,16 @@ ssl = off # SSL certificate revocation list file # (change requires restart) -ssl_ciphers = 'HIGH:MEDIUM:+3DES:!aNULL' +#ssl_ciphers = 'HIGH:MEDIUM:+3DES:!aNULL' # Allowed SSL ciphers # (change requires restart) -ssl_prefer_server_ciphers = off +#ssl_prefer_server_ciphers = off # Use server's SSL cipher preferences, # rather than the client's # (change requires restart) -ssl_ecdh_curve = 'prime256v1' +#ssl_ecdh_curve = 'prime256v1' # Name of the curve to use in ECDH key exchange -ssl_dh_params_file = '' +#ssl_dh_params_file = '' # Name of the file containing Diffie-Hellman parameters used # for so-called ephemeral DH family of SSL cipher. #ssl_passphrase_command='' @@ -157,24 +157,24 @@ ssl_dh_params_file = '' # - Concurrent session and pool size - -num_init_children = 32 +#num_init_children = 32 # Number of concurrent sessions allowed # (change requires restart) -max_pool = 4 +#max_pool = 4 # Number of connection pool caches per connection # (change requires restart) # - Life time - -child_life_time = 5min +#child_life_time = 5min # Pool exits after being idle for this many seconds -child_max_connections = 0 +#child_max_connections = 0 # Pool exits after receiving that many connections # 0 means no exit -connection_life_time = 0 +#connection_life_time = 0 # Connection to backend closes after being idle for this many seconds # 0 means no close -client_idle_limit = 0 +#client_idle_limit = 0 # Client is disconnected after being idle for that many seconds # (even inside an explicit transactions!) # 0 means no disconnection @@ -186,39 +186,39 @@ client_idle_limit = 0 # - Where to log - -log_destination = 'stderr' +#log_destination = 'stderr' # Where to log # Valid values are combinations of stderr, # and syslog. Default to stderr. # - What to log - -log_line_prefix = '%t: pid %p: ' # printf-style string to output at beginning of each log line. +#log_line_prefix = '%t: pid %p: ' # printf-style string to output at beginning of each log line. -log_connections = off +#log_connections = off # Log connections -log_disconnections = off +#log_disconnections = off # Log disconnections -log_hostname = off +#log_hostname = off # Hostname will be shown in ps status # and in logs if connections are logged -log_statement = off +#log_statement = off # Log all statements -log_per_node_statement = off +#log_per_node_statement = off # Log all statements # with node and backend informations -log_client_messages = off +#log_client_messages = off # Log any client messages -log_standby_delay = 'if_over_threshold' +#log_standby_delay = 'if_over_threshold' # Log standby delay # Valid values are combinations of always, # if_over_threshold, none # - Syslog specific - -syslog_facility = 'LOCAL0' +#syslog_facility = 'LOCAL0' # Syslog local facility. Default to LOCAL0 -syslog_ident = 'pgpool' +#syslog_ident = 'pgpool' # Syslog program identification string # Default to 'pgpool' @@ -292,13 +292,13 @@ syslog_ident = 'pgpool' # FILE LOCATIONS #------------------------------------------------------------------------------ -pid_file_name = '/var/run/pgpool/pgpool.pid' +#pid_file_name = '/var/run/pgpool/pgpool.pid' # PID file name # Can be specified as relative to the" # location of pgpool.conf file or # as an absolute path # (change requires restart) -logdir = '/tmp' +#logdir = '/tmp' # Directory of pgPool status file # (change requires restart) @@ -307,14 +307,14 @@ logdir = '/tmp' # CONNECTION POOLING #------------------------------------------------------------------------------ -connection_cache = on +#connection_cache = on # Activate connection pools # (change requires restart) # Semicolon separated list of queries # to be issued at the end of a session # The default is for 8.3 and later -reset_query_list = 'ABORT; DISCARD ALL' +#reset_query_list = 'ABORT; DISCARD ALL' # The following one is for 8.2 and before #reset_query_list = 'ABORT; RESET ALL; SET SESSION AUTHORIZATION DEFAULT' @@ -323,31 +323,31 @@ reset_query_list = 'ABORT; DISCARD ALL' # REPLICATION MODE #------------------------------------------------------------------------------ -replicate_select = off +#replicate_select = off # Replicate SELECT statements # when in replication mode # replicate_select is higher priority than # load_balance_mode. -insert_lock = off +#insert_lock = off # Automatically locks a dummy row or a table # with INSERT statements to keep SERIAL data # consistency # Without SERIAL, no lock will be issued -lobj_lock_table = '' +#lobj_lock_table = '' # When rewriting lo_creat command in # replication mode, specify table name to # lock # - Degenerate handling - -replication_stop_on_mismatch = off +#replication_stop_on_mismatch = off # On disagreement with the packet kind # sent from backend, degenerate the node # which is most likely "minority" # If off, just force to exit this session -failover_if_affected_tuples_mismatch = off +#failover_if_affected_tuples_mismatch = off # On disagreement with the number of affected # tuples in UPDATE/DELETE queries, then # degenerate the node which is most likely @@ -360,16 +360,16 @@ failover_if_affected_tuples_mismatch = off # LOAD BALANCING MODE #------------------------------------------------------------------------------ -load_balance_mode = on +#load_balance_mode = on # Activate load balancing mode # (change requires restart) -ignore_leading_white_space = on +#ignore_leading_white_space = on # Ignore leading white spaces of each query -read_only_function_list = '' +#read_only_function_list = '' # Comma separated list of function names # that don't write to database # Regexp are accepted -write_function_list = '' +#write_function_list = '' # Comma separated list of function names # that write to database # Regexp are accepted @@ -378,28 +378,28 @@ write_function_list = '' # If it's volatile, the function is regarded as a # writing function. -primary_routing_query_pattern_list = '' +#primary_routing_query_pattern_list = '' # Semicolon separated list of query patterns # that should be sent to primary node # Regexp are accepted # valid for streaming replicaton mode only. -database_redirect_preference_list = '' +#database_redirect_preference_list = '' # comma separated list of pairs of database and node id. # example: postgres:primary,mydb[0-4]:1,mydb[5-9]:2' # valid for streaming replicaton mode only. -app_name_redirect_preference_list = '' +#app_name_redirect_preference_list = '' # comma separated list of pairs of app name and node id. # example: 'psql:primary,myapp[0-4]:1,myapp[5-9]:standby' # valid for streaming replicaton mode only. -allow_sql_comments = off +#allow_sql_comments = off # if on, ignore SQL comments when judging if load balance or # query cache is possible. # If off, SQL comments effectively prevent the judgment # (pre 3.4 behavior). -disable_load_balance_on_write = 'transaction' +#disable_load_balance_on_write = 'transaction' # Load balance behavior when write query is issued # in an explicit transaction. # @@ -427,7 +427,7 @@ disable_load_balance_on_write = 'transaction' # Note that any query not in an explicit transaction # is not affected by the parameter except 'always'. -dml_adaptive_object_relationship_list= '' +#dml_adaptive_object_relationship_list= '' # comma separated list of object pairs # [object]:[dependent-object], to disable load balancing # of dependent objects within the explicit transaction @@ -442,30 +442,30 @@ statement_level_load_balance = off # Enables statement level load balancing #------------------------------------------------------------------------------ -# NATIVE REPLICATION MODE +# STREAMING REPLICATION MODE #------------------------------------------------------------------------------ # - Streaming - -sr_check_period = 10 +#sr_check_period = 10 # Streaming replication check period # Disabled (0) by default -sr_check_user = 'nobody' +#sr_check_user = 'nobody' # Streaming replication check user # This is neccessary even if you disable streaming # replication delay check by sr_check_period = 0 -sr_check_password = '' +#sr_check_password = '' # Password for streaming replication check user # Leaving it empty will make Pgpool-II to first look for the # Password in pool_passwd file before using the empty password -sr_check_database = 'postgres' +#sr_check_database = 'postgres' # Database name for streaming replication check -delay_threshold = 10000000 +#delay_threshold = 0 # Threshold before not dispatching query to standby node # Unit is in bytes # Disabled (0) by default -prefer_lower_delay_standby = off +#prefer_lower_delay_standby = off # If delay_threshold is set larger than 0, Pgpool-II send to # the primary when selected node is delayed over delay_threshold. # If this is set to on, Pgpool-II send query to other standby @@ -473,7 +473,7 @@ prefer_lower_delay_standby = off # - Special commands - -follow_primary_command = '' +#follow_primary_command = '' # Executes this command after main node failover # Special values: # %d = failed node id @@ -494,26 +494,26 @@ follow_primary_command = '' # HEALTH CHECK GLOBAL PARAMETERS #------------------------------------------------------------------------------ -health_check_period = 0 +#health_check_period = 0 # Health check period # Disabled (0) by default -health_check_timeout = 20 +#health_check_timeout = 20 # Health check timeout # 0 means no timeout -health_check_user = 'nobody' +#health_check_user = 'nobody' # Health check user -health_check_password = '' +#health_check_password = '' # Password for health check user # Leaving it empty will make Pgpool-II to first look for the # Password in pool_passwd file before using the empty password -health_check_database = '' +#health_check_database = '' # Database name for health check. If '', tries 'postgres' frist, -health_check_max_retries = 0 +#health_check_max_retries = 0 # Maximum number of times to retry a failed health check before giving up. -health_check_retry_delay = 1 +#health_check_retry_delay = 1 # Amount of time to wait (in seconds) between retries. -connect_timeout = 10000 +#connect_timeout = 10000 # Timeout value in milliseconds before giving up to connect to backend. # Default is 10000 ms (10 second). Flaky network user may want to increase # the value. 0 means no timeout. @@ -536,7 +536,7 @@ connect_timeout = 10000 # FAILOVER AND FAILBACK #------------------------------------------------------------------------------ -failover_command = '' +#failover_command = '' # Executes this command at failover # Special values: # %d = failed node id @@ -552,7 +552,7 @@ failover_command = '' # %N = old primary node hostname # %S = old primary node port number # %% = '%' character -failback_command = '' +#failback_command = '' # Executes this command at failback. # Special values: # %d = failed node id @@ -569,25 +569,25 @@ failback_command = '' # %S = old primary node port number # %% = '%' character -failover_on_backend_error = on +#failover_on_backend_error = on # Initiates failover when reading/writing to the # backend communication socket fails # If set to off, pgpool will report an # error and disconnect the session. -failover_on_backend_shutdown = off +#failover_on_backend_shutdown = off # Initiates failover when backend is shutdown, # or backend process is killed. # If set to off, pgpool will report an # error and disconnect the session. -detach_false_primary = off +#detach_false_primary = off # Detach false primary if on. Only # valid in streaming replicaton # mode and with PostgreSQL 9.6 or # after. -search_primary_node_timeout = 5min +#search_primary_node_timeout = 5min # Timeout in seconds to search for the # primary node when a failover occurs. # 0 means no timeout, keep searching @@ -597,32 +597,32 @@ search_primary_node_timeout = 5min # ONLINE RECOVERY #------------------------------------------------------------------------------ -recovery_user = 'nobody' +#recovery_user = 'nobody' # Online recovery user -recovery_password = '' +#recovery_password = '' # Online recovery password # Leaving it empty will make Pgpool-II to first look for the # Password in pool_passwd file before using the empty password -recovery_1st_stage_command = '' +#recovery_1st_stage_command = '' # Executes a command in first stage -recovery_2nd_stage_command = '' +#recovery_2nd_stage_command = '' # Executes a command in second stage -recovery_timeout = 90 +#recovery_timeout = 90 # Timeout in seconds to wait for the # recovering node's postmaster to start up # 0 means no wait -client_idle_limit_in_recovery = 0 +#client_idle_limit_in_recovery = 0 # Client is disconnected after being idle # for that many seconds in the second stage # of online recovery # 0 means no disconnection # -1 means immediate disconnection -auto_failback = off +#auto_failback = off # Dettached backend node reattach automatically # if replication_state is 'streaming'. -auto_failback_interval = 1min +#auto_failback_interval = 1min # Min interval of executing auto_failback in # seconds. @@ -632,18 +632,18 @@ auto_failback_interval = 1min # - Enabling - -use_watchdog = off +#use_watchdog = off # Activates watchdog # (change requires restart) # -Connection to up stream servers - -trusted_servers = '' +#trusted_servers = '' # trusted server list which are used # to confirm network connection # (hostA,hostB,hostC,...) # (change requires restart) -ping_path = '/bin' +#ping_path = '/bin' # ping command path # (change requires restart) @@ -653,10 +653,10 @@ hostname0 = '' # Host name or IP address of pgpool node # for watchdog connection # (change requires restart) -wd_port0 = 9000 +#wd_port0 = 9000 # Port number for watchdog service # (change requires restart) -pgpool_port0 = 9999 +#pgpool_port0 = 9999 # Port number for pgpool # (change requires restart) @@ -668,15 +668,15 @@ pgpool_port0 = 9999 #wd_port2 = 9000 #pgpool_port2 = 9999 -wd_priority = 1 +#wd_priority = 1 # priority of this watchdog in leader election # (change requires restart) -wd_authkey = '' +#wd_authkey = '' # Authentication key for watchdog communication # (change requires restart) -wd_ipc_socket_dir = '/tmp' +#wd_ipc_socket_dir = '/tmp' # Unix domain socket path for watchdog IPC socket # The Debian package defaults to # /var/run/postgresql @@ -685,63 +685,63 @@ wd_ipc_socket_dir = '/tmp' # - Virtual IP control Setting - -delegate_IP = '' +#delegate_IP = '' # delegate IP address # If this is empty, virtual IP never bring up. # (change requires restart) -if_cmd_path = '/sbin' +#if_cmd_path = '/sbin' # path to the directory where if_up/down_cmd exists # If if_up/down_cmd starts with "/", if_cmd_path will be ignored. # (change requires restart) -if_up_cmd = '/usr/bin/sudo /sbin/ip addr add $_IP_$/24 dev eth0 label eth0:0' +#if_up_cmd = '/usr/bin/sudo /sbin/ip addr add $_IP_$/24 dev eth0 label eth0:0' # startup delegate IP command # (change requires restart) -if_down_cmd = '/usr/bin/sudo /sbin/ip addr del $_IP_$/24 dev eth0' +#if_down_cmd = '/usr/bin/sudo /sbin/ip addr del $_IP_$/24 dev eth0' # shutdown delegate IP command # (change requires restart) -arping_path = '/usr/sbin' +#arping_path = '/usr/sbin' # arping command path # If arping_cmd starts with "/", if_cmd_path will be ignored. # (change requires restart) -arping_cmd = '/usr/bin/sudo /usr/sbin/arping -U $_IP_$ -w 1 -I eth0' +#arping_cmd = '/usr/bin/sudo /usr/sbin/arping -U $_IP_$ -w 1 -I eth0' # arping command # (change requires restart) # - Behaivor on escalation Setting - -clear_memqcache_on_escalation = on +#clear_memqcache_on_escalation = on # Clear all the query cache on shared memory # when standby pgpool escalate to active pgpool # (= virtual IP holder). # This should be off if client connects to pgpool # not using virtual IP. # (change requires restart) -wd_escalation_command = '' +#wd_escalation_command = '' # Executes this command at escalation on new active pgpool. # (change requires restart) -wd_de_escalation_command = '' +#wd_de_escalation_command = '' # Executes this command when leader pgpool resigns from being leader. # (change requires restart) # - Watchdog consensus settings for failover - -failover_when_quorum_exists = on +#failover_when_quorum_exists = on # Only perform backend node failover # when the watchdog cluster holds the quorum # (change requires restart) -failover_require_consensus = on +#failover_require_consensus = on # Perform failover when majority of Pgpool-II nodes # aggrees on the backend node status change # (change requires restart) -allow_multiple_failover_requests_from_node = off +#allow_multiple_failover_requests_from_node = off # A Pgpool-II node can cast multiple votes # for building the consensus on failover # (change requires restart) -enable_consensus_with_half_votes = off +#enable_consensus_with_half_votes = off # apply majority rule for consensus and quorum computation # at 50% of votes in a cluster with even number of nodes. # when enabled the existence of quorum and consensus @@ -755,7 +755,7 @@ enable_consensus_with_half_votes = off # -- common -- -wd_monitoring_interfaces_list = '' +#wd_monitoring_interfaces_list = '' # Comma separated list of interfaces names to monitor. # if any interface from the list is active the watchdog will # consider the network is fine @@ -763,24 +763,24 @@ wd_monitoring_interfaces_list = '' # '' to disable monitoring # (change requires restart) -wd_lifecheck_method = 'heartbeat' +#wd_lifecheck_method = 'heartbeat' # Method of watchdog lifecheck ('heartbeat' or 'query' or 'external') # (change requires restart) -wd_interval = 10 +#wd_interval = 10 # lifecheck interval (sec) > 0 # (change requires restart) # -- heartbeat mode -- -heartbeat_hostname0 = '' +#heartbeat_hostname0 = '' # Host name or IP address used # for sending heartbeat signal. # (change requires restart) -heartbeat_port0 = 9694 +#heartbeat_port0 = 9694 # Port number used for receiving/sending heartbeat signal # Usually this is the same as heartbeat_portX. # (change requires restart) -heartbeat_device0 = '' +#heartbeat_device0 = '' # Name of NIC device (such like 'eth0') # used for sending/receiving heartbeat # signal to/from destination 0. @@ -795,28 +795,28 @@ heartbeat_device0 = '' #heartbeat_port2 = 9694 #heartbeat_device2 = '' -wd_heartbeat_keepalive = 2 +#wd_heartbeat_keepalive = 2 # Interval time of sending heartbeat signal (sec) # (change requires restart) -wd_heartbeat_deadtime = 30 +#wd_heartbeat_deadtime = 30 # Deadtime interval for heartbeat signal (sec) # (change requires restart) # -- query mode -- -wd_life_point = 3 +#wd_life_point = 3 # lifecheck retry times # (change requires restart) -wd_lifecheck_query = 'SELECT 1' +#wd_lifecheck_query = 'SELECT 1' # lifecheck query to pgpool from watchdog # (change requires restart) -wd_lifecheck_dbname = 'template1' +#wd_lifecheck_dbname = 'template1' # Database name connected for lifecheck # (change requires restart) -wd_lifecheck_user = 'nobody' +#wd_lifecheck_user = 'nobody' # watchdog user monitoring pgpools in lifecheck # (change requires restart) -wd_lifecheck_password = '' +#wd_lifecheck_password = '' # Password for watchdog user in lifecheck # Leaving it empty will make Pgpool-II to first look for the # Password in pool_passwd file before using the empty password @@ -825,7 +825,7 @@ wd_lifecheck_password = '' #------------------------------------------------------------------------------ # OTHERS #------------------------------------------------------------------------------ -relcache_expire = 0 +#relcache_expire = 0 # Life time of relation cache in seconds. # 0 means no cache expiration(the default). # The relation cache is used for cache the @@ -840,87 +840,87 @@ relcache_expire = 0 # not consistent anymore. # For this purpose, cache_expiration # controls the life time of the cache. -relcache_size = 256 +#relcache_size = 256 # Number of relation cache # entry. If you see frequently: # "pool_search_relcache: cache replacement happend" # in the pgpool log, you might want to increate this number. -check_temp_table = catalog +#check_temp_table = catalog # Temporary table check method. catalog, trace or none. # Default is catalog. -check_unlogged_table = on +#check_unlogged_table = on # If on, enable unlogged table check in SELECT statements. # This initiates queries against system catalog of primary/main # thus increases load of primary. # If you are absolutely sure that your system never uses unlogged tables # and you want to save access to primary/main, you could turn this off. # Default is on. -enable_shared_relcache = on +#enable_shared_relcache = on # If on, relation cache stored in memory cache, # the cache is shared among child process. # Default is on. # (change requires restart) -relcache_query_target = primary +#relcache_query_target = primary # Target node to send relcache queries. Default is primary node. # If load_balance_node is specified, queries will be sent to load balance node. #------------------------------------------------------------------------------ # IN MEMORY QUERY MEMORY CACHE #------------------------------------------------------------------------------ -memory_cache_enabled = off +#memory_cache_enabled = off # If on, use the memory cache functionality, off by default # (change requires restart) -memqcache_method = 'shmem' +#memqcache_method = 'shmem' # Cache storage method. either 'shmem'(shared memory) or # 'memcached'. 'shmem' by default # (change requires restart) -memqcache_memcached_host = 'localhost' +#memqcache_memcached_host = 'localhost' # Memcached host name or IP address. Mandatory if # memqcache_method = 'memcached'. # Defaults to localhost. # (change requires restart) -memqcache_memcached_port = 11211 +#memqcache_memcached_port = 11211 # Memcached port number. Mondatory if memqcache_method = 'memcached'. # Defaults to 11211. # (change requires restart) -memqcache_total_size = 64MB +#memqcache_total_size = 64MB # Total memory size in bytes for storing memory cache. # Mandatory if memqcache_method = 'shmem'. # Defaults to 64MB. # (change requires restart) -memqcache_max_num_cache = 1000000 +#memqcache_max_num_cache = 1000000 # Total number of cache entries. Mandatory # if memqcache_method = 'shmem'. # Each cache entry consumes 48 bytes on shared memory. # Defaults to 1,000,000(45.8MB). # (change requires restart) -memqcache_expire = 0 +#memqcache_expire = 0 # Memory cache entry life time specified in seconds. # 0 means infinite life time. 0 by default. # (change requires restart) -memqcache_auto_cache_invalidation = on +#memqcache_auto_cache_invalidation = on # If on, invalidation of query cache is triggered by corresponding # DDL/DML/DCL(and memqcache_expire). If off, it is only triggered # by memqcache_expire. on by default. # (change requires restart) -memqcache_maxcache = 400kB +#memqcache_maxcache = 400kB # Maximum SELECT result size in bytes. # Must be smaller than memqcache_cache_block_size. Defaults to 400KB. # (change requires restart) -memqcache_cache_block_size = 1MB +#memqcache_cache_block_size = 1MB # Cache block size in bytes. Mandatory if memqcache_method = 'shmem'. # Defaults to 1MB. # (change requires restart) -memqcache_oiddir = '/var/log/pgpool/oiddir' +#memqcache_oiddir = '/var/log/pgpool/oiddir' # Temporary work directory to record table oids # (change requires restart) -cache_safe_memqcache_table_list = '' +#cache_safe_memqcache_table_list = '' # Comma separated list of table names to memcache # that don't write to database # Regexp are accepted -cache_unsafe_memqcache_table_list = '' +#cache_unsafe_memqcache_table_list = '' # Comma separated list of table names not to memcache # that don't write to database # Regexp are accepted -- 2.39.5