Server System Variables This system variable is for internal server use.  pseudo_slave_mode  assists with the correct handling of transactions that originated on older or newer servers than the server currently processing them. mysqlbinlog  sets the value of  pseudo_slave_mode  to true before executing any SQL statements. Setting the session value of this system variable is a restricted operation. The session user must have either the  REPLICATION_APPLIER  privilege (see Section 17.3.3, “Replication Privilege Checks” ), or privileges sufficient to set restricted session variables (see Section 5.1.9.1, “System Variable Privileges” ). However, note that the variable is not intended for users to set; it is set automatically by the replication infrastructure. pseudo_slave_mode  has the following effects on the handling of prepared XA transactions, which can be attached to or detached from the handling session (by default, the session that issues  XA START ): pseudo_slave_mode  has the following effects on the  original_commit_timestamp  replication delay timestamp and the  original_server_version  system variable: In MySQL 8.0.14 and later,  pseudo_slave_mode  has the following effects on the handling of a statement that sets one or more unsupported (removed or unknown) SQL modes: •If true, and the handling session has executed an internal-use  BINLOG  statement, XA transactions are automatically detached from the session as soon as the first part of the transaction up to  XA PREPARE finishes, so they can be committed or rolled back by any session that has the  XA_RECOVER_ADMIN privilege. •If false, XA transactions remain attached to the handling session as long as that session is alive, during which time no other session can commit the transaction. The prepared transaction is only detached if the session disconnects or the server restarts. •If true, transactions that do not explicitly set  original_commit_timestamp  or original_server_version  are assumed to originate on another, unknown server, so the value 0, meaning unknown, is assigned to both the timestamp and the system variable. •If false, transactions that do not explicitly set  original_commit_timestamp  or original_server_version  are assumed to originate on the current server, so the current timestamp and the current server’s version are assigned to the timestamp and the system variable. •If true, the server ignores the unsupported mode and raises a warning. •If false, the server rejects the statement with  ER_UNSUPPORTED_SQL_MODE . • pseudo_thread_id 862 Type Boolean System Variable pseudo_thread_id Scope Session Dynamic Yes SET_VAR  Hint Applies No