1
0
mirror of https://github.com/MariaDB/server.git synced 2025-08-01 03:47:19 +03:00

Now merge is done.

For previous commit I had run only rpl* tests, here the other ones had a 
few surprises. Latest status:
- all tests pass
- all replication tests pass with Valgrind
This is the final-final commit & push.
Doc remains.


client/mysqlbinlog.cc:
  Making remote mysqlbinlog work with the new format of 5.0.0, and still be 
  able to talk to older servers.
  This is a quickfix, but now mysqlbinlog.test passes (mysqlbinlog seems to
  work in Valgrind, too).
mysql-test/r/drop_temp_table.result:
  result update
mysql-test/r/insert_select.result:
  result update
mysql-test/r/mix_innodb_myisam_binlog.result:
  result update
mysql-test/r/mysqlbinlog.result:
  result update
mysql-test/t/mix_innodb_myisam_binlog.test:
  position update
mysql-test/t/mysqlbinlog.test:
  position update
sql/log_event.cc:
  a comment (noticed the problem by watching the results of
  mix_innodb_myisam_binlog.test)
This commit is contained in:
unknown
2003-12-20 00:38:30 +01:00
parent 5084b6b701
commit bc3cbfbc7b
8 changed files with 184 additions and 112 deletions

View File

@ -9,10 +9,10 @@ select get_lock("a",10);
get_lock("a",10)
1
show binlog events;
Log_name Pos Event_type Server_id Orig_log_pos Info
master-bin.000001 4 Start 1 4 Server ver: VERSION, Binlog ver: 3
master-bin.000001 79 Query 1 79 use `test`; create database `drop-temp+table-test`
master-bin.000001 152 Query 1 152 use `drop-temp+table-test`; create temporary table `table:name` (a int)
master-bin.000001 246 Query 1 246 use `drop-temp+table-test`; DROP /*!40005 TEMPORARY */ TABLE `drop-temp+table-test`.`table:name`
master-bin.000001 365 Query 1 365 use `drop-temp+table-test`; DO RELEASE_LOCK("a")
Log_name Pos Event_type Server_id End_log_pos Info
master-bin.000001 4 Format_desc 1 95 Server ver: VERSION, Binlog ver: 4
master-bin.000001 95 Query 1 190 use `test`; create database `drop-temp+table-test`
master-bin.000001 190 Query 1 306 use `drop-temp+table-test`; create temporary table `table:name` (a int)
master-bin.000001 306 Query 1 447 use `drop-temp+table-test`; DROP /*!40005 TEMPORARY */ TABLE `drop-temp+table-test`.`table:name`
master-bin.000001 447 Query 1 540 use `drop-temp+table-test`; DO RELEASE_LOCK("a")
drop database `drop-temp+table-test`;

View File

@ -73,9 +73,9 @@ reset master;
insert into t1 select * from t2;
ERROR 23000: Duplicate entry '2' for key 1
show binlog events;
Log_name Pos Event_type Server_id Orig_log_pos Info
master-bin.000001 4 Start 1 4 Server ver: VERSION, Binlog ver: 3
master-bin.000001 79 Query 1 79 use `test`; insert into t1 select * from t2
Log_name Pos Event_type Server_id End_log_pos Info
master-bin.000001 4 Format_desc 1 95 Server ver: VERSION, Binlog ver: 4
master-bin.000001 95 Query 1 183 use `test`; insert into t1 select * from t2
select * from t1;
a
1

View File

