mirror of
https://github.com/MariaDB/server.git
synced 2025-12-03 05:41:09 +03:00
Other things, mainly to get create_mysqld_error_find_printf_error tool to work: - Added protection to not include mysqld_error.h twice - Include "unireg.h" instead of "mysqld_error.h" in server - Added protection if ER_XX messages are already defined - Removed wrong calls to my_error(ER_OUTOFMEMORY) as my_malloc() and my_alloc will do this automatically - Added missing %s to ER_DUP_QUERY_NAME - Removed old and wrong calls to my_strerror() when using MY_ERROR_ON_RENAME (wrong merge) - Fixed deadlock error message from Galera. Before the extra information given to ER_LOCK_DEADLOCK was missing because ER_LOCK_DEADLOCK doesn't provide any extra information. I kept #ifdef mysqld_error_find_printf_error_used in sql_acl.h to make it easy to do this kind of check again in the future
30 lines
632 B
Plaintext
30 lines
632 B
Plaintext
CREATE TABLE t1 (
|
||
f1 VARCHAR(255),
|
||
KEY (f1)
|
||
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
|
||
INSERT INTO t1 VALUES ('текст');
|
||
connection node_2;
|
||
SELECT f1 = 'текст' FROM t1;
|
||
f1 = 'текст'
|
||
1
|
||
connection node_1;
|
||
SET AUTOCOMMIT=OFF;
|
||
START TRANSACTION;
|
||
UPDATE t1 SET f1 = 'текст2';
|
||
connection node_2;
|
||
SET AUTOCOMMIT=OFF;
|
||
START TRANSACTION;
|
||
UPDATE t1 SET f1 = 'текст3';
|
||
connection node_1;
|
||
COMMIT;
|
||
connection node_2;
|
||
COMMIT;
|
||
ERROR 40001: Deadlock: wsrep aborted transaction
|
||
SELECT f1 = 'текст2' FROM t1;
|
||
f1 = 'текст2'
|
||
1
|
||
SELECT f1 = 'текст2' FROM t1 WHERE f1 = 'текст2';
|
||
f1 = 'текст2'
|
||
1
|
||
DROP TABLE t1;
|