At file:///home/psergey/dev/maria-5.1-wl36-r3/ ------------------------------------------------------------ revno: 2752 revision-id: psergey@askmonty.org-20091024214858-5whjzap4t0qvv41j parent: psergey@askmonty.org-20091024194339-tauuslposi16t7uv committer: Sergey Petrunya <psergey@askmonty.org> branch nick: maria-5.1-wl36-r3 timestamp: Sun 2009-10-25 01:48:58 +0400 message: MWL#36: Add a mysqlbinlog option to change the used database - Apply Alexander Ivanov's fix to testsuite === modified file 'mysql-test/suite/binlog/r/binlog_row_mysqlbinlog_options.result' --- a/mysql-test/suite/binlog/r/binlog_row_mysqlbinlog_options.result 2009-10-16 14:22:56 +0000 +++ b/mysql-test/suite/binlog/r/binlog_row_mysqlbinlog_options.result 2009-10-24 21:48:58 +0000 @@ -22,19 +22,21 @@ FIELDS TERMINATED BY ',' LINES TERMINATED BY '\r\n'; DELETE FROM test3.t3 WHERE a=1; flush logs; +# +# mysqlbinlog output +# --base64-output = decode-rows +# --rewrite-db = test1->new_test1 +# --rewrite-db = test3->new_test3 +# /*!40019 SET @@session.max_insert_delayed_threads=0*/; /*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/; DELIMITER /*!*/; # at # -#010909 4:46:40 server id 1 end_log_pos # Start: binlog v 4, server v #.##.## created 010909 4:46:40 at startup +#010909 4:46:40 server id # end_log_pos # Start: binlog v 4, server v #.##.## created 010909 4:46:40 at startup ROLLBACK/*!*/; -BINLOG ' -AMqaOw8BAAAAZgAAAGoAAAAAAAQANS4xLjM4LU1hcmlhREItYmV0YTEtZGVidWctbG9nAAAAAAAA -AAAAAAAAAAAAAAAAAAAAypo7EzgNAAgAEgAEBAQEEgAAUwAEGggAAAAICAgC -'/*!*/; # at # use new_test1/*!*/; -#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0 +#010909 4:46:40 server id # end_log_pos # Query thread_id=# exec_time=# error_code=0 SET TIMESTAMP=1000000000/*!*/; SET @@session.pseudo_thread_id=#/*!*/; SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1, @@session.autocommit=1/*!*/; @@ -47,19 +49,14 @@ CREATE TABLE t1 (a INT, b INT) /*!*/; # at # -#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0 +#010909 4:46:40 server id # end_log_pos # Query thread_id=# exec_time=# error_code=0 SET TIMESTAMP=1000000000/*!*/; BEGIN /*!*/; # at # # at # -#010909 4:46:40 server id 1 end_log_pos # Table_map: `new_test1`.`t1` mapped to number # -#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F - -BINLOG ' -AMqaOxMBAAAALwAAADgBAAAAABcAAAAAAAAACW5ld190ZXN0MQACdDEAAgMDAAM= -AMqaOxcBAAAALwAAAGcBAAAQABcAAAAAAAEAAv/8AQAAAAEAAAD8AgAAAAIAAAA= -'/*!*/; +#010909 4:46:40 server id # end_log_pos # Table_map: `new_test1`.`t1` mapped to number # +#010909 4:46:40 server id # end_log_pos # Write_rows: table id # flags: STMT_END_F ### INSERT INTO new_test1.t1 ### SET ### @1=1 /* INT meta=0 nullable=1 is_null=0 */ @@ -69,30 +66,25 @@ ### @1=2 /* INT meta=0 nullable=1 is_null=0 */ ### @2=2 /* INT meta=0 nullable=1 is_null=0 */ # at # -#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0 +#010909 4:46:40 server id # end_log_pos # Query thread_id=# exec_time=# error_code=0 SET TIMESTAMP=1000000000/*!*/; COMMIT /*!*/; # at # -#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0 +#010909 4:46:40 server id # end_log_pos # Query thread_id=# exec_time=# error_code=0 use test2/*!*/; SET TIMESTAMP=1000000000/*!*/; CREATE TABLE t2 (a INT) /*!*/; # at # -#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0 +#010909 4:46:40 server id # end_log_pos # Query thread_id=# exec_time=# error_code=0 SET TIMESTAMP=1000000000/*!*/; BEGIN /*!*/; # at # # at # -#010909 4:46:40 server id 1 end_log_pos # Table_map: `test2`.`t2` mapped to number # -#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F - -BINLOG ' -AMqaOxMBAAAAKgAAAHMCAAAAABgAAAAAAAAABXRlc3QyAAJ0MgABAwAB -AMqaOxcBAAAAJwAAAJoCAAAQABgAAAAAAAEAAf/+AQAAAP4CAAAA -'/*!*/; +#010909 4:46:40 server id # end_log_pos # Table_map: `test2`.`t2` mapped to number # +#010909 4:46:40 server id # end_log_pos # Write_rows: table id # flags: STMT_END_F ### INSERT INTO test2.t2 ### SET ### @1=1 /* INT meta=0 nullable=1 is_null=0 */ @@ -100,53 +92,43 @@ ### SET ### @1=2 /* INT meta=0 nullable=1 is_null=0 */ # at # -#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0 +#010909 4:46:40 server id # end_log_pos # Query thread_id=# exec_time=# error_code=0 SET TIMESTAMP=1000000000/*!*/; COMMIT /*!*/; # at # -#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0 +#010909 4:46:40 server id # end_log_pos # Query thread_id=# exec_time=# error_code=0 SET TIMESTAMP=1000000000/*!*/; BEGIN /*!*/; # at # # at # -#010909 4:46:40 server id 1 end_log_pos # Table_map: `new_test1`.`t1` mapped to number # -#010909 4:46:40 server id 1 end_log_pos # Delete_rows: table id # flags: STMT_END_F - -BINLOG ' -AMqaOxMBAAAALwAAAFADAAAAABcAAAAAAAAACW5ld190ZXN0MQACdDEAAgMDAAM= -AMqaOxkBAAAAJgAAAHYDAAAQABcAAAAAAAEAAv/8AQAAAAEAAAA= -'/*!*/; +#010909 4:46:40 server id # end_log_pos # Table_map: `new_test1`.`t1` mapped to number # +#010909 4:46:40 server id # end_log_pos # Delete_rows: table id # flags: STMT_END_F ### DELETE FROM new_test1.t1 ### WHERE ### @1=1 /* INT meta=0 nullable=1 is_null=0 */ ### @2=1 /* INT meta=0 nullable=1 is_null=0 */ # at # -#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0 +#010909 4:46:40 server id # end_log_pos # Query thread_id=# exec_time=# error_code=0 SET TIMESTAMP=1000000000/*!*/; COMMIT /*!*/; # at # use new_test3/*!*/; -#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0 +#010909 4:46:40 server id # end_log_pos # Query thread_id=# exec_time=# error_code=0 SET TIMESTAMP=1000000000/*!*/; CREATE TABLE t3 (a INT) /*!*/; # at # -#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0 +#010909 4:46:40 server id # end_log_pos # Query thread_id=# exec_time=# error_code=0 SET TIMESTAMP=1000000000/*!*/; BEGIN /*!*/; # at # # at # -#010909 4:46:40 server id 1 end_log_pos # Table_map: `new_test3`.`t3` mapped to number # -#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F - -BINLOG ' -AMqaOxMBAAAALgAAAIIEAAAAABkAAAAAAAAACW5ld190ZXN0MwACdDMAAQMAAQ== -AMqaOxcBAAAAJwAAAKkEAAAQABkAAAAAAAEAAf/+AQAAAP4CAAAA -'/*!*/; +#010909 4:46:40 server id # end_log_pos # Table_map: `new_test3`.`t3` mapped to number # +#010909 4:46:40 server id # end_log_pos # Write_rows: table id # flags: STMT_END_F ### INSERT INTO new_test3.t3 ### SET ### @1=1 /* INT meta=0 nullable=1 is_null=0 */ @@ -154,49 +136,38 @@ ### SET ### @1=2 /* INT meta=0 nullable=1 is_null=0 */ # at # -#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0 +#010909 4:46:40 server id # end_log_pos # Query thread_id=# exec_time=# error_code=0 SET TIMESTAMP=1000000000/*!*/; COMMIT /*!*/; # at # -#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0 +#010909 4:46:40 server id # end_log_pos # Query thread_id=# exec_time=# error_code=0 SET TIMESTAMP=1000000000/*!*/; BEGIN /*!*/; # at # # at # -#010909 4:46:40 server id 1 end_log_pos # Table_map: `new_test1`.`t1` mapped to number # -#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F - -BINLOG ' -AMqaOxMBAAAALwAAAF8FAAAAABcAAAAAAAAACW5ld190ZXN0MQACdDEAAgMDAAM= -AMqaOxcBAAAAJgAAAIUFAAAQABcAAAAAAAEAAv/8AwAAAAMAAAA= -'/*!*/; +#010909 4:46:40 server id # end_log_pos # Table_map: `new_test1`.`t1` mapped to number # +#010909 4:46:40 server id # end_log_pos # Write_rows: table id # flags: STMT_END_F ### INSERT INTO new_test1.t1 ### SET ### @1=3 /* INT meta=0 nullable=1 is_null=0 */ ### @2=3 /* INT meta=0 nullable=1 is_null=0 */ # at # -#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0 +#010909 4:46:40 server id # end_log_pos # Query thread_id=# exec_time=# error_code=0 SET TIMESTAMP=1000000000/*!*/; COMMIT /*!*/; # at # use new_test1/*!*/; -#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0 +#010909 4:46:40 server id # end_log_pos # Query thread_id=# exec_time=# error_code=0 SET TIMESTAMP=1000000000/*!*/; BEGIN /*!*/; # at # # at # -#010909 4:46:40 server id 1 end_log_pos # Table_map: `new_test1`.`t1` mapped to number # -#010909 4:46:40 server id 1 end_log_pos # Write_rows: table id # flags: STMT_END_F - -BINLOG ' -AMqaOxMBAAAALwAAADsGAAAAABcAAAAAAAAACW5ld190ZXN0MQACdDEAAgMDAAM= -AMqaOxcBAAAASgAAAIUGAAAQABcAAAAAAAEAAv/8AgAAAAIAAAD8AwAAAAMAAAD8BAAAAAQAAAD8 -BQAAAAUAAAD8BgAAAAYAAAA= -'/*!*/; +#010909 4:46:40 server id # end_log_pos # Table_map: `new_test1`.`t1` mapped to number # +#010909 4:46:40 server id # end_log_pos # Write_rows: table id # flags: STMT_END_F ### INSERT INTO new_test1.t1 ### SET ### @1=2 /* INT meta=0 nullable=1 is_null=0 */ @@ -218,34 +189,29 @@ ### @1=6 /* INT meta=0 nullable=1 is_null=0 */ ### @2=6 /* INT meta=0 nullable=1 is_null=0 */ # at # -#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0 +#010909 4:46:40 server id # end_log_pos # Query thread_id=# exec_time=# error_code=0 SET TIMESTAMP=1000000000/*!*/; COMMIT /*!*/; # at # -#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0 +#010909 4:46:40 server id # end_log_pos # Query thread_id=# exec_time=# error_code=0 SET TIMESTAMP=1000000000/*!*/; BEGIN /*!*/; # at # # at # -#010909 4:46:40 server id 1 end_log_pos # Table_map: `new_test3`.`t3` mapped to number # -#010909 4:46:40 server id 1 end_log_pos # Delete_rows: table id # flags: STMT_END_F - -BINLOG ' -AMqaOxMBAAAALgAAADoHAAAAABkAAAAAAAAACW5ld190ZXN0MwACdDMAAQMAAQ== -AMqaOxkBAAAAIgAAAFwHAAAQABkAAAAAAAEAAf/+AQAAAA== -'/*!*/; +#010909 4:46:40 server id # end_log_pos # Table_map: `new_test3`.`t3` mapped to number # +#010909 4:46:40 server id # end_log_pos # Delete_rows: table id # flags: STMT_END_F ### DELETE FROM new_test3.t3 ### WHERE ### @1=1 /* INT meta=0 nullable=1 is_null=0 */ # at # -#010909 4:46:40 server id 1 end_log_pos # Query thread_id=# exec_time=# error_code=0 +#010909 4:46:40 server id # end_log_pos # Query thread_id=# exec_time=# error_code=0 SET TIMESTAMP=1000000000/*!*/; COMMIT /*!*/; # at # -#010909 4:46:40 server id 1 end_log_pos # Rotate to master-bin.000002 pos: 4 +#010909 4:46:40 server id # end_log_pos # Rotate to master-bin.000002 pos: 4 DELIMITER ; # End of log file ROLLBACK /* added by mysqlbinlog */; === modified file 'mysql-test/suite/binlog/t/binlog_row_mysqlbinlog_options.test' --- a/mysql-test/suite/binlog/t/binlog_row_mysqlbinlog_options.test 2009-10-16 14:22:56 +0000 +++ b/mysql-test/suite/binlog/t/binlog_row_mysqlbinlog_options.test 2009-10-24 21:48:58 +0000 @@ -51,9 +51,16 @@ flush logs; +--echo # +--echo # mysqlbinlog output +--echo # --base64-output = decode-rows +--echo # --rewrite-db = test1->new_test1 +--echo # --rewrite-db = test3->new_test3 +--echo # + let $MYSQLD_DATADIR= `select @@datadir`; ---replace_regex /server v [^ ]*/server v #.##.##/ /exec_time=[0-9]*/exec_time=#/ /thread_id=[0-9]*/thread_id=#/ /table id [0-9]*/table id #/ /mapped to number [0-9]*/mapped to number #/ /end_log_pos [0-9]*/end_log_pos #/ /# at [0-9]*/# at #/ ---exec $MYSQL_BINLOG --rewrite-db="test1->new_test1" --rewrite-db="test3->new_test3" -v -v $MYSQLD_DATADIR/master-bin.000001 +--replace_regex /server id [0-9]*/server id #/ /server v [^ ]*/server v #.##.##/ /exec_time=[0-9]*/exec_time=#/ /thread_id=[0-9]*/thread_id=#/ /table id [0-9]*/table id #/ /mapped to number [0-9]*/mapped to number #/ /end_log_pos [0-9]*/end_log_pos #/ /# at [0-9]*/# at #/ +--exec $MYSQL_BINLOG --base64-output=decode-rows --rewrite-db="test1->new_test1" --rewrite-db="test3->new_test3" -v -v $MYSQLD_DATADIR/master-bin.000001 DROP DATABASE test1; DROP DATABASE test2;