@ -6,12 +6,12 @@ begin;
insert into t1 values(1);
insert into t2 select * from t1;
commit;
show binlog events from 79;
Log_name Pos Event_type Server_id Orig_log_pos Info
master-bin.000001 79 Query 1 79 use `test`; BEGIN
master-bin.000001 119 Query 1 79 use `test`; insert into t1 values(1)
master-bin.000001 178 Query 1 79 use `test`; insert into t2 select * from t1
master-bin.000001 244 Query 1 244 use `test`; COMMIT
show binlog events from 95;
Log_name Pos Event_type Server_id End_log_pos Info
master-bin.000001 95 Query 1 157 use `test`; BEGIN
master-bin.000001 157 Query 1 176 use `test`; insert into t1 values(1)
master-bin.000001 238 Query 1 183 use `test`; insert into t2 select * from t1
master-bin.000001 326 Query 1 389 use `test`; COMMIT
delete from t1;
delete from t2;
reset master;
@ -21,12 +21,12 @@ insert into t2 select * from t1;
rollback;
Warnings:
Warning 1196 Some non-transactional changed tables couldn't be rolled back
show binlog events from 79;
Log_name Pos Event_type Server_id Orig_log_pos Info
master-bin.000001 79 Query 1 79 use `test`; BEGIN
master-bin.000001 119 Query 1 79 use `test`; insert into t1 values(2)
master-bin.000001 178 Query 1 79 use `test`; insert into t2 select * from t1
master-bin.000001 244 Query 1 244 use `test`; ROLLBACK
show binlog events from 95;
Log_name Pos Event_type Server_id End_log_pos Info
master-bin.000001 95 Query 1 157 use `test`; BEGIN
master-bin.000001 157 Query 1 176 use `test`; insert into t1 values(2)
master-bin.000001 238 Query 1 183 use `test`; insert into t2 select * from t1
master-bin.000001 326 Query 1 391 use `test`; ROLLBACK
delete from t1;
delete from t2;
reset master;
@ -39,15 +39,15 @@ rollback to savepoint my_savepoint;
Warnings:
Warning 1196 Some non-transactional changed tables couldn't be rolled back
commit;
show binlog events from 79;
Log_name Pos Event_type Server_id Orig_log_pos Info
master-bin.000001 79 Query 1 79 use `test`; BEGIN
master-bin.000001 119 Query 1 79 use `test`; insert into t1 values(3)
master-bin.000001 178 Query 1 79 use `test`; savepoint my_savepoint
master-bin.000001 235 Query 1 79 use `test`; insert into t1 values(4)
master-bin.000001 294 Query 1 79 use `test`; insert into t2 select * from t1
master-bin.000001 360 Query 1 79 use `test`; rollback to savepoint my_savepoint
master-bin.000001 429 Query 1 429 use `test`; COMMIT
show binlog events from 95;
Log_name Pos Event_type Server_id End_log_pos Info
master-bin.000001 95 Query 1 157 use `test`; BEGIN
master-bin.000001 157 Query 1 176 use `test`; insert into t1 values(3)
master-bin.000001 238 Query 1 174 use `test`; savepoint my_savepoint
master-bin.000001 317 Query 1 176 use `test`; insert into t1 values(4)
master-bin.000001 398 Query 1 183 use `test`; insert into t2 select * from t1
master-bin.000001 486 Query 1 186 use `test`; rollback to savepoint my_savepoint
master-bin.000001 577 Query 1 640 use `test`; COMMIT
delete from t1;
delete from t2;
reset master;
@ -65,16 +65,16 @@ select a from t1 order by a;
a
5
7
show binlog events from 79;
Log_name Pos Event_type Server_id Orig_log_pos Info
master-bin.000001 79 Query 1 79 use `test`; BEGIN
master-bin.000001 119 Query 1 79 use `test`; insert into t1 values(5)
master-bin.000001 178 Query 1 79 use `test`; savepoint my_savepoint
master-bin.000001 235 Query 1 79 use `test`; insert into t1 values(6)
master-bin.000001 294 Query 1 79 use `test`; insert into t2 select * from t1
master-bin.000001 360 Query 1 79 use `test`; rollback to savepoint my_savepoint
master-bin.000001 429 Query 1 79 use `test`; insert into t1 values(7)
master-bin.000001 488 Query 1 488 use `test`; COMMIT
show binlog events from 95;
Log_name Pos Event_type Server_id End_log_pos Info
master-bin.000001 95 Query 1 157 use `test`; BEGIN
master-bin.000001 157 Query 1 176 use `test`; insert into t1 values(5)
master-bin.000001 238 Query 1 174 use `test`; savepoint my_savepoint
master-bin.000001 317 Query 1 176 use `test`; insert into t1 values(6)
master-bin.000001 398 Query 1 183 use `test`; insert into t2 select * from t1
master-bin.000001 486 Query 1 186 use `test`; rollback to savepoint my_savepoint
master-bin.000001 577 Query 1 176 use `test`; insert into t1 values(7)
master-bin.000001 658 Query 1 721 use `test`; COMMIT
delete from t1;
delete from t2;
reset master;
@ -87,40 +87,40 @@ insert into t2 select * from t1;
select get_lock("a",10);
get_lock("a",10)
1
show binlog events from 79;
Log_name Pos Event_type Server_id Orig_log_pos Info
master-bin.000001 79 Query 1 79 use `test`; BEGIN
master-bin.000001 119 Query 1 79 use `test`; insert into t1 values(8)
master-bin.000001 178 Query 1 79 use `test`; insert into t2 select * from t1
master-bin.000001 244 Query 1 244 use `test`; ROLLBACK
show binlog events from 95;
Log_name Pos Event_type Server_id End_log_pos Info
master-bin.000001 95 Query 1 157 use `test`; BEGIN
master-bin.000001 157 Query 1 176 use `test`; insert into t1 values(8)
master-bin.000001 238 Query 1 183 use `test`; insert into t2 select * from t1
master-bin.000001 326 Query 1 391 use `test`; ROLLBACK
delete from t1;
delete from t2;
reset master;
insert into t1 values(9);
insert into t2 select * from t1;
show binlog events from 79;
Log_name Pos Event_type Server_id Orig_log_pos Info
master-bin.000001 79 Query 1 79 use `test`; insert into t1 values(9)
master-bin.000001 138 Query 1 138 use `test`; insert into t2 select * from t1
show binlog events from 95;
Log_name Pos Event_type Server_id End_log_pos Info
master-bin.000001 95 Query 1 176 use `test`; insert into t1 values(9)
master-bin.000001 176 Query 1 264 use `test`; insert into t2 select * from t1
delete from t1;
delete from t2;
reset master;
insert into t1 values(10);
begin;
insert into t2 select * from t1;
show binlog events from 79;
Log_name Pos Event_type Server_id Orig_log_pos Info
master-bin.000001 79 Query 1 79 use `test`; insert into t1 values(10)
master-bin.000001 139 Query 1 139 use `test`; insert into t2 select * from t1
show binlog events from 95;
Log_name Pos Event_type Server_id End_log_pos Info
master-bin.000001 95 Query 1 177 use `test`; insert into t1 values(10)
master-bin.000001 177 Query 1 265 use `test`; insert into t2 select * from t1
insert into t1 values(11);
commit;
show binlog events from 79;
Log_name Pos Event_type Server_id Orig_log_pos Info
master-bin.000001 79 Query 1 79 use `test`; insert into t1 values(10)
master-bin.000001 139 Query 1 139 use `test`; insert into t2 select * from t1
master-bin.000001 205 Query 1 205 use `test`; BEGIN
master-bin.000001 245 Query 1 205 use `test`; insert into t1 values(11)
master-bin.000001 305 Query 1 305 use `test`; COMMIT
show binlog events from 95;
Log_name Pos Event_type Server_id End_log_pos Info
master-bin.000001 95 Query 1 177 use `test`; insert into t1 values(10)
master-bin.000001 177 Query 1 265 use `test`; insert into t2 select * from t1
master-bin.000001 265 Query 1 327 use `test`; BEGIN
master-bin.000001 327 Query 1 347 use `test`; insert into t1 values(11)
master-bin.000001 409 Query 1 472 use `test`; COMMIT
alter table t2 engine=INNODB;
delete from t1;
delete from t2;
@ -129,12 +129,12 @@ begin;
insert into t1 values(12);
insert into t2 select * from t1;
commit;
show binlog events from 79;
Log_name Pos Event_type Server_id Orig_log_pos Info
master-bin.000001 79 Query 1 79 use `test`; BEGIN
master-bin.000001 119 Query 1 79 use `test`; insert into t1 values(12)
master-bin.000001 179 Query 1 79 use `test`; insert into t2 select * from t1
master-bin.000001 245 Query 1 245 use `test`; COMMIT
show binlog events from 95;
Log_name Pos Event_type Server_id End_log_pos Info
master-bin.000001 95 Query 1 157 use `test`; BEGIN
master-bin.000001 157 Query 1 177 use `test`; insert into t1 values(12)
master-bin.000001 239 Query 1 183 use `test`; insert into t2 select * from t1
master-bin.000001 327 Query 1 390 use `test`; COMMIT
delete from t1;
delete from t2;
reset master;
@ -142,8 +142,8 @@ begin;
insert into t1 values(13);
insert into t2 select * from t1;
rollback;
show binlog events from 79;
Log_name Pos Event_type Server_id Orig_log_pos Info
show binlog events from 95;
Log_name Pos Event_type Server_id End_log_pos Info
delete from t1;
delete from t2;
reset master;
@ -154,11 +154,11 @@ insert into t1 values(15);
insert into t2 select * from t1;
rollback to savepoint my_savepoint;
commit;
show binlog events from 79;
Log_name Pos Event_type Server_id Orig_log_pos Info
master-bin.000001 79 Query 1 79 use `test`; BEGIN
master-bin.000001 119 Query 1 79 use `test`; insert into t1 values(14)
master-bin.000001 179 Query 1 179 use `test`; COMMIT
show binlog events from 95;
Log_name Pos Event_type Server_id End_log_pos Info
master-bin.000001 95 Query 1 157 use `test`; BEGIN
master-bin.000001 157 Query 1 177 use `test`; insert into t1 values(14)
master-bin.000001 239 Query 1 302 use `test`; COMMIT
delete from t1;
delete from t2;
reset master;
@ -174,10 +174,10 @@ select a from t1 order by a;
a
16
18
show binlog events from 79;
Log_name Pos Event_type Server_id Orig_log_pos Info
master-bin.000001 79 Query 1 79 use `test`; BEGIN
master-bin.000001 119 Query 1 79 use `test`; insert into t1 values(16)
master-bin.000001 179 Query 1 79 use `test`; insert into t1 values(18)
master-bin.000001 239 Query 1 239 use `test`; COMMIT
show binlog events from 95;
Log_name Pos Event_type Server_id End_log_pos Info
master-bin.000001 95 Query 1 157 use `test`; BEGIN
master-bin.000001 157 Query 1 177 use `test`; insert into t1 values(16)
master-bin.000001 239 Query 1 177 use `test`; insert into t1 values(18)
master-bin.000001 321 Query 1 384 use `test`; COMMIT
drop table t1,t2;

