mirror of
https://github.com/MariaDB/server.git
synced 2025-01-31 19:11:46 +01:00
8a346f31b9
thd_rpl_stmt_based(): A new predicate to check if statement-based replication is active. (This can also hold when replication is not in use, but binlog is.) que_thr_stop(), row_ins_duplicate_error_in_clust(), row_ins_sec_index_entry_low(), row_ins(): On a duplicate key error, only lock all index records when statement-based replication is in use.
51 lines
1.1 KiB
Text
51 lines
1.1 KiB
Text
--- auto_increment_dup.result
|
|
+++ auto_increment_dup,skip-log-bin.reject
|
|
@@ -89,13 +89,14 @@
|
|
SET DEBUG_SYNC='execute_command_after_close_tables SIGNAL continue';
|
|
affected rows: 0
|
|
INSERT INTO t1(k) VALUES (2), (4), (5) ON DUPLICATE KEY UPDATE c='2';
|
|
-ERROR HY000: Lock wait timeout exceeded; try restarting transaction
|
|
+affected rows: 3
|
|
+info: Records: 3 Duplicates: 0 Warnings: 0
|
|
connection con1;
|
|
#
|
|
# 2 duplicates
|
|
#
|
|
-affected rows: 3
|
|
-info: Records: 3 Duplicates: 0 Warnings: 0
|
|
+affected rows: 4
|
|
+info: Records: 3 Duplicates: 1 Warnings: 0
|
|
connection default;
|
|
#
|
|
# 3 rows
|
|
@@ -103,19 +104,21 @@
|
|
SELECT * FROM t1 order by k;
|
|
id k c
|
|
1 1 NULL
|
|
-2 2 NULL
|
|
-3 3 NULL
|
|
-affected rows: 3
|
|
+4 2 1
|
|
+2 3 NULL
|
|
+5 4 NULL
|
|
+6 5 NULL
|
|
+affected rows: 5
|
|
INSERT INTO t1(k) VALUES (2), (4), (5) ON DUPLICATE KEY UPDATE c='2';
|
|
-affected rows: 4
|
|
-info: Records: 3 Duplicates: 1 Warnings: 0
|
|
+affected rows: 6
|
|
+info: Records: 3 Duplicates: 3 Warnings: 0
|
|
SELECT * FROM t1 order by k;
|
|
id k c
|
|
1 1 NULL
|
|
-2 2 2
|
|
-3 3 NULL
|
|
-7 4 NULL
|
|
-8 5 NULL
|
|
+4 2 2
|
|
+2 3 NULL
|
|
+5 4 2
|
|
+6 5 2
|
|
affected rows: 5
|
|
disconnect con1;
|
|
disconnect con2;
|