1 #------------------------------------------------------------------------------
3 #------------------------------------------------------------------------------
4 lang = en # Language for script strings
7 prefix_directory = /usr/failovers # Script working directory
8 separate_working_directory = true # Creates and appends a separate working
9 # directory to the prefix_directory
12 pid_filename = /var/run/slony_failover.pid # If the pid file name starts with a
13 # forward slash then taken as absoloute
14 # othewise appended to prefix_directory
16 slonik_path = /usr/local/pgsql/bin # Slonik binary if not in current path
18 enable_try_blocks = false # Group operations inside try blocks when
19 # doing a move set; only works with 'single'
22 lockset_method = multiple # Used for MOVE SET
23 # multiple = lock all sets and move together
24 # single = lock and move each set at a time
26 pull_aliases_from_comments = false # Try to generate aliases in the
27 # slonik scripts based on comments within
28 # sl_set and comments in parentheses in sl_node
30 log_line_prefix = [%t PID=%p] # Special values:
32 # %t = timestamp without milliseconds
33 # %m = timestamp with milliseconds
35 failover_offline_subscriber_only = true # If set to true any subscriber only nodes
36 # that are unavailable at the time of failover
37 # will also be failed over. If false any such
38 # nodes will be excluded from the preamble and
39 # not failed over, however this may be problematic
40 # especially in the case where the most up to date
41 # node is the unavailable one.
43 drop_failed_nodes = true # Drop all failed nodes immediately
45 #------------------------------------------------------------------------------
46 # Database node to read initial Slony-I configuration from
47 #------------------------------------------------------------------------------
48 slony_database_host = localhost
49 slony_database_port = 5432
50 slony_database_name = TEST
51 slony_database_user = slony
52 slony_database_password = # Recommended to leave blank and use .pgpass
53 slony_cluster_name = test_replication
56 #------------------------------------------------------------------------------
57 # Logging and debugging
58 #------------------------------------------------------------------------------
59 enable_debugging = false
60 log_filename = failover-%Y-%m-%d.log # If the log file name starts with a
61 # forward slash then taken as absoloute
62 # othewise appended to prefix_directory
63 # Special values as per strftime spec
66 log_to_postgresql = false # Save log n a PostgreSQL table (table def in failover_log_database.sql)
67 log_database_host = localhost
68 log_database_port = 5432
69 log_database_name = TEST_FAILOVERS
70 log_database_user = failover_log_user
71 log_database_password = # Recommended to leave blank and use .pgpass
73 #------------------------------------------------------------------------------
75 #------------------------------------------------------------------------------
76 enable_autofailover = false # Rather than interactive mode sit and
77 # watch the cluster state for failed
78 # origin/forwarding nodes; upon detection
79 # trigger automated failover.
81 autofailover_forwarding_providers = true # Also trigger failover on forwarding providers
83 autofailover_config_any_node = true # After reading the initial cluster configuration,
84 # subsequent reads of the configuration will
85 # use conninfo to read from any node.
87 autofailover_poll_interval = 50 # Cluster state poll interval (milliseconds)
88 autofailover_node_retry = 2 # Retries before initiating failover
89 autofailover_sleep_time = 5000 # Interval between retries (milliseconds)
90 autofailover_perspective_sleep_time = 20000 # Interval between lag reads for failed nodes
91 # from surviving nodes. If greater than zero
92 # any observation that nodes have failed is
93 # checked from surviving nodes perspective by
94 # checking if lag times are extending.
95 # This does not guarantee 100% the nodes are down
96 # but if set to a large enough interval (at least
97 # sync_interval_timeout) can back up our observation.
98 autofailover_majority_only = true # Only fail over if the quantity of surviving nodes
99 # is greater than the quantity of failed nodes.
100 # Intended to be used to prevent a split-brain scenario
101 # in conjunction with some other logic to monitor and
102 # fence off the old origin if it is in the minority.
103 autofailover_is_quorum = true # If this script is running on a separate host set to
104 # true to treat it as a quorum server. Effectively
105 # increments sum of surviving nodes when calculating
106 # the majority above.