View File

@ -16,6 +16,8 @@ flush logs;
--- Local --
use test;
SET TIMESTAMP=1000000000;
SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1;
SET @@session.sql_mode=0;
create table t1 (word varchar(20));
SET TIMESTAMP=1000000000;
create table t2 (id int auto_increment not null primary key);
@ -33,6 +35,8 @@ LOAD DATA LOCAL INFILE 'MYSQL_TEST_DIR/var/tmp/words.dat-5-0' INTO TABLE t1 FIE
--- Broken LOAD DATA --
use test;
SET TIMESTAMP=1000000000;
SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1;
SET @@session.sql_mode=0;
insert into t1 values ("Alas");
--- --database --
@ -41,11 +45,15 @@ SET INSERT_ID=1;
--- --position --
use test;
SET TIMESTAMP=1000000000;
SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1;
SET @@session.sql_mode=0;
insert into t1 values ("Alas");
--- Remote --
use test;
SET TIMESTAMP=1000000000;
SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1;
SET @@session.sql_mode=0;
create table t1 (word varchar(20));
SET TIMESTAMP=1000000000;
create table t2 (id int auto_increment not null primary key);
@ -60,11 +68,15 @@ insert into t1 values ("Alas");
--- Broken LOAD DATA --
use test;
SET TIMESTAMP=1000000000;
SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1;
SET @@session.sql_mode=0;
insert into t1 values ("Alas");
--- --database --
use test;
SET TIMESTAMP=1000000000;
SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1;
SET @@session.sql_mode=0;
create table t1 (word varchar(20));
SET TIMESTAMP=1000000000;
create table t2 (id int auto_increment not null primary key);
@ -79,5 +91,7 @@ insert into t1 values ("Alas");
--- --position --
use test;
SET TIMESTAMP=1000000000;
SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1;
SET @@session.sql_mode=0;
insert into t1 values ("Alas");
drop table t1, t2;

