--source include/have_binlog_format_statement.inc --disable_query_log reset master; # get rid of previous tests binlog --enable_query_log --echo # --echo # MDEV-11815 SP variables of temporal data types do not replicate correctly --echo # CREATE TABLE t1(a INT); DELIMITER $$; CREATE PROCEDURE p1() BEGIN DECLARE i INT DEFAULT 123; DECLARE b8 BIT(8) DEFAULT 0x61; DECLARE t0 TIME DEFAULT '01:01:01'; DECLARE t6 TIME(6) DEFAULT '01:01:01.123456'; DECLARE d DATE DEFAULT '2001-01-01'; DECLARE dt0 DATETIME DEFAULT '2001-01-01 01:01:01'; DECLARE dt6 DATETIME(6) DEFAULT '2001-01-01 01:01:01.123456'; DECLARE ts0 TIMESTAMP DEFAULT '2001-01-01 01:01:01'; DECLARE ts6 TIMESTAMP(6) DEFAULT '2001-01-01 01:01:01.123456'; INSERT INTO t1 VALUES (i=0x61); INSERT INTO t1 VALUES (b8=0x61); INSERT INTO t1 VALUES (t0=10101); INSERT INTO t1 VALUES (t6=10101); INSERT INTO t1 VALUES (d=20010101); INSERT INTO t1 VALUES (dt0=20010101010101); INSERT INTO t1 VALUES (dt6=20010101010101); INSERT INTO t1 VALUES (ts0=20010101010101); INSERT INTO t1 VALUES (ts6=20010101010101); END; $$ DELIMITER ;$$ CALL p1; DROP TABLE t1; DROP PROCEDURE p1; --let $binlog_file = LAST source include/show_binlog_events.inc; --echo # --echo # MDEV-16020 SP variables inside GROUP BY..WITH ROLLUP break replication --echo # FLUSH LOGS; CREATE TABLE t1 (d DATE); INSERT INTO t1 VALUES ('1985-05-13'),('1989-12-24'); CREATE TABLE t2 (d DATE, c BIGINT); DELIMITER $$; BEGIN NOT ATOMIC BEGIN DECLARE var INT DEFAULT 10; INSERT INTO t2 SELECT d, COUNT(*) FROM t1 GROUP BY d, var; INSERT INTO t2 SELECT d, COUNT(*) FROM t1 GROUP BY d, var WITH ROLLUP; END; BEGIN DECLARE atomic INT DEFAULT 20; INSERT INTO t2 SELECT d, COUNT(*) FROM t1 GROUP BY d, atomic; INSERT INTO t2 SELECT d, COUNT(*) FROM t1 GROUP BY d, atomic WITH ROLLUP; INSERT INTO t2 SELECT d, COUNT(*) FROM t1 GROUP BY d, `atomic`; INSERT INTO t2 SELECT d, COUNT(*) FROM t1 GROUP BY d, `atomic` WITH ROLLUP; END; BEGIN DECLARE atomic ROW (atomic INT, xxx INT) DEFAULT (31,32); INSERT INTO t2 SELECT d, COUNT(*) FROM t1 GROUP BY d, atomic.atomic; INSERT INTO t2 SELECT d, COUNT(*) FROM t1 GROUP BY d, atomic.atomic WITH ROLLUP; INSERT INTO t2 SELECT d, COUNT(*) FROM t1 GROUP BY d, `atomic`.`atomic`; INSERT INTO t2 SELECT d, COUNT(*) FROM t1 GROUP BY d, `atomic`.`atomic` WITH ROLLUP; INSERT INTO t2 SELECT d, COUNT(*) FROM t1 GROUP BY d, atomic.xxx; INSERT INTO t2 SELECT d, COUNT(*) FROM t1 GROUP BY d, atomic.xxx WITH ROLLUP; INSERT INTO t2 SELECT d, COUNT(*) FROM t1 GROUP BY d, `atomic`.`xxx`; INSERT INTO t2 SELECT d, COUNT(*) FROM t1 GROUP BY d, `atomic`.`xxx` WITH ROLLUP; END; END; $$ DELIMITER ;$$ DROP TABLE t1,t2; --let $binlog_file = LAST source include/show_binlog_events.inc;