Details
-
Bug
-
Status: Open (View Workflow)
-
Major
-
Resolution: Unresolved
-
12.0(EOL), 12.1(EOL), 12.2, 12.3
-
None
-
Can result in unexpected behaviour
Description
Original t/c credit: nikitamalyavin
--source include/have_binlog_format_statement.inc
|
CREATE TEMPORARY TABLE tt1 (c INT); |
INSERT INTO tt1 VALUES (1); |
CREATE TEMPORARY TABLE tt2 (c INT PRIMARY KEY); |
INSERT tt2 VALUES (1),(2); |
--error ER_DUP_ENTRY
|
UPDATE tt2, tt1 SET tt2.c=2; |
CREATE TABLE t1 (c INT); |
INSERT t1 SELECT * FROM tt2; |
SHOW BINLOG EVENTS;
|
# Cleanup
|
DROP TABLE tt1, tt2, t1; |
Leads to:
|
CS 12.2.2 6ca70dd64ce56da40fad3bcd0641493210dd0a4c (Optimized, Clang 21.1.3-20250923) Build 23/01/2026 |
...
|
master-bin.000001 1243 Annotate_rows 1 0 INSERT t1 SELECT * FROM tt2
|
master-bin.000001 1293 Table_map 1 0 table_id: 32 (test.t1)
|
master-bin.000001 1338 Write_rows_v1 1 0 table_id: 32 flags: STMT_END_F
|
Confirmed in binlog:
|
MDEV-35915-v11 CS 12.2.0 8934bac9ea05b79f7a5109d9e980cb939a24d4e3 (Debug, Clang 21.1.3-20250923) Build 19/01/2026 |
mariadb-test$ ../bin/mariadb-binlog --base64-output=decode-rows -vvv var/mysqld.1/data/master-bin.00[0-9][0-9][0-9][0-9] | grep '^###'
|
### INSERT INTO `test`.`t1`
|
### SET
|
### @1=1 /* INT meta=0 nullable=1 is_null=0 */
|
### INSERT INTO `test`.`t1`
|
### SET
|
### @1=2 /* INT meta=0 nullable=1 is_null=0 */
|
Introduced by MDEV-36099, potentially possible to be optimized towards regular SBR for the given testcase.
Attachments
Issue Links
- relates to
-
MDEV-38638 GTT: SBR and MBR fall back to ROW events for all DML using GTT and base tables + binlog Bloat
-
- Confirmed
-