Index of wsrep system variables

variable wsrep_OSU_method
Command Line:Yes
Config File:Yes
Scope:Global
Dynamic:Yes
Default Value:TOI
This variable can be used to select schema upgrade method. Available values are:
  • TOI - Total Order Isolation - When this method is selected DDL is processed in the same order with regards to other transactions in each cluster node. This guarantees data consistency. In case of DDL statements cluster will have parts of database locked and it will behave like a single server. In some cases (like big ALTER TABLE) this could have impact on cluster’s performance and high availability, but it could be fine for quick changes that happen almost instantly (like fast index changes).
  • RSU - Rolling Schema Upgrade - When this method is selected DDL statements won’t be replicated across the cluster, instead it’s up to the user to run them on each node separately. The node applying the changes will desynchronize from the cluster briefly, while normal work happens on all the other nodes. When the DDL statement is processed node will apply delayed replication events. The schema changes must be backwards compatible for this method to work, otherwise the node that receives the change will likely break Galera replication. If the replication breaks the SST will be triggered when the node tries to join again but the change will be undone.
variable wsrep_auto_increment_control
Command Line:Yes
Config File:Yes
Scope:Global
Dynamic:Yes
Default Value:ON

This variable manages the auto_increment_increment and auto_increment_offset variables automatically depending on the size of the cluster. This helps prevent auto_increment replication conflicts across the cluster by giving each node it’s own range of auto_increment values. This may not be desirable depending on application’s use and assumptions of auto-increments. It can be turned off in Master/Slave clusters.

variable wsrep_causal_reads
Command Line:Yes
Config File:Yes
Scope:Global, Local
Dynamic:Yes
Default Value:OFF

In some cases master may apply event faster than a slave, which can cause master and slave being out-of-sync for a brief moment. When this variable is set to ON slave will wait till that event is applied before doing any other queries. Enabling this variable will also result in larger latencies.

variable wsrep_certify_nonPK
Command Line:Yes
Config File:Yes
Scope:Global
Dynamic:Yes
Default Value:ON

When this variable is enabled, primary keys will be generated automatically for the rows that the rows don’t have them. Using tables without primary keys is not recommended.

variable wsrep_cluster_address
Command Line:Yes
Config File:Yes
Scope:Global
Dynamic:No

This minimally needs to be any single other cluster node’s address that is alive and a member of the cluster. In practice, it is best (but not necessary) to provide a complete list of all possible cluster nodes.  This takes the form of:

gcomm://<node:ip>,<node:ip>,<node:ip>

If an empty gcomm:// is provided, this tells the node to bootstrap it self (i.e., form a new cluster). This is not recommended for production after the cluster has been bootstrapped initially.

variable wsrep_cluster_name
Command Line:Yes
Config File:Yes
Scope:Global
Dynamic:Yes
Default Value:my_wsrep_cluster

This is the name of the cluster and should be identical on all nodes belonging to the same cluster.

variable wsrep_convert_LOCK_to_trx
Command Line:Yes
Config File:Yes
Scope:Global
Dynamic:Yes
Default Value:OFF

This variable is used to convert LOCK/UNLOCK TABLES statements to BEGIN/COMMIT. Although this can help some older applications to work with multi-master setup it can also result in having huge writesets.

variable wsrep_data_home_dir
Command Line:No
Config File:Yes
Scope:Global
Dynamic:No
Default Value:mysql datadir

This variable can be used to set up the directory where wsrep provider will store its files (like grastate.dat).

variable wsrep_dbug_option
Command Line:Yes
Config File:Yes
Scope:Global
Dynamic:Yes

This variable is used to send the DBUG option to the wsrep provider.

variable wsrep_debug
Command Line:Yes
Config File:Yes
Scope:Global
Dynamic:Yes
Default Value:OFF

When this variable is set to ON, debug messages will also be logged to the error_log. This can be used when trying to diagnose the problem or when submitting a bug.

variable wsrep_drupal_282555_workaround
Command Line:Yes
Config File:Yes
Scope:Global
Dynamic:Yes
Default Value:OFF

This variable was introduced as workaround for Drupal/MySQL bug #282555. In some cases duplicate key error would occur when inserting the default value in into the auto_increment field.

variable wsrep_forced_binlog_format
Command Line:Yes
Config File:Yes
Scope:Global
Dynamic:Yes
Default Value:NONE
This variable defines a binlog format that will be always be effective regardless of session binlog format setting. Supported options for this variable are:
  • ROW
  • STATEMENT
  • MIXED
  • NONE - This option resets the forced state of the binlog format
variable wsrep_log_conflicts
Command Line:Yes
Config File:Yes
Scope:Global
Dynamic:Yes
Default Value:OFF

This variable is used to control whether sole cluster conflicts should be logged. When enabled details of conflicting InnoDB lock will be logged.

variable wsrep_max_ws_rows
Command Line:Yes
Config File:Yes
Scope:Global
Dynamic:Yes
Default Value:131072 (128K)

This variable is used to control maximum number of rows each writeset can contain. Anything bigger than this will be rejected.

variable wsrep_max_ws_size
Command Line:Yes
Config File:Yes
Scope:Global
Dynamic:Yes
Default Value:1073741824 (1G)

This variable is used to control maximum writeset size (in bytes). Anything bigger than this will be rejected.

variable wsrep_mysql_replication_bundle
Command Line:Yes
Config File:Yes
Scope:Global
Dynamic:No
Default Value:0 (no grouping)
Range:0-1000

This variable controls how many replication events will be grouped together. This implementation is still experimental.

variable wsrep_node_address
Command Line:Yes
Config File:Yes
Scope:Global
Dynamic:No
Format :<ip address>[:port]
Default Value:Usually set up as primary network interface (eth0)

This variable is used to specify the network address of the node. In some cases when there are multiple NICs available, state transfer might not work if the default NIC is on different network. Setting this variable explicitly to the correct value will makes SST and IST work correctly out of the box. Even in the multi-network setups, IST/SST can be configured to use other interfaces/addresses.

variable wsrep_node_incoming_address
Command Line:Yes
Config File:Yes
Scope:Global
Dynamic:No
Default Value:<wsrep_node_address>:3306

This is the address at which the node accepts client connections. This is information is used for status variable wsrep_incoming_addresses which shows all the active cluster nodes.

variable wsrep_node_name
Command Line:Yes
Config File:Yes
Scope:Global
Dynamic:Yes

This variable is used to set up the unique node name.

variable wsrep_notify_cmd
Command Line:Yes
Config File:Yes
Scope:Global
Dynamic:Yes

This variable is used to set the notification command that server will execute every time cluster membership or local node status changes.

variable wsrep_on
Command Line:Yes
Config File:Yes
Scope:Local, Global
Dynamic:Yes
Default Value:ON

This variable is used to enable/disable wsrep replication. When set to OFF server will stop replication and behave like standalone MySQL server.

variable wsrep_provider
Command Line:Yes
Config File:Yes
Scope:Global
Dynamic:Yes
Default Value:None

This variable should contain the path to the Galera library (like /usr/lib64/libgalera_smm.so).

variable wsrep_provider_options
Command Line:Yes
Config File:Yes
Scope:Global
Dynamic:No

This variable contains settings currently used by Galera library.

variable wsrep_recover
Command Line:No
Config File:Yes
Scope:Global
Dynamic:No
Default Value:OFF
Location :mysqld_safe

When server is started with this variable it will parse Global Transaction ID from log, and if the GTID is found, assign it as initial position for actual server start. This option is used to recover GTID.

variable wsrep_replicate_myisam
Command Line:Yes
Config File:Yes
Scope:Global
Dynamic:No
Default Value:Off

This variable controls if MyISAM will be replicated or not. MyISAM replication is still experimental and that is one of the reasons why this variable is set to OFF by default.

variable wsrep_retry_autocommit
Command Line:Yes
Config File:Yes
Scope:Global
Dynamic:No
Default Value:1

This variable sets the number of times autocommitted transactions will be tried in the cluster if it encounters certification errors. In case there is a conflict, it should be safe for the cluster node to simply retry the statement without the client’s knowledge with the hopes that it will pass the next time. This can be useful to help an application using autocommit to avoid the deadlock errors that can be triggered by replication conflicts. Note that the default 1 is not a retry, but the first try. Retries start when this variable is set to 2 or higher.

variable wsrep_slave_threads
Command Line:Yes
Config File:Yes
Scope:Global
Dynamic:No
Default Value:1

This variable controls the number of threads that can apply replication transactions in parallel. Galera supports true parallel replication, replication that applies transactions in parallel only when it is safe to do so. The default value can be increased for better throughput. If any replication consistency problems are encountered, it’s recommended to set this back to 1 to see if that resolves the issue.

variable wsrep_sst_auth
Command Line:Yes
Config File:Yes
Scope:Global
Dynamic:Yes
Format :<username>:<password>

This variable should contain the authentication information needed for State Snapshot Transfer. Required information depends on the method selected in the wsrep_sst_method. More information about required authentication can be found in the State Snapshot Transfer documentation. This variable will appear masked in the logs and in the SHOW VARIABLES query.

variable wsrep_sst_donor
Command Line:Yes
Config File:Yes
Scope:Global
Dynamic:Yes

This variable contains the name (wsrep_node_name) of the preferred donor for the SST. If no node is selected as a preferred donor it will be chosen from one of the available nodes automatically.

variable wsrep_sst_donor_rejects_queries
Command Line:Yes
Config File:Yes
Scope:Global
Dynamic:Yes
Default Value:OFF

When this variable is enabled SST donor node will not accept incoming queries, instead it will reject queries with UNKNOWN COMMAND error code. This can be used to signal load-balancer that the node isn’t available.

variable wsrep_sst_method
Command Line:Yes
Config File:Yes
Scope:Global
Dynamic:Yes
Default Value:mysqldump
This variable sets up the method for taking the State Snapshot Transfer (SST). Available options are:
  • xtrabackup - uses Percona XtraBackup to perform the SST, this method requires wsrep_sst_auth to be set up with <user>:<password> which XtraBackup will use on donor. Privileges and permissions needed for running XtraBackup can be found here.
  • rsync - uses rsync to perform the SST, this method doesn’t use the wsrep_sst_auth
  • mysqldump - uses mysqldump to perform the SST, this method requires wsrep_sst_auth to be set up with <user>:<password>, where user has root privileges on the server.
  • custom_script_name - Galera supports Scriptable State Snapshot Transfer. This enables users to create their own custom script for performing an SST.
variable wsrep_sst_receive_address
Command Line:Yes
Config File:Yes
Scope:Global
Dynamic:Yes
Default Value:AUTO

This variable is used to configure address on which the node expects the SST.

variable wsrep_start_position
Command Line:Yes
Config File:Yes
Scope:Global
Dynamic:Yes

This variable contains the UUID:seqno value. By setting all the nodes to have the same value for this option cluster can be set up without the state transfer.

Percona XtraDB Cluster
Call Us
+1-888-316-9775 (USA - Sales)
+1-208-473-2904 (USA - Sales)
+44-208-133-0309 (UK - Sales)
0-800-051-8984 (UK - Sales)
0-800-181-0665 (GER - Sales)
+1-877-862-4316 (Emergency)
+1-855-55TRAIN (Training)
+1-925-271-5054 (Training)

Previous topic

Index of wsrep status variables

Next topic

Index of files created by PXC

This Page



© Copyright Percona Ireland Ltd. 2012-2013.
Except where otherwise noted, this documentation is licensed under the following license:
CC Attribution-ShareAlike 2.0 Generic
Created using Sphinx 1.1.3.
This documentation is developed in Launchpad as part of the Percona XtraDB Cluster source code.
If you spotted innacuracies, errors, don't understood it or you think something is missing or should be improved, please file a bug.
]]>