Details
-
Bug
-
Status: Stalled (View Workflow)
-
Critical
-
Resolution: Unresolved
-
10.1(EOL), 10.2(EOL), 10.6
Description
DDL statements sent to slave does not take into account the original environment where the query was executed.
This is true when using SET STATEMENT or having a non standard value for any variable that is internally used by a DDL, like default_storage_engine.
--source include/master-slave.inc
|
|
SET STATEMENT storage_engine=Aria FOR CREATE TABLE t (i INT); |
SHOW CREATE TABLE t; |
|
--sync_slave_with_master
|
SHOW CREATE TABLE t; |
|
--connection master
|
DROP TABLE t; |
--source include/rpl_end.inc |
Result |
[connection master] |
SET STATEMENT storage_engine=Aria FOR CREATE TABLE t (i INT); |
SHOW CREATE TABLE t; |
Table Create Table |
t CREATE TABLE `t` ( |
`i` int(11) DEFAULT NULL |
) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 |
connection slave; |
SHOW CREATE TABLE t; |
Table Create Table |
t CREATE TABLE `t` ( |
`i` int(11) DEFAULT NULL |
) ENGINE=MyISAM DEFAULT CHARSET=latin1 |
Attachments
Issue Links
- blocks
-
MDEV-32930 mysqlbinlog --verbose shows incorrect values for timestamps >= 2^31 if binlog was created with mysql56_temporal_format=off
- Open
- relates to
-
MDEV-27462 SET STATEMENT allows variables that cannot be set per query basis
- Stalled