mirror of
https://github.com/MariaDB/server.git
synced 2025-01-18 13:02:28 +01:00
6fbc869d18
New mysqltest that can run mysqltest with PS Added support for ZEROFILL in PS Fixed crash when one called mysql_stmt_store_result() without a preceding mysql_stmt_bind_result() Updated test cases to support --ps-protocol (Some tests are still run using old protocol) Fixed crash in PS when using SELECT * FROM t1 NATURAL JOIN t2... Fixed crash in PS when using sub queries Create table didn't signal when table was created. This could cause a "DROP TABLE created_table" in another thread to wait "forever" Fixed wrong permissions check in PS and multi-table updates (one could get permission denied for legal quries) Fix for PS and SELECT ... PROCEDURE Reset all warnings when executing a new PS query group_concat(...ORDER BY) didn't work with PS Fixed problem with test suite when not using innodb
55 lines
1.8 KiB
Text
55 lines
1.8 KiB
Text
#
|
|
# Test of replicating user variables
|
|
#
|
|
source include/master-slave.inc;
|
|
# Disable PS as the log positions differs
|
|
--disable_ps_protocol
|
|
|
|
|
|
# Clean up old slave's binlogs.
|
|
# The slave is started with --log-slave-updates
|
|
# and this test does SHOW BINLOG EVENTS on the slave's
|
|
# binlog. But previous tests can influence the current test's
|
|
# binlog (e.g. a temporary table in the previous test has not
|
|
# been explicitly deleted, or it has but the slave hasn't had
|
|
# enough time to catch it before STOP SLAVE,
|
|
# and at the beginning of the current
|
|
# test the slave immediately writes DROP TEMPORARY TABLE this_old_table).
|
|
# We wait for the slave to have written all he wants to the binlog
|
|
# (otherwise RESET MASTER may come too early).
|
|
save_master_pos;
|
|
connection slave;
|
|
sync_with_master;
|
|
reset master;
|
|
connection master;
|
|
|
|
create table t1(n char(30));
|
|
set @i1:=12345678901234, @i2:=-12345678901234, @i3:=0, @i4:=-1;
|
|
set @s1:='This is a test', @r1:=12.5, @r2:=-12.5;
|
|
set @n1:=null;
|
|
set @s2:='', @s3:='abc\'def', @s4:= 'abc\\def', @s5:= 'abc''def';
|
|
insert into t1 values (@i1), (@i2), (@i3), (@i4);
|
|
insert into t1 values (@r1), (@r2);
|
|
insert into t1 values (@s1), (@s2), (@s3), (@s4), (@s5);
|
|
insert into t1 values (@n1);
|
|
insert into t1 values (@n2); # not explicitely set before
|
|
insert into t1 values (@a:=0), (@a:=@a+1), (@a:=@a+1);
|
|
insert into t1 values (@a+(@b:=@a+1));
|
|
set @q:='abc';
|
|
insert t1 values (@q), (@q:=concat(@q, 'n1')), (@q:=concat(@q, 'n2'));
|
|
set @a:=5;
|
|
insert into t1 values (@a),(@a);
|
|
connection master1; # see if variable is reset in binlog when thread changes
|
|
insert into t1 values (@a),(@a),(@a*5);
|
|
select * from t1;
|
|
save_master_pos;
|
|
connection slave;
|
|
sync_with_master;
|
|
select * from t1;
|
|
show binlog events from 141;
|
|
connection master;
|
|
drop table t1;
|
|
save_master_pos;
|
|
connection slave;
|
|
sync_with_master;
|
|
stop slave;
|