mirror of
https://github.com/MariaDB/server.git
synced 2025-11-30 05:23:50 +03:00
Under ps-protocol, commandsl like COM_STMT_FETCH, COM_STMT_CLOSE and COM_STMT_SEND_LONG_DATA are not supposed to return errors. Therefore, if a transaction is BF aborted and the client is processing one of those commands, then we should not return a deadlock error immediately. Instead wait for the a subsequent client interaction which permits errors to be returned. To handle this, wsrep_before_command() now accepts parameter keep_command_error. If set true, keep_command_error will cause wsrep-lib side to skip result handling, and to keep the current error for the next interaction with the client. Reviewed-by: Jan Lindström <jan.lindstrom@mariadb.com>
19 lines
635 B
Plaintext
19 lines
635 B
Plaintext
connection node_2;
|
|
connection node_1;
|
|
connection node_1;
|
|
connection node_2;
|
|
connection node_2;
|
|
SET SESSION wsrep_sync_wait = 0;
|
|
SET GLOBAL wsrep_provider_options="gmcast.isolate=2";
|
|
connection node_1;
|
|
SET SESSION wsrep_sync_wait = 0;
|
|
SHOW STATUS LIKE 'wsrep_cluster_status';
|
|
Variable_name Value
|
|
wsrep_cluster_status non-Primary
|
|
SET SESSION wsrep_sync_wait = default;
|
|
SET GLOBAL wsrep_provider_options="pc.bootstrap=1";
|
|
connection node_2;
|
|
SET SESSION wsrep_on=0;
|
|
connection node_2;
|
|
CALL mtr.add_suppression("WSREP: exception from gcomm, backend must be restarted: Gcomm backend termination was requested by setting gmcast.isolate=2.");
|