# 
#
# Sets how many cleanup cycles to run before a vacuum is done.
# Range: [0,100], default: 3
#vac_frequency=3

# Aging interval to use for deleting old events and for trimming
# data from sl_log_1/sl_log_2
#cleanup_interval="10 minutes"

# Debug log level (higher value ==> more output).  Range: [0,4], default 4
#log_level=4

# Check for updates at least this often in milliseconds.
# Range: [10-60000], default 2000
#sync_interval=2000

# Maximum amount of time in milliseconds before issuing a SYNC event, 
# This prevents a possible race condition in which the action sequence 
# is bumped by the trigger while inserting the log row, which makes 
# this bump is immediately visible to the sync thread, but 
# the resulting log rows are not visible yet.  If the sync is picked 
# up by the subscriber, processed and finished before the transaction 
# commits, this transaction's changes will not be replicated until the 
# next SYNC.  But if all application activity suddenly stops, 
# there will be no more sequence bumps, so the high frequent -s check 
# won't detect that.  Thus, the need for sync_interval_timeout.
# Range: [0-120000], default 10000
#sync_interval_timeout=10000

# Maximum number of SYNC events to group together when/if a subscriber
# falls behind.  SYNCs are batched only if there are that many available 
# and if they are contiguous. Every other event type in between leads to 
# a smaller batch.  And if there is only one SYNC available, even -g60 
# will apply just that one. As soon as a subscriber catches up, it will 
# apply every single SYNC by itself.
# Range:  [0,100], default: 6
#sync_group_maxsize=6

# The maximum number of cached query plans used in the logApply trigger.
# This query cache is flushed once per SYNC group. If the queries required
# to apply a SYNC group exceeds this number, the apply trigger will use
# an LRU to evict the longest not used prepared query.
# Range:  [10,2000], default: 100
#apply_cache_size=100

# If this parameter is 1, messages go both to syslog and the standard 
# output. A value of 2 sends output only to syslog (some messages will 
# still go to the standard output/error).  The default is 0, which means 
# syslog is off.  
# Range:  [0-2], default: 0
#syslog=0

# If true, include the process ID on each log line.  Default is false.
#log_pid=false

# If true, include the timestamp on each log line.  Default is true.
#log_timestamp=true

# A strftime()-conformant format string for use with log timestamps.
# Default is '%Y-%m-%d %H:%M:%S %Z'
#log_timestamp_format='%Y-%m-%d %H:%M:%S %Z'

# An interval in seconds at which the remote worker will output the
# query used to select log rows together with it's query plan. The
# default value of 0 turns this feature off.
# Range: [0-86400], default: 0
#explain_interval=0

# Where to write the pid file.  Default:  no pid file
#pid_file='/path/to/your/pidfile'

# Sets the syslog "facility" to be used when syslog enabled.  Valid 
# values are LOCAL0, LOCAL1, LOCAL2, LOCAL3, LOCAL4, LOCAL5, LOCAL6, LOCAL7.
#syslog_facility=LOCAL0

# Sets the program name used to identify slon messages in syslog.
#syslog_ident=slon

# Set the cluster name that this instance of slon is running against
# default is to read it off the command line
#cluster_name='sloncluster'

# Set slon's connection info, default is to read it off the command line
#conn_info='host=localhost port=5432 dbname=slony user=postgres'

# maximum time planned for grouped SYNCs
# If replication is behind, slon will try to increase numbers of
# syncs done targeting that they should take this quantity of
# time to process. in ms
# Range [10000,600000], default 60000. 
#desired_sync_time=60000

# Execute the following SQL on each node at slon connect time
# useful to set logging levels, or to tune the planner/memory
# settings.  You can specify multiple statements by separating
# them with a ;
#sql_on_connection="SET log_min_duration_statement TO '1000';"

# Command to run upon committing a log archive.
# This command is passed one parameter, namely the full pathname of
# the archive file
#command_on_logarchive="/usr/local/bin/movearchivetoarchive"

# A PostgreSQL value compatible with ::interval which indicates how
# far behind this node should lag its providers.
# lag_interval="8 minutes"

# Directory in which to stow sync archive files
# archive_dir="/tmp/somewhere"

# Should slon run the monitoring thread?
# monitor_threads=true

# TCP keep alive configurations
# Enable sending of TCP keep alive between slon and the PostgreSQL backends
# tcp_keepalive = true

# The number of seconds after which a TCP keep alive is sent across an idle
# connection. tcp_keepalive must be enabled for this to take effect. Default 
# value of 0 means use operating system default
# tcp_keepalive_idle = 0

# The number of keep alive requests to the server that can be lost before 
# the connection is declared dead. tcp_keepalive must be on.Default value 
# of 0 means use operating system default
# tcp_keepalive_count = 0

# The number of seconds in between TCP keep alive requests. tcp_keepalive 
# must be enabled. Default value of 0 means use operating system defaut
# tcp_keepalive_interval = 0
