diff options
Diffstat (limited to 'mysql-test/t/create_drop_binlog.test')
-rw-r--r-- | mysql-test/t/create_drop_binlog.test | 196 |
1 files changed, 196 insertions, 0 deletions
diff --git a/mysql-test/t/create_drop_binlog.test b/mysql-test/t/create_drop_binlog.test new file mode 100644 index 00000000000..59a66d59e6f --- /dev/null +++ b/mysql-test/t/create_drop_binlog.test @@ -0,0 +1,196 @@ +--source include/have_udf.inc +--source include/have_log_bin.inc +--source include/binlog_start_pos.inc + +--let $pos=`select $binlog_start_pos + 65` + +--let $binlog_file=query_get_value(SHOW MASTER STATUS, File, 1) +--let $binlog_start=query_get_value(SHOW MASTER STATUS, Position, 1) + +CREATE OR REPLACE DATABASE d1; +CREATE OR REPLACE DATABASE d1; +DROP DATABASE d1; +CREATE DATABASE IF NOT EXISTS d1; +CREATE DATABASE IF NOT EXISTS d1; +DROP DATABASE IF EXISTS d1; +DROP DATABASE IF EXISTS d1; +--echo "Runnig SHOW BINLOG EVENTS" +--replace_column 1 # 2 # 5 # +--replace_regex /xid=[0-9]+/xid=XX/ /GTID [0-9]+-[0-9]+-[0-9]+/GTID #-#-#/ /Server.ver.*/VERSIONS/ +--disable_query_log +--eval SHOW BINLOG EVENTS FROM $binlog_start; +--enable_query_log +RESET MASTER; +USE test; + + +CREATE OR REPLACE FUNCTION f1() RETURNS INT RETURN 1; +CREATE OR REPLACE FUNCTION f1() RETURNS INT RETURN 1; +DROP FUNCTION f1; +CREATE FUNCTION IF NOT EXISTS f1() RETURNS INT RETURN 1; +CREATE FUNCTION IF NOT EXISTS f1() RETURNS INT RETURN 1; +DROP FUNCTION IF EXISTS f1; +DROP FUNCTION IF EXISTS f1; +--replace_column 1 # 2 # 5 # +--replace_regex /xid=[0-9]+/xid=XX/ /GTID [0-9]+-[0-9]+-[0-9]+/GTID #-#-#/ /Server.ver.*/VER/ +SHOW BINLOG EVENTS; +RESET MASTER; + + +CREATE TABLE t1 (a DATETIME); +CREATE OR REPLACE PROCEDURE p1() DELETE FROM t1; +CREATE OR REPLACE PROCEDURE p1() DELETE FROM t1; +DROP PROCEDURE p1; +CREATE PROCEDURE IF NOT EXISTS p1() DELETE FROM t1; +CREATE PROCEDURE IF NOT EXISTS p1() DELETE FROM t1; +DROP PROCEDURE IF EXISTS p1; +DROP PROCEDURE IF EXISTS p1; +--replace_column 1 # 2 # 5 # +--replace_regex /xid=[0-9]+/xid=XX/ /GTID [0-9]+-[0-9]+-[0-9]+/GTID #-#-#/ /Server.ver.*/VER/ +SHOW BINLOG EVENTS; +DROP TABLE t1; +RESET MASTER; + + +--replace_result $UDF_EXAMPLE_SO UDF_EXAMPLE_LIB +eval CREATE OR REPLACE FUNCTION metaphon RETURNS STRING SONAME '$UDF_EXAMPLE_SO'; +--replace_result $UDF_EXAMPLE_SO UDF_EXAMPLE_LIB +eval CREATE OR REPLACE FUNCTION metaphon RETURNS STRING SONAME '$UDF_EXAMPLE_SO'; +DROP FUNCTION metaphon; +--replace_result $UDF_EXAMPLE_SO UDF_EXAMPLE_LIB +eval CREATE FUNCTION IF NOT EXISTS metaphon RETURNS STRING SONAME '$UDF_EXAMPLE_SO'; +--replace_result $UDF_EXAMPLE_SO UDF_EXAMPLE_LIB +eval CREATE FUNCTION IF NOT EXISTS metaphon RETURNS STRING SONAME '$UDF_EXAMPLE_SO'; +DROP FUNCTION IF EXISTS metaphon; +DROP FUNCTION IF EXISTS metaphon; +--replace_column 1 # 2 # 5 # +--replace_result $UDF_EXAMPLE_SO UDM_EXAMPLE_LIB +--replace_regex /xid=[0-9]+/xid=XX/ /GTID [0-9]+-[0-9]+-[0-9]+/GTID #-#-#/ /Server.ver.*/VER/ +SHOW BINLOG EVENTS; +RESET MASTER; + + +--echo # +--echo # CREATE SERVER is not logged +--echo # +CREATE OR REPLACE SERVER s1 FOREIGN DATA WRAPPER mysql OPTIONS (USER 'root', HOST 'localhost', DATABASE 'test'); +CREATE OR REPLACE SERVER s1 FOREIGN DATA WRAPPER mysql OPTIONS (USER 'root', HOST 'localhost', DATABASE 'test'); +DROP SERVER s1; +CREATE SERVER IF NOT EXISTS s1 FOREIGN DATA WRAPPER mysql OPTIONS (USER 'root', HOST 'localhost', DATABASE 'test'); +CREATE SERVER IF NOT EXISTS s1 FOREIGN DATA WRAPPER mysql OPTIONS (USER 'root', HOST 'localhost', DATABASE 'test'); +DROP SERVER IF EXISTS s1; +DROP SERVER IF EXISTS s1; +--replace_column 1 # 2 # 5 # +--replace_regex /xid=[0-9]+/xid=XX/ /GTID [0-9]+-[0-9]+-[0-9]+/GTID #-#-#/ /Server.ver.*/VER/ +SHOW BINLOG EVENTS; +RESET MASTER; + + + +CREATE OR REPLACE VIEW v1 AS SELECT 1; +CREATE OR REPLACE VIEW v1 AS SELECT 1; +DROP VIEW v1; +CREATE VIEW IF NOT EXISTS v1 AS SELECT 1; +CREATE VIEW IF NOT EXISTS v1 AS SELECT 1; +DROP VIEW IF EXISTS v1; +DROP VIEW IF EXISTS v1; +--replace_column 1 # 2 # 5 # +--replace_regex /xid=[0-9]+/xid=XX/ /GTID [0-9]+-[0-9]+-[0-9]+/GTID #-#-#/ /Server.ver.*/VER/ +SHOW BINLOG EVENTS; +RESET MASTER; + +CREATE OR REPLACE ROLE r1; +CREATE OR REPLACE ROLE r1; +DROP ROLE r1; +CREATE ROLE IF NOT EXISTS r1; +CREATE ROLE IF NOT EXISTS r1; +DROP ROLE IF EXISTS r1; +DROP ROLE IF EXISTS r1; +--replace_column 1 # 2 # 5 # +--replace_regex /xid=[0-9]+/xid=XX/ /GTID [0-9]+-[0-9]+-[0-9]+/GTID #-#-#/ /Server.ver.*/VER/ +SHOW BINLOG EVENTS; +RESET MASTER; + +CREATE OR REPLACE USER u1@localhost; +CREATE OR REPLACE USER u1@localhost; +DROP USER u1@localhost; +CREATE USER IF NOT EXISTS u1@localhost; +CREATE USER IF NOT EXISTS u1@localhost; +DROP USER IF EXISTS u1@localhost; +DROP USER IF EXISTS u1@localhost; +--replace_column 1 # 2 # 5 # +--replace_regex /xid=[0-9]+/xid=XX/ /GTID [0-9]+-[0-9]+-[0-9]+/GTID #-#-#/ /Server.ver.*/VER/ +SHOW BINLOG EVENTS; +RESET MASTER; + + +SET timestamp=UNIX_TIMESTAMP('2014-11-01 10:20:30'); +CREATE OR REPLACE EVENT ev1 ON SCHEDULE EVERY 1 SECOND DO DROP TABLE IF EXISTS t1; +CREATE OR REPLACE EVENT ev1 ON SCHEDULE EVERY 1 SECOND DO DROP TABLE IF EXISTS t2; +SELECT EVENT_NAME, EVENT_DEFINITION FROM INFORMATION_SCHEMA.EVENTS; +DROP EVENT ev1; +DROP EVENT IF EXISTS ev1; + +--replace_column 1 # 2 # 5 # +--replace_regex /xid=[0-9]+/xid=XX/ /GTID [0-9]+-[0-9]+-[0-9]+/GTID #-#-#/ /Server.ver.*/VER/ +SHOW BINLOG EVENTS; +RESET MASTER; + +CREATE TABLE t1 (a INT); +CREATE OR REPLACE TRIGGER tr1 BEFORE INSERT ON t1 FOR EACH ROW SET NEW.a=10; +CREATE OR REPLACE TRIGGER tr1 BEFORE INSERT ON t1 FOR EACH ROW SET NEW.a=11; +DROP TRIGGER tr1; +CREATE TRIGGER IF NOT EXISTS tr1 BEFORE INSERT ON t1 FOR EACH ROW SET NEW.a=20; +CREATE TRIGGER IF NOT EXISTS tr1 BEFORE INSERT ON t1 FOR EACH ROW SET NEW.a=21; +DROP TRIGGER IF EXISTS tr1; +DROP TRIGGER IF EXISTS tr1; +DROP TABLE t1; + +--replace_column 1 # 2 # 5 # +--replace_regex /xid=[0-9]+/xid=XX/ /GTID [0-9]+-[0-9]+-[0-9]+/GTID #-#-#/ /Server.ver.*/VER/ +SHOW BINLOG EVENTS; +RESET MASTER; + + +CREATE TABLE t1(a INT, b INT); +CREATE TABLE IF NOT EXISTS t1(a INT, b INT); +CREATE OR REPLACE INDEX i1 ON t1(a); +CREATE OR REPLACE INDEX i1 ON t1(a); +CREATE OR REPLACE INDEX i1 ON t1(a,b); +CREATE OR REPLACE INDEX i1 ON t1(a,b); +DROP TABLE t1; +--replace_column 1 # 2 # 5 # +--replace_regex /xid=[0-9]+/xid=XX/ /GTID [0-9]+-[0-9]+-[0-9]+/GTID #-#-#/ /Server.ver.*/VER/ +SHOW BINLOG EVENTS; +RESET MASTER; + +# Test RESET MASTER TO + +RESET MASTER; +--replace_result $pos <pos> +SHOW MASTER STATUS; +RESET MASTER TO 100; +--replace_result $pos <pos> +SHOW MASTER STATUS; +RESET MASTER; +--replace_result $pos <pos> +SHOW MASTER STATUS; + +# +# mdev-7817 ALTER TABLE {ADD|DROP} INDEX IF [NOT] EXISTS does not get written into binlog if nothing to do +# + +CREATE TABLE t1(a INT, b INT); +CREATE TABLE IF NOT EXISTS t1(a INT, b INT); +CREATE INDEX IF NOT EXISTS i1 ON t1(a); +CREATE INDEX IF NOT EXISTS i1 ON t1(a); +SHOW CREATE TABLE t1; +DROP INDEX IF EXISTS i1 ON t1; +DROP INDEX IF EXISTS i1 ON t1; +DROP TABLE t1; +DROP TABLE IF EXISTS t1; +--replace_column 1 # 2 # 5 # +--replace_regex /xid=[0-9]+/xid=XX/ /GTID [0-9]+-[0-9]+-[0-9]+/GTID #-#-#/ /Server.ver.*/VER/ +SHOW BINLOG EVENTS; +RESET MASTER; + |