View File

@ -25,7 +25,7 @@ insert into t1 values(1);
insert into t2 select * from t1;
commit;
show binlog events from 79;
show binlog events from 95;
delete from t1;
delete from t2;
@ -37,7 +37,7 @@ insert into t2 select * from t1;
# should say some changes to non-transact1onal tables couldn't be rolled back
rollback;
show binlog events from 79;
show binlog events from 95;
delete from t1;
delete from t2;
@ -51,7 +51,7 @@ insert into t2 select * from t1;
rollback to savepoint my_savepoint;
commit;
show binlog events from 79;
show binlog events from 95;
delete from t1;
delete from t2;
@ -67,7 +67,7 @@ insert into t1 values(7);
commit;
select a from t1 order by a; # check that savepoints work :)
show binlog events from 79;
show binlog events from 95;
# and when ROLLBACK is not explicit?
delete from t1;
@ -87,7 +87,7 @@ connection con2;
# so SHOW BINLOG EVENTS may come before con1 does the loggin. To be sure that
# logging has been done, we use a user lock.
select get_lock("a",10);
show binlog events from 79;
show binlog events from 95;
# and when not in a transact1on?
delete from t1;
@ -97,10 +97,10 @@ reset master;
insert into t1 values(9);
insert into t2 select * from t1;
show binlog events from 79;
show binlog events from 95;
# Check that when the query updat1ng the MyISAM table is the first in the
# transact1on, we log it immediately.
# transaction, we log it immediately.
delete from t1;
delete from t2;
reset master;
@ -108,11 +108,11 @@ reset master;
insert into t1 values(10); # first make t1 non-empty
begin;
insert into t2 select * from t1;
show binlog events from 79;
show binlog events from 95;
insert into t1 values(11);
commit;
show binlog events from 79;
show binlog events from 95;
# Check that things work like before this BEGIN/ROLLBACK code was added,
@ -129,7 +129,7 @@ insert into t1 values(12);
insert into t2 select * from t1;
commit;
show binlog events from 79;
show binlog events from 95;
delete from t1;
delete from t2;
@ -140,7 +140,7 @@ insert into t1 values(13);
insert into t2 select * from t1;
rollback;
show binlog events from 79;
show binlog events from 95;
delete from t1;
delete from t2;
@ -154,7 +154,7 @@ insert into t2 select * from t1;
rollback to savepoint my_savepoint;
commit;
show binlog events from 79;
show binlog events from 95;
delete from t1;
delete from t2;
@ -170,6 +170,6 @@ insert into t1 values(18);
commit;
select a from t1 order by a; # check that savepoints work :)
show binlog events from 79;
show binlog events from 95;
drop table t1,t2;

