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
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
Kirill Smelkov
mariadb
Commits
57ced262
Commit
57ced262
authored
Jul 09, 2006
by
guilhem@gbichot3.local
Browse files
Options
Browse Files
Download
Plain Diff
Merge gbichot3.local:/home/mysql_src/mysql-5.1-new-WL3146-handler
into gbichot3.local:/home/mysql_src/mysql-5.1
parents
87fb4fb4
6ba4d22c
Changes
10
Hide whitespace changes
Inline
Side-by-side
Showing
10 changed files
with
123 additions
and
35 deletions
+123
-35
mysql-test/lib/mtr_cases.pl
mysql-test/lib/mtr_cases.pl
+38
-23
mysql-test/lib/mtr_report.pl
mysql-test/lib/mtr_report.pl
+18
-0
mysql-test/mysql-test-run.pl
mysql-test/mysql-test-run.pl
+10
-2
mysql-test/r/rpl_row_create_table.result
mysql-test/r/rpl_row_create_table.result
+1
-0
mysql-test/r/rpl_switch_stm_row_mixed.result
mysql-test/r/rpl_switch_stm_row_mixed.result
+29
-7
mysql-test/t/disabled.def
mysql-test/t/disabled.def
+0
-1
mysql-test/t/rpl_row_create_table.test
mysql-test/t/rpl_row_create_table.test
+1
-0
mysql-test/t/rpl_switch_stm_row_mixed.test
mysql-test/t/rpl_switch_stm_row_mixed.test
+17
-0
sql/sql_class.h
sql/sql_class.h
+2
-1
sql/sql_insert.cc
sql/sql_insert.cc
+7
-1
No files found.
mysql-test/lib/mtr_cases.pl
View file @
57ced262
...
...
@@ -37,6 +37,23 @@ sub collect_test_cases ($) {
opendir
(
TESTDIR
,
$testdir
)
or
mtr_error
("
Can't open dir
\"
$testdir
\"
: $!
");
# ----------------------------------------------------------------------
# Disable some tests listed in disabled.def
# ----------------------------------------------------------------------
my
%
disabled
;
if
(
open
(
DISABLED
,
"
$testdir
/disabled.def
"
)
)
{
while
(
<
DISABLED
>
)
{
chomp
;
if
(
/^\s*(\S+)\s*:\s*(.*?)\s*$/
)
{
$disabled
{
$1
}
=
$2
;
}
}
close
DISABLED
;
}
if
(
@::opt_cases
)
{
foreach
my
$tname
(
@::opt_cases
)
{
# Run in specified order, no sort
...
...
@@ -100,30 +117,13 @@ sub collect_test_cases ($) {
}
}
collect_one_test_case
(
$testdir
,
$resdir
,
$tname
,
$elem
,
$cases
,
{}
,
collect_one_test_case
(
$testdir
,
$resdir
,
$tname
,
$elem
,
$cases
,
\%
disabled
,
$component_id
);
}
closedir
TESTDIR
;
}
else
{
# ----------------------------------------------------------------------
# Disable some tests listed in disabled.def
# ----------------------------------------------------------------------
my
%
disabled
;
if
(
!
$::opt_ignore_disabled_def
and
open
(
DISABLED
,
"
$testdir
/disabled.def
"
)
)
{
while
(
<
DISABLED
>
)
{
chomp
;
if
(
/^\s*(\S+)\s*:\s*(.*?)\s*$/
)
{
$disabled
{
$1
}
=
$2
;
}
}
close
DISABLED
;
}
foreach
my
$elem
(
sort
readdir
(
TESTDIR
)
)
{
my
$component_id
=
undef
;
my
$tname
=
undef
;
...
...
@@ -414,20 +414,35 @@ sub collect_one_test_case($$$$$$$) {
}
# FIXME why this late?
my
$marked_as_disabled
=
0
;
if
(
$disabled
->
{
$tname
}
)
{
$tinfo
->
{'
skip
'}
=
1
;
$tinfo
->
{'
disable
'}
=
1
;
# Sub type of 'skip'
$tinfo
->
{'
comment
'}
=
$disabled
->
{
$tname
}
if
$disabled
->
{
$tname
};
$marked_as_disabled
=
1
;
$tinfo
->
{'
comment
'}
=
$disabled
->
{
$tname
};
}
if
(
-
f
$disabled_file
)
{
$tinfo
->
{'
skip
'}
=
1
;
$tinfo
->
{'
disable
'}
=
1
;
# Sub type of 'skip'
$marked_as_disabled
=
1
;
$tinfo
->
{'
comment
'}
=
mtr_fromfile
(
$disabled_file
);
}
# If test was marked as disabled, either opt_enable_disabled is off and then
# we skip this test, or it is on and then we run this test but warn
if
(
$marked_as_disabled
)
{
if
(
$::opt_enable_disabled
)
{
$tinfo
->
{'
dont_skip_though_disabled
'}
=
1
;
}
else
{
$tinfo
->
{'
skip
'}
=
1
;
$tinfo
->
{'
disable
'}
=
1
;
# Sub type of 'skip'
}
}
if
(
$component_id
eq
'
im
'
)
{
if
(
$::glob_use_embedded_server
)
...
...
mysql-test/lib/mtr_report.pl
View file @
57ced262
...
...
@@ -10,6 +10,7 @@ sub mtr_report_test_name($);
sub
mtr_report_test_passed
($);
sub
mtr_report_test_failed
($);
sub
mtr_report_test_skipped
($);
sub
mtr_report_test_not_skipped_though_disabled
($);
sub
mtr_show_failed_diff
($);
sub
mtr_report_stats
($);
...
...
@@ -100,6 +101,23 @@ sub mtr_report_test_skipped ($) {
}
}
sub
mtr_report_tests_not_skipped_though_disabled
($)
{
my
$tests
=
shift
;
if
(
$::opt_enable_disabled
)
{
my
@disabled_tests
=
grep
{
$_
->
{'
dont_skip_though_disabled
'}}
@$tests
;
if
(
@disabled_tests
)
{
print
"
\n
Test(s) which will be run though they are marked as disabled:
\n
";
foreach
my
$tinfo
(
sort
{
$a
->
{'
name
'}
cmp
$b
->
{'
name
'}}
@disabled_tests
)
{
printf
"
%-20s : %s
\n
",
$tinfo
->
{'
name
'},
$tinfo
->
{'
comment
'};
}
}
}
}
sub
mtr_report_test_passed
($)
{
my
$tinfo
=
shift
;
...
...
mysql-test/mysql-test-run.pl
View file @
57ced262
...
...
@@ -216,6 +216,7 @@ our $opt_extern;
our
$opt_fast
;
our
$opt_force
;
our
$opt_reorder
;
our
$opt_enable_disabled
;
our
$opt_gcov
;
our
$opt_gcov_err
;
...
...
@@ -660,6 +661,7 @@ sub command_line_setup () {
'
netware
'
=>
\
$opt_netware
,
'
old-master
'
=>
\
$opt_old_master
,
'
reorder
'
=>
\
$opt_reorder
,
'
enable-disabled
'
=>
\
$opt_enable_disabled
,
'
script-debug
'
=>
\
$opt_script_debug
,
'
sleep=i
'
=>
\
$opt_sleep
,
'
socket=s
'
=>
\
$opt_socket
,
...
...
@@ -1794,12 +1796,12 @@ sub run_suite () {
mtr_print_thick_line
();
mtr_report
("
Finding Tests in the '
$suite
' suite
");
mtr_timer_start
(
$glob_timers
,"
suite
",
60
*
$opt_suite_timeout
);
mtr_report
("
Starting Tests in the '
$suite
' suite
");
mtr_report_tests_not_skipped_though_disabled
(
$tests
);
mtr_print_header
();
foreach
my
$tinfo
(
@$tests
)
...
...
@@ -3352,6 +3354,12 @@ sub run_mysqltest ($) {
"
--port=
$master
->[0]->{'path_myport'}
"
.
"
--socket=
$master
->[0]->{'path_mysock'}
";
if
(
$opt_debug
)
{
$cmdline_mysql_client_test
.=
"
--debug=d:t:A,
$opt_vardir_trace
/log/mysql_client_test.trace
";
}
if
(
$glob_use_embedded_server
)
{
$cmdline_mysql_client_test
.=
...
...
mysql-test/r/rpl_row_create_table.result
View file @
57ced262
...
...
@@ -178,6 +178,7 @@ CREATE TABLE t8 LIKE t4;
CREATE TABLE t9 LIKE tt4;
CREATE TEMPORARY TABLE tt5 LIKE t4;
CREATE TEMPORARY TABLE tt6 LIKE tt4;
CREATE TEMPORARY TABLE tt7 SELECT 1;
**** On Master ****
SHOW CREATE TABLE t8;
Table t8
...
...
mysql-test/r/rpl_switch_stm_row_mixed.result
View file @
57ced262
...
...
@@ -142,12 +142,24 @@ select foo3();
ERROR HY000: Cannot change the binary logging format inside a stored function or trigger
select * from t1 where a="alarm";
a
insert delayed into t2 values("delay_1_");
insert delayed into t2 values(concat("delay_2_",UUID()));
Warnings:
Warning 1265 Data truncated for column 'UUID()' at row 1
insert delayed into t2 values("delay_3_"),(concat("delay_4_",UUID())),("delay_5_");
Warnings:
Warning 1265 Data truncated for column 'UUID()' at row 2
insert delayed into t2 values("delay_6_");
create table t12 (a int, b float);
insert delayed into t12 values(1,rand());
set @a=2.345;
insert delayed into t12 values(2,@a);
select count(*) from t1;
count(*)
36
select count(*) from t2;
count(*)
1
7
select count(*) from t3;
count(*)
2
...
...
@@ -157,11 +169,12 @@ count(*)
select count(*) from t5;
count(*)
58
select count(*) from t12;
count(*)
2
show binlog events 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 # Table_map 1 # table_id: # (mysql.proc)
master-bin.000001 # Write_rows 1 # table_id: # flags: STMT_END_F
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 # table_id: # (mysqltest1.t1)
...
...
@@ -178,10 +191,6 @@ master-bin.000001 # Table_map 1 # table_id: # (mysqltest1.t1)
master-bin.000001 # Write_rows 1 # table_id: # flags: STMT_END_F
master-bin.000001 # Table_map 1 # table_id: # (mysqltest1.t1)
master-bin.000001 # Write_rows 1 # table_id: # flags: STMT_END_F
master-bin.000001 # Table_map 1 # table_id: # (mysqltest1.t1)
master-bin.000001 # Write_rows 1 # table_id: # flags: STMT_END_F
master-bin.000001 # Table_map 1 # table_id: # (mysqltest1.t1)
master-bin.000001 # Write_rows 1 # table_id: # flags: STMT_END_F
master-bin.000001 # Query 1 # use `mysqltest1`; insert into t1 values("work")
master-bin.000001 # User var 1 # @`string`=_latin1 0x656D657267656E6379 COLLATE latin1_swedish_ci
master-bin.000001 # Query 1 # use `mysqltest1`; insert into t1 select @'string'
...
...
@@ -269,4 +278,17 @@ master-bin.000001 # Table_map 1 # table_id: # (mysqltest1.t1)
master-bin.000001 # Write_rows 1 # table_id: # flags: STMT_END_F
master-bin.000001 # Table_map 1 # table_id: # (mysqltest1.t1)
master-bin.000001 # Write_rows 1 # table_id: # flags: STMT_END_F
master-bin.000001 # Table_map 1 # table_id: # (mysqltest1.t2)
master-bin.000001 # Write_rows 1 # table_id: # flags: STMT_END_F
master-bin.000001 # Table_map 1 # table_id: # (mysqltest1.t2)
master-bin.000001 # Write_rows 1 # table_id: # flags: STMT_END_F
master-bin.000001 # Table_map 1 # table_id: # (mysqltest1.t2)
master-bin.000001 # Write_rows 1 # table_id: # flags: STMT_END_F
master-bin.000001 # Table_map 1 # table_id: # (mysqltest1.t2)
master-bin.000001 # Write_rows 1 # table_id: # flags: STMT_END_F
master-bin.000001 # Query 1 # use `mysqltest1`; create table t12 (a int, b float)
master-bin.000001 # Table_map 1 # table_id: # (mysqltest1.t12)
master-bin.000001 # Write_rows 1 # table_id: # flags: STMT_END_F
master-bin.000001 # Table_map 1 # table_id: # (mysqltest1.t12)
master-bin.000001 # Write_rows 1 # table_id: # flags: STMT_END_F
drop database mysqltest1;
mysql-test/t/disabled.def
View file @
57ced262
...
...
@@ -32,7 +32,6 @@ rpl_ndb_ddl : BUG#18946 result file needs update + test needs to ch
rpl_ndb_innodb2ndb : Bug #19710 Cluster replication to partition table fails on DELETE FROM statement
#rpl_ndb_log : BUG#18947 2006-03-21 tomas CRBR: order in binlog of create table and insert (on different table) not determ
rpl_ndb_myisam2ndb : Bug #19710 Cluster replication to partition table fails on DELETE FROM statement
rpl_switch_stm_row_mixed : BUG#18590 2006-03-28 brian
rpl_row_blob_innodb : BUG#18980 2006-04-10 kent Test fails randomly
rpl_row_func003 : BUG#19074 2006-13-04 andrei test failed
rpl_sp : BUG#16456 2006-02-16 jmiller
...
...
mysql-test/t/rpl_row_create_table.test
View file @
57ced262
...
...
@@ -97,6 +97,7 @@ CREATE TABLE t8 LIKE t4;
CREATE
TABLE
t9
LIKE
tt4
;
CREATE
TEMPORARY
TABLE
tt5
LIKE
t4
;
CREATE
TEMPORARY
TABLE
tt6
LIKE
tt4
;
CREATE
TEMPORARY
TABLE
tt7
SELECT
1
;
--
echo
****
On
Master
****
--
query_vertical
SHOW
CREATE
TABLE
t8
--
query_vertical
SHOW
CREATE
TABLE
t9
...
...
mysql-test/t/rpl_switch_stm_row_mixed.test
View file @
57ced262
...
...
@@ -154,6 +154,22 @@ call foo2();
select
foo3
();
select
*
from
t1
where
a
=
"alarm"
;
# Test that INSERT DELAYED works in mixed mode (BUG#20649)
insert
delayed
into
t2
values
(
"delay_1_"
);
insert
delayed
into
t2
values
(
concat
(
"delay_2_"
,
UUID
()));
insert
delayed
into
t2
values
(
"delay_3_"
),(
concat
(
"delay_4_"
,
UUID
())),(
"delay_5_"
);
insert
delayed
into
t2
values
(
"delay_6_"
);
# Test for BUG#20633 (INSERT DELAYED RAND()/user_variable does not
# replicate fine in statement-based ; we test that in mixed mode it
# works).
create
table
t12
(
a
int
,
b
float
);
insert
delayed
into
t12
values
(
1
,
rand
());
set
@
a
=
2.345
;
insert
delayed
into
t12
values
(
2
,
@
a
);
sleep
4
;
# time for the delayed inserts to reach disk
# If you want to do manual testing of the mixed mode regarding UDFs (not
# testable automatically as quite platform- and compiler-dependent),
# you just need to set the variable below to 1, and to
...
...
@@ -188,6 +204,7 @@ select count(*) from t2;
select
count
(
*
)
from
t3
;
select
count
(
*
)
from
t4
;
select
count
(
*
)
from
t5
;
select
count
(
*
)
from
t12
;
if
(
$you_want_to_test_UDF
)
{
select
count
(
*
)
from
t6
;
...
...
sql/sql_class.h
View file @
57ced262
...
...
@@ -1637,7 +1637,8 @@ public:
virtual
bool
can_rollback_data
()
{
return
1
;
}
// Needed for access from local class MY_HOOKS in prepare(), since thd is proteted.
THD
*
get_thd
(
void
)
{
return
thd
;
}
const
THD
*
get_thd
(
void
)
{
return
thd
;
}
const
HA_CREATE_INFO
*
get_create_info
()
{
return
create_info
;
};
};
#include <myisam.h>
...
...
sql/sql_insert.cc
View file @
57ced262
...
...
@@ -1287,6 +1287,11 @@ public:
thd
.
command
=
COM_DELAYED_INSERT
;
thd
.
lex
->
current_select
=
0
;
// for my_message_sql
thd
.
lex
->
sql_command
=
SQLCOM_INSERT
;
// For innodb::store_lock()
/*
Statement-based replication of INSERT DELAYED has problems with RAND()
and user vars, so in mixed mode we go to row-based.
*/
thd
.
set_current_stmt_binlog_row_based_if_mixed
();
bzero
((
char
*
)
&
thd
.
net
,
sizeof
(
thd
.
net
));
// Safety
bzero
((
char
*
)
&
table_list
,
sizeof
(
table_list
));
// Safety
...
...
@@ -2745,7 +2750,8 @@ public:
MY_HOOKS
(
select_create
*
x
)
:
ptr
(
x
)
{
}
virtual
void
do_prelock
(
TABLE
**
tables
,
uint
count
)
{
if
(
ptr
->
get_thd
()
->
current_stmt_binlog_row_based
)
if
(
ptr
->
get_thd
()
->
current_stmt_binlog_row_based
&&
!
(
ptr
->
get_create_info
()
->
options
&
HA_LEX_CREATE_TMP_TABLE
))
ptr
->
binlog_show_create_table
(
tables
,
count
);
}
...
...
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