Replica I/O Thread States

This article documents thread states that are related to replica I/O threads. These correspond to the Slave_IO_State shown by SHOW REPLICA STATUS and the STATE values listed by the SHOW PROCESSLIST statement or in the Information Schema PROCESSLIST Table as well as the PROCESSLIST_STATE value listed in the Performance Schema threads Table.

Value
Description

Value

Description

Checking master version

Checking the primary's version, which only occurs very briefly after establishing a connection with the primary.

Connecting to master

Attempting to connect to primary.

Queueing master event to the relay log

Event is being copied to the relay log after being read, where it can be processed by the SQL thread.

Reconnecting after a failed binlog dump request

Attempting to reconnect to the primary after a previously failed binary log dump request.

Reconnecting after a failed master event read

Attempting to reconnect to the primary after a previously failed request. After successfully connecting, the state will change to Waiting for master to send event.

Registering slave on master

Registering the replica on the primary, which only occurs very briefly after establishing a connection with the primary.

Requesting binlog dump

Requesting the contents of the binary logs from the given log file name and position. Only occurs very briefly after establishing a connection with the primary.

Waiting for master to send event

Waiting for binary log events to arrive after successfully connecting. If there are no new events on the primary, this state can persist for as many seconds as specified by the slave_net_timeout system variable, after which the thread will reconnect. Prior to MariaDB 10.6.18, MariaDB 10.11.8, MariaDB 11.0.6, MariaDB 11.1.5, MariaDB 11.2.4 and MariaDB 11.4.2, the time was from SLAVE START. From these versions, the time is since reading the last event.

Waiting for slave mutex on exit

Waiting for replica mutex while the thread is stopping. Only occurs very briefly.

Waiting for the slave SQL thread to free enough relay log space.

Relay log has reached its maximum size, determined by relay_log_space_limit (no limit by default), so waiting for the SQL thread to free up space by processing enough relay log events.

Waiting for master update

State before connecting to primary.

Waiting to reconnect after a failed binlog dump request

Waiting to reconnect after a binary log dump request has failed due to disconnection. The length of time in this state is determined by the MASTER_CONNECT_RETRY clause of the CHANGE MASTER TO statement.

Waiting to reconnect after a failed master event read

Sleeping while waiting to reconnect after a disconnection error. The time in seconds is determined by the MASTER_CONNECT_RETRY clause of the CHANGE MASTER TO statement.

This page is licensed: CC BY-SA / Gnu FDL

Last updated

Was this helpful?