View File

@ -60,7 +60,7 @@ select "--- --database --" as "";
select "--- --position --" as "";
--enable_query_log
--replace_result $MYSQL_TEST_DIR MYSQL_TEST_DIR
--exec $MYSQL_BINLOG --short-form --local-load=$MYSQL_TEST_DIR/var/tmp/ --position=27 $MYSQL_TEST_DIR/var/log/master-bin.000002
--exec $MYSQL_BINLOG --short-form --local-load=$MYSQL_TEST_DIR/var/tmp/ --position=118 $MYSQL_TEST_DIR/var/log/master-bin.000002
# These are tests for remote binlog.
# They should return the same as previous test.
@ -97,7 +97,7 @@ select "--- --database --" as "";
select "--- --position --" as "";
--enable_query_log
--replace_result $MYSQL_TEST_DIR MYSQL_TEST_DIR
--exec $MYSQL_BINLOG --short-form --local-load=$MYSQL_TEST_DIR/var/tmp/ --read-from-remote-server --position=27 --user=root --host=127.0.0.1 --port=$MASTER_MYPORT master-bin.000002
--exec $MYSQL_BINLOG --short-form --local-load=$MYSQL_TEST_DIR/var/tmp/ --read-from-remote-server --position=118 --user=root --host=127.0.0.1 --port=$MASTER_MYPORT master-bin.000002
# clean up
drop table t1, t2;