Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
M
MariaDB
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
nexedi
MariaDB
Commits
54c18272
Commit
54c18272
authored
Jan 12, 2006
by
ingo@mysql.com
Browse files
Options
Browse Files
Download
Plain Diff
Merge mysql.com:/home/mydev/mysql-5.1
into mysql.com:/home/mydev/mysql-5.1-wl1563
parents
01d8c667
6a65263a
Changes
10
Hide whitespace changes
Inline
Side-by-side
Showing
10 changed files
with
17 additions
and
703 deletions
+17
-703
mysql-test/r/rpl_row_sp000.result
mysql-test/r/rpl_row_sp000.result
+0
-365
mysql-test/r/rpl_sp.result
mysql-test/r/rpl_sp.result
+0
-0
mysql-test/t/disabled.def
mysql-test/t/disabled.def
+1
-2
mysql-test/t/rpl_row_sp000-slave.opt
mysql-test/t/rpl_row_sp000-slave.opt
+0
-1
mysql-test/t/rpl_row_sp000.test
mysql-test/t/rpl_row_sp000.test
+0
-331
mysql-test/t/rpl_sp-master.opt
mysql-test/t/rpl_sp-master.opt
+0
-0
mysql-test/t/rpl_sp-slave.opt
mysql-test/t/rpl_sp-slave.opt
+0
-0
mysql-test/t/rpl_sp.test
mysql-test/t/rpl_sp.test
+0
-1
mysql-test/t/rpl_stm_mystery22.test
mysql-test/t/rpl_stm_mystery22.test
+16
-2
mysql-test/t/rpl_stm_sp-master.opt
mysql-test/t/rpl_stm_sp-master.opt
+0
-1
No files found.
mysql-test/r/rpl_row_sp000.result
deleted
100644 → 0
View file @
01d8c667
stop slave;
drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
reset master;
reset slave;
drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
start slave;
drop database if exists mysqltest1;
create database mysqltest1;
use mysqltest1;
create table t1 (a varchar(100));
use mysqltest1;
create procedure foo()
begin
declare b int;
set b = 8;
insert into t1 values (b);
insert into t1 values (unix_timestamp());
end|
select * from mysql.proc where name='foo' and db='mysqltest1';
db name type specific_name language sql_data_access is_deterministic security_type param_list returns body definer created modified sql_mode comment
mysqltest1 foo PROCEDURE foo SQL CONTAINS_SQL NO DEFINER begin
declare b int;
set b = 8;
insert into t1 values (b);
insert into t1 values (unix_timestamp());
end root@localhost # #
select * from mysql.proc where name='foo' and db='mysqltest1';
db name type specific_name language sql_data_access is_deterministic security_type param_list returns body definer created modified sql_mode comment
mysqltest1 foo PROCEDURE foo SQL CONTAINS_SQL NO DEFINER begin
declare b int;
set b = 8;
insert into t1 values (b);
insert into t1 values (unix_timestamp());
end root@localhost # #
set timestamp=1000000000;
call foo();
select * from t1;
a
8
1000000000
select * from t1;
a
8
1000000000
delete from t1;
create procedure foo2()
not deterministic
select * from mysqltest1.t1;
call foo2();
a
alter procedure foo2 contains sql;
drop table t1;
create table t1 (a int);
create table t2 (a int);
create procedure foo3()
deterministic
insert into t1 values (15);
grant CREATE ROUTINE, EXECUTE on mysqltest1.* to "zedjzlcsjhd"@127.0.0.1;
grant SELECT on mysqltest1.t1 to "zedjzlcsjhd"@127.0.0.1;
grant SELECT, INSERT on mysqltest1.t2 to "zedjzlcsjhd"@127.0.0.1;
SELECT 1;
1
1
create procedure foo4()
deterministic
begin
insert into t2 values(3);
insert into t1 values (5);
end|
call foo4();
Got one of the listed errors
call foo3();
show warnings;
Level Code Message
call foo4();
Got one of the listed errors
alter procedure foo4 sql security invoker;
call foo4();
show warnings;
Level Code Message
select * from t1;
a
15
5
select * from t2;
a
3
3
3
select * from t1;
a
15
5
select * from t2;
a
3
3
3
delete from t2;
alter table t2 add unique (a);
drop procedure foo4;
create procedure foo4()
deterministic
begin
insert into t2 values(20),(20);
end|
call foo4();
ERROR 23000: Duplicate entry '20' for key 1
show warnings;
Level Code Message
Error 1062 Duplicate entry '20' for key 1
select * from t2;
a
20
select * from t2;
a
20
select * from mysql.proc where name="foo4" and db='mysqltest1';
db name type specific_name language sql_data_access is_deterministic security_type param_list returns body definer created modified sql_mode comment
mysqltest1 foo4 PROCEDURE foo4 SQL CONTAINS_SQL YES DEFINER begin
insert into t2 values(20),(20);
end root@localhost # #
drop procedure foo4;
select * from mysql.proc where name="foo4" and db='mysqltest1';
db name type specific_name language sql_data_access is_deterministic security_type param_list returns body definer created modified sql_mode comment
select * from mysql.proc where name="foo4" and db='mysqltest1';
db name type specific_name language sql_data_access is_deterministic security_type param_list returns body definer created modified sql_mode comment
drop procedure foo;
drop procedure foo2;
drop procedure foo3;
create function fn1(x int)
returns int
deterministic
begin
insert into t1 values (x);
return x+2;
end|
delete t1,t2 from t1,t2;
select fn1(20);
fn1(20)
22
insert into t2 values(fn1(21));
select * from t1;
a
21
20
select * from t2;
a
23
select * from t1;
a
21
20
select * from t2;
a
23
drop function fn1;
create function fn1()
returns int
begin
return unix_timestamp();
end|
alter function fn1 no sql;
delete from t1;
set timestamp=1000000000;
insert into t1 values(fn1());
create function fn2()
returns int
no sql
begin
return unix_timestamp();
end|
create function fn3()
returns int
not deterministic
reads sql data
begin
return 0;
end|
select fn3();
fn3()
0
select * from mysql.proc where db='mysqltest1';
db name type specific_name language sql_data_access is_deterministic security_type param_list returns body definer created modified sql_mode comment
mysqltest1 fn1 FUNCTION fn1 SQL NO_SQL NO DEFINER int(11) begin
return unix_timestamp();
end root@localhost # #
mysqltest1 fn2 FUNCTION fn2 SQL NO_SQL NO DEFINER int(11) begin
return unix_timestamp();
end zedjzlcsjhd@localhost # #
mysqltest1 fn3 FUNCTION fn3 SQL READS_SQL_DATA NO DEFINER int(11) begin
return 0;
end root@localhost # #
select * from t1;
a
1000000000
use mysqltest1;
select * from t1;
a
1000000000
select * from mysql.proc where db='mysqltest1';
db name type specific_name language sql_data_access is_deterministic security_type param_list returns body definer created modified sql_mode comment
mysqltest1 fn1 FUNCTION fn1 SQL NO_SQL NO DEFINER int(11) begin
return unix_timestamp();
end root@localhost # #
mysqltest1 fn2 FUNCTION fn2 SQL NO_SQL NO DEFINER int(11) begin
return unix_timestamp();
end zedjzlcsjhd@localhost # #
mysqltest1 fn3 FUNCTION fn3 SQL READS_SQL_DATA NO DEFINER int(11) begin
return 0;
end root@localhost # #
delete from t2;
alter table t2 add unique (a);
drop function fn1;
create function fn1()
returns int
begin
insert into t2 values(20),(20);
return 10;
end|
select fn1();
ERROR 23000: Duplicate entry '20' for key 1
select * from t2;
a
20
select * from t2;
a
20
create trigger trg before insert on t1 for each row set new.a= 10;
ERROR 42000: Access denied; you need the SUPER privilege for this operation
delete from t1;
create trigger trg before insert on t1 for each row set new.a= 10;
insert into t1 values (1);
select * from t1;
a
10
select * from t1;
a
10
delete from t1;
drop trigger trg;
insert into t1 values (1);
select * from t1;
a
1
show binlog events in 'master-bin.000001' from 102;
Log_name Pos Event_type Server_id End_log_pos Info
master-bin.000001 # Query 1 # drop database if exists mysqltest1
master-bin.000001 # Query 1 # create database mysqltest1
master-bin.000001 # Query 1 # use `mysqltest1`; create table t1 (a varchar(100))
master-bin.000001 # Table_map 1 # mysql.proc
master-bin.000001 # Write_rows 1 #
master-bin.000001 # Table_map 1 # mysqltest1.t1
master-bin.000001 # Write_rows 1 #
master-bin.000001 # Table_map 1 # mysqltest1.t1
master-bin.000001 # Write_rows 1 #
master-bin.000001 # Query 1 # use `mysqltest1`; delete from t1
master-bin.000001 # Table_map 1 # mysql.proc
master-bin.000001 # Write_rows 1 #
master-bin.000001 # Table_map 1 # mysql.proc
master-bin.000001 # Update_rows 1 #
master-bin.000001 # Query 1 # use `mysqltest1`; drop table t1
master-bin.000001 # Query 1 # use `mysqltest1`; create table t1 (a int)
master-bin.000001 # Query 1 # use `mysqltest1`; create table t2 (a int)
master-bin.000001 # Table_map 1 # mysql.proc
master-bin.000001 # Write_rows 1 #
master-bin.000001 # Table_map 1 # mysql.user
master-bin.000001 # Write_rows 1 #
master-bin.000001 # Table_map 1 # mysql.db
master-bin.000001 # Write_rows 1 #
master-bin.000001 # Table_map 1 # mysql.tables_priv
master-bin.000001 # Write_rows 1 #
master-bin.000001 # Table_map 1 # mysql.tables_priv
master-bin.000001 # Write_rows 1 #
master-bin.000001 # Table_map 1 # mysql.proc
master-bin.000001 # Write_rows 1 #
master-bin.000001 # Table_map 1 # mysql.procs_priv
master-bin.000001 # Write_rows 1 #
master-bin.000001 # Table_map 1 # mysqltest1.t2
master-bin.000001 # Write_rows 1 #
master-bin.000001 # Table_map 1 # mysqltest1.t1
master-bin.000001 # Write_rows 1 #
master-bin.000001 # Table_map 1 # mysqltest1.t2
master-bin.000001 # Write_rows 1 #
master-bin.000001 # Table_map 1 # mysql.proc
master-bin.000001 # Update_rows 1 #
master-bin.000001 # Table_map 1 # mysqltest1.t2
master-bin.000001 # Write_rows 1 #
master-bin.000001 # Table_map 1 # mysqltest1.t1
master-bin.000001 # Write_rows 1 #
master-bin.000001 # Query 1 # use `mysqltest1`; delete from t2
master-bin.000001 # Query 1 # use `mysqltest1`; alter table t2 add unique (a)
master-bin.000001 # Table_map 1 # mysql.procs_priv
master-bin.000001 # Delete_rows 1 #
master-bin.000001 # Table_map 1 # mysql.proc
master-bin.000001 # Delete_rows 1 #
master-bin.000001 # Table_map 1 # mysql.proc
master-bin.000001 # Write_rows 1 #
master-bin.000001 # Table_map 1 # mysqltest1.t2
master-bin.000001 # Write_rows 1 #
master-bin.000001 # Table_map 1 # mysql.proc
master-bin.000001 # Delete_rows 1 #
master-bin.000001 # Table_map 1 # mysql.proc
master-bin.000001 # Delete_rows 1 #
master-bin.000001 # Table_map 1 # mysql.proc
master-bin.000001 # Delete_rows 1 #
master-bin.000001 # Table_map 1 # mysql.proc
master-bin.000001 # Delete_rows 1 #
master-bin.000001 # Table_map 1 # mysql.proc
master-bin.000001 # Write_rows 1 #
master-bin.000001 # Table_map 1 # mysqltest1.t2
master-bin.000001 # Delete_rows 1 #
master-bin.000001 # Table_map 1 # mysqltest1.t1
master-bin.000001 # Delete_rows 1 #
master-bin.000001 # Table_map 1 # mysqltest1.t1
master-bin.000001 # Write_rows 1 #
master-bin.000001 # Table_map 1 # mysqltest1.t1
master-bin.000001 # Write_rows 1 #
master-bin.000001 # Table_map 1 # mysqltest1.t2
master-bin.000001 # Write_rows 1 #
master-bin.000001 # Table_map 1 # mysql.proc
master-bin.000001 # Delete_rows 1 #
master-bin.000001 # Table_map 1 # mysql.proc
master-bin.000001 # Write_rows 1 #
master-bin.000001 # Table_map 1 # mysql.proc
master-bin.000001 # Update_rows 1 #
master-bin.000001 # Query 1 # use `mysqltest1`; delete from t1
master-bin.000001 # Table_map 1 # mysqltest1.t1
master-bin.000001 # Write_rows 1 #
master-bin.000001 # Table_map 1 # mysql.proc
master-bin.000001 # Write_rows 1 #
master-bin.000001 # Table_map 1 # mysql.procs_priv
master-bin.000001 # Write_rows 1 #
master-bin.000001 # Table_map 1 # mysql.proc
master-bin.000001 # Write_rows 1 #
master-bin.000001 # Query 1 # use `mysqltest1`; delete from t2
master-bin.000001 # Query 1 # use `mysqltest1`; alter table t2 add unique (a)
master-bin.000001 # Table_map 1 # mysql.proc
master-bin.000001 # Delete_rows 1 #
master-bin.000001 # Table_map 1 # mysql.proc
master-bin.000001 # Write_rows 1 #
master-bin.000001 # Table_map 1 # mysqltest1.t2
master-bin.000001 # Write_rows 1 #
master-bin.000001 # Query 1 # use `mysqltest1`; delete from t1
master-bin.000001 # Query 1 # use `mysqltest1`; CREATE DEFINER=`root`@`localhost` trigger trg before insert on t1 for each row set new.a= 10
master-bin.000001 # Table_map 1 # mysqltest1.t1
master-bin.000001 # Write_rows 1 #
master-bin.000001 # Query 1 # use `mysqltest1`; delete from t1
master-bin.000001 # Query 1 # use `mysqltest1`; drop trigger trg
master-bin.000001 # Table_map 1 # mysqltest1.t1
master-bin.000001 # Write_rows 1 #
select * from t1;
a
1
create procedure foo()
not deterministic
reads sql data
select * from t1;
call foo();
a
1
drop procedure foo;
drop function fn1;
drop database mysqltest1;
drop user "zedjzlcsjhd"@127.0.0.1;
mysql-test/r/rpl_s
tm_s
p.result
→
mysql-test/r/rpl_sp.result
View file @
54c18272
File moved
mysql-test/t/disabled.def
View file @
54c18272
...
@@ -18,8 +18,7 @@ group_min_max : Bug #15448
...
@@ -18,8 +18,7 @@ group_min_max : Bug #15448
innodb_concurrent : Results are not deterministic, Elliot will fix (BUG#3300)
innodb_concurrent : Results are not deterministic, Elliot will fix (BUG#3300)
subselect : Bug#15706
subselect : Bug#15706
type_time : Bug#15805
type_time : Bug#15805
#rpl000002 : Bug#15920 Temporary tables are not binlogged in SBR
#ps_7ndb : Bug#15923 Core dump in RBR mode when executing test suite
rpl_ddl : Bug#15963 SBR does not show "Definer" correctly
rpl_ddl : Bug#15963 SBR does not show "Definer" correctly
mysqlslap : Bug#16167
mysqlslap : Bug#16167
events : Affects flush test case. A table lock not released somewhere
events : Affects flush test case. A table lock not released somewhere
rpl_sp : Bug #16456
mysql-test/t/rpl_row_sp000-slave.opt
deleted
100644 → 0
View file @
01d8c667
--log_bin_trust_routine_creators=0
mysql-test/t/rpl_row_sp000.test
deleted
100644 → 0
View file @
01d8c667
# row-based and statement have expected binlog difference in result files
--
source
include
/
have_binlog_format_row
.
inc
# Test of replication of stored procedures in row-based replication.
# Initially copied from the statement-based version rpl_stm_sp.test.
# Note that in the .opt files we still use the old variable name
# log-bin-trust-routine-creators so that this test checks that it's
# still accepted (this test also checks that the new name is
# accepted). The old name could be removed in 5.1 or 6.0.
source
include
/
master
-
slave
.
inc
;
# we need a db != test, where we don't have automatic grants
--
disable_warnings
drop
database
if
exists
mysqltest1
;
--
enable_warnings
create
database
mysqltest1
;
use
mysqltest1
;
create
table
t1
(
a
varchar
(
100
));
sync_slave_with_master
;
use
mysqltest1
;
# ********************** PART 1 : STORED PROCEDURES ***************
# Does the same proc as on master get inserted into mysql.proc ?
# (all same properties)
connection
master
;
delimiter
|
;
create
procedure
foo
()
begin
declare
b
int
;
set
b
=
8
;
insert
into
t1
values
(
b
);
insert
into
t1
values
(
unix_timestamp
());
end
|
delimiter
;
|
# we replace columns having times
# (even with fixed timestamp displayed time may changed based on TZ)
--
replace_result
localhost
.
localdomain
localhost
127.0
.
0.1
localhost
--
replace_column
13
# 14 #
select
*
from
mysql
.
proc
where
name
=
'foo'
and
db
=
'mysqltest1'
;
sync_slave_with_master
;
--
replace_result
localhost
.
localdomain
localhost
127.0
.
0.1
localhost
--
replace_column
13
# 14 #
select
*
from
mysql
.
proc
where
name
=
'foo'
and
db
=
'mysqltest1'
;
connection
master
;
# see if timestamp used in SP on slave is same as on master
set
timestamp
=
1000000000
;
call
foo
();
select
*
from
t1
;
sync_slave_with_master
;
select
*
from
t1
;
# Now a SP which is not updating tables
connection
master
;
delete
from
t1
;
create
procedure
foo2
()
not
deterministic
select
*
from
mysqltest1
.
t1
;
call
foo2
();
alter
procedure
foo2
contains
sql
;
# SP with definer's right
drop
table
t1
;
create
table
t1
(
a
int
);
create
table
t2
(
a
int
);
create
procedure
foo3
()
deterministic
insert
into
t1
values
(
15
);
# let's create a non-privileged user
grant
CREATE
ROUTINE
,
EXECUTE
on
mysqltest1
.*
to
"zedjzlcsjhd"
@
127.0
.
0.1
;
grant
SELECT
on
mysqltest1
.
t1
to
"zedjzlcsjhd"
@
127.0
.
0.1
;
grant
SELECT
,
INSERT
on
mysqltest1
.
t2
to
"zedjzlcsjhd"
@
127.0
.
0.1
;
# ToDo: BUG#14931: There is a race between the last grant binlogging, and
# the binlogging in the new connection made below, causing sporadic test
# failures due to switched statement order in binlog. To fix this we do
# SELECT 1 in the first connection before starting the second, ensuring
# that binlogging is done in the expected order.
# Please remove this SELECT 1 when BUG#14931 is fixed.
SELECT
1
;
connect
(
con1
,
127.0
.
0.1
,
zedjzlcsjhd
,,
mysqltest1
,
$MASTER_MYPORT
,);
connection
con1
;
# this routine will fail in the second INSERT because of privileges
delimiter
|
;
create
procedure
foo4
()
deterministic
begin
insert
into
t2
values
(
3
);
insert
into
t1
values
(
5
);
end
|
delimiter
;
|
# I add ,0 so that it does not print the error in the test output,
# because this error is hostname-dependent
--
error
1142
,
0
call
foo4
();
# invoker has no INSERT grant on table t1 => failure
connection
master
;
call
foo3
();
# success (definer == root)
show
warnings
;
--
error
1142
,
0
call
foo4
();
# definer's rights => failure
# we test replication of ALTER PROCEDURE
alter
procedure
foo4
sql
security
invoker
;
call
foo4
();
# invoker's rights => success
show
warnings
;
# Note that half-failed procedure calls are ok with binlogging;
# if we compare t2 on master and slave we see they are identical:
select
*
from
t1
;
select
*
from
t2
;
sync_slave_with_master
;
select
*
from
t1
;
select
*
from
t2
;
# Let's check another failing-in-the-middle procedure
connection
master
;
delete
from
t2
;
alter
table
t2
add
unique
(
a
);
drop
procedure
foo4
;
delimiter
|
;
create
procedure
foo4
()
deterministic
begin
insert
into
t2
values
(
20
),(
20
);
end
|
delimiter
;
|
--
error
1062
call
foo4
();
show
warnings
;
select
*
from
t2
;
sync_slave_with_master
;
# check that this failed-in-the-middle replicated right:
select
*
from
t2
;
# Test of DROP PROCEDURE
--
replace_result
localhost
.
localdomain
localhost
127.0
.
0.1
localhost
--
replace_column
13
# 14 #
select
*
from
mysql
.
proc
where
name
=
"foo4"
and
db
=
'mysqltest1'
;
connection
master
;
drop
procedure
foo4
;
select
*
from
mysql
.
proc
where
name
=
"foo4"
and
db
=
'mysqltest1'
;
sync_slave_with_master
;
select
*
from
mysql
.
proc
where
name
=
"foo4"
and
db
=
'mysqltest1'
;
# Test of a procedure and function containing UUID() is done in
# rpl_row_UUID.
# ********************** PART 2 : FUNCTIONS ***************
connection
master
;
drop
procedure
foo
;
drop
procedure
foo2
;
drop
procedure
foo3
;
delimiter
|
;
create
function
fn1
(
x
int
)
returns
int
deterministic
begin
insert
into
t1
values
(
x
);
return
x
+
2
;
end
|
delimiter
;
|
delete
t1
,
t2
from
t1
,
t2
;
select
fn1
(
20
);
insert
into
t2
values
(
fn1
(
21
));
select
*
from
t1
;
select
*
from
t2
;
sync_slave_with_master
;
select
*
from
t1
;
select
*
from
t2
;
connection
master
;
delimiter
|
;
drop
function
fn1
;
create
function
fn1
()
returns
int
begin
return
unix_timestamp
();
end
|
delimiter
;
|
# Just to test ALTER FUNCTION
alter
function
fn1
no
sql
;
delete
from
t1
;
set
timestamp
=
1000000000
;
insert
into
t1
values
(
fn1
());
connection
con1
;
delimiter
|
;
create
function
fn2
()
returns
int
no
sql
begin
return
unix_timestamp
();
end
|
delimiter
;
|
connection
master
;
delimiter
|
;
create
function
fn3
()
returns
int
not
deterministic
reads
sql
data
begin
return
0
;
end
|
delimiter
;
|
select
fn3
();
--
replace_result
localhost
.
localdomain
localhost
127.0
.
0.1
localhost
--
replace_column
13
# 14 #
select
*
from
mysql
.
proc
where
db
=
'mysqltest1'
;
select
*
from
t1
;
sync_slave_with_master
;
use
mysqltest1
;
select
*
from
t1
;
--
replace_result
localhost
.
localdomain
localhost
127.0
.
0.1
localhost
--
replace_column
13
# 14 #
select
*
from
mysql
.
proc
where
db
=
'mysqltest1'
;
# Let's check a failing-in-the-middle function
connection
master
;
delete
from
t2
;
alter
table
t2
add
unique
(
a
);
drop
function
fn1
;
delimiter
|
;
create
function
fn1
()
returns
int
begin
insert
into
t2
values
(
20
),(
20
);
return
10
;
end
|
delimiter
;
|
--
error
1062
select
fn1
();
select
*
from
t2
;
sync_slave_with_master
;
# check that this failed-in-the-middle replicated right:
select
*
from
t2
;
# ********************** PART 3 : TRIGGERS ***************
connection
con1
;
--
error
1227
create
trigger
trg
before
insert
on
t1
for
each
row
set
new
.
a
=
10
;
connection
master
;
delete
from
t1
;
# TODO: when triggers can contain an update, test that this update
# does not go into binlog.
# I'm not setting user vars in the trigger, because replication of user vars
# would take care of propagating the user var's value to slave, so even if
# the trigger was not executed on slave it would not be discovered.
create
trigger
trg
before
insert
on
t1
for
each
row
set
new
.
a
=
10
;
insert
into
t1
values
(
1
);
select
*
from
t1
;
sync_slave_with_master
;
select
*
from
t1
;
connection
master
;
delete
from
t1
;
drop
trigger
trg
;
insert
into
t1
values
(
1
);
select
*
from
t1
;
--
replace_column
2
# 5 #
show
binlog
events
in
'master-bin.000001'
from
102
;
sync_slave_with_master
;
select
*
from
t1
;
#
# Test for bug #13969 "Routines which are replicated from master can't be
# executed on slave".
#
connection
master
;
create
procedure
foo
()
not
deterministic
reads
sql
data
select
*
from
t1
;
sync_slave_with_master
;
# This should not fail
call
foo
();
connection
master
;
drop
procedure
foo
;
sync_slave_with_master
;
# Clean up
connection
master
;
drop
function
fn1
;
drop
database
mysqltest1
;
drop
user
"zedjzlcsjhd"
@
127.0
.
0.1
;
sync_slave_with_master
;
mysql-test/t/rpl_
row_sp000
-master.opt
→
mysql-test/t/rpl_
sp
-master.opt
View file @
54c18272
File moved
mysql-test/t/rpl_s
tm_s
p-slave.opt
→
mysql-test/t/rpl_sp-slave.opt
View file @
54c18272
File moved
mysql-test/t/rpl_s
tm_s
p.test
→
mysql-test/t/rpl_sp.test
View file @
54c18272
# row-based and statement have expected binlog difference in result files
# row-based and statement have expected binlog difference in result files
--
source
include
/
have_binlog_format_statement
.
inc
# Test of replication of stored procedures (WL#2146 for MySQL 5.0)
# Test of replication of stored procedures (WL#2146 for MySQL 5.0)
# Modified by WL#2971.
# Modified by WL#2971.
...
...
mysql-test/t/rpl_stm_mystery22.test
View file @
54c18272
--
source
include
/
have_binlog_format_statement
.
inc
################################
# Change Author: JBM
# Change Date: 2006-01-12
# Change: Added back have stm binlog
# and added requirments comments
################################
# test case to make slave thread get ahead by 22 bytes
# test case to make slave thread get ahead by 22 bytes
################################
#REQUIREMENT: If there is a faked slave duplicate key insert
#error and the slave is restarted, the replication should
#proceed in a correct way.
################################
#REQUIREMENT: If there is a faked slave non-existing record
#delete error and the slave is restarted, then the replication
#should proceed in a correct way.
#################################
--
source
include
/
have_binlog_format_statement
.
inc
--
source
include
/
master
-
slave
.
inc
--
source
include
/
master
-
slave
.
inc
# first, cause a duplicate key problem on the slave
# first, cause a duplicate key problem on the slave
...
...
mysql-test/t/rpl_stm_sp-master.opt
deleted
100644 → 0
View file @
01d8c667
--log_bin_trust_routine_creators=0
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment