mirror of
https://github.com/MariaDB/server.git
synced 2025-07-30 16:24:05 +03:00
fixed 'STARTING BY' in replication
mysql-test/r/rpl_loaddata.result: added test for 'STARTING BY' mysql-test/std_data/rpl_loaddata2.dat: added test for 'STARTING BY' mysql-test/t/rpl_loaddata.test: added test for 'STARTING BY' sql/log_event.cc: fixed 'STARTING BY'
This commit is contained in:
@ -7,7 +7,7 @@ slave start;
|
|||||||
create table t1(a int not null auto_increment, b int, primary key(a) );
|
create table t1(a int not null auto_increment, b int, primary key(a) );
|
||||||
load data infile '../../std_data/rpl_loaddata.dat' into table t1;
|
load data infile '../../std_data/rpl_loaddata.dat' into table t1;
|
||||||
create temporary table t2 (day date,id int(9),category enum('a','b','c'),name varchar(60));
|
create temporary table t2 (day date,id int(9),category enum('a','b','c'),name varchar(60));
|
||||||
load data infile '../../std_data/rpl_loaddata2.dat' into table t2 fields terminated by ',' optionally enclosed by '%' escaped by '@' lines terminated by '\n##\n' ignore 1 lines;
|
load data infile '../../std_data/rpl_loaddata2.dat' into table t2 fields terminated by ',' optionally enclosed by '%' escaped by '@' lines terminated by '\n##\n' starting by '>' ignore 1 lines;
|
||||||
create table t3 (day date,id int(9),category enum('a','b','c'),name varchar(60));
|
create table t3 (day date,id int(9),category enum('a','b','c'),name varchar(60));
|
||||||
insert into t3 select * from t2;
|
insert into t3 select * from t2;
|
||||||
select * from t1;
|
select * from t1;
|
||||||
|
@ -1,8 +1,8 @@
|
|||||||
2003-01-21,6328,%a%,%aaaaa%
|
>2003-01-21,6328,%a%,%aaaaa%
|
||||||
##
|
##
|
||||||
2003-02-22,2461,b,%a a a @@ @% @b ' " a%
|
>2003-02-22,2461,b,%a a a @@ @% @b ' " a%
|
||||||
##
|
##
|
||||||
2003-03-22,2161,%c%,%asdf%
|
>2003-03-22,2161,%c%,%asdf%
|
||||||
##
|
##
|
||||||
2003-04-22,2416,%a%,%bbbbb%
|
>2003-04-22,2416,%a%,%bbbbb%
|
||||||
##
|
##
|
||||||
|
@ -10,8 +10,7 @@ create table t1(a int not null auto_increment, b int, primary key(a) );
|
|||||||
load data infile '../../std_data/rpl_loaddata.dat' into table t1;
|
load data infile '../../std_data/rpl_loaddata.dat' into table t1;
|
||||||
|
|
||||||
create temporary table t2 (day date,id int(9),category enum('a','b','c'),name varchar(60));
|
create temporary table t2 (day date,id int(9),category enum('a','b','c'),name varchar(60));
|
||||||
#load data infile '../../std_data/rpl_loaddata2.dat' into table t2 fields terminated by ',' optionaly enclosed by '%' escaped by '@' lines terminated by '\n%%\n' ignore 1 lines;
|
load data infile '../../std_data/rpl_loaddata2.dat' into table t2 fields terminated by ',' optionally enclosed by '%' escaped by '@' lines terminated by '\n##\n' starting by '>' ignore 1 lines;
|
||||||
load data infile '../../std_data/rpl_loaddata2.dat' into table t2 fields terminated by ',' optionally enclosed by '%' escaped by '@' lines terminated by '\n##\n' ignore 1 lines;
|
|
||||||
|
|
||||||
create table t3 (day date,id int(9),category enum('a','b','c'),name varchar(60));
|
create table t3 (day date,id int(9),category enum('a','b','c'),name varchar(60));
|
||||||
insert into t3 select * from t2;
|
insert into t3 select * from t2;
|
||||||
|
@ -309,15 +309,19 @@ void Load_log_event::pack_info(String* packet)
|
|||||||
pretty_print_str(&tmp, sql_ex.escaped, sql_ex.escaped_len);
|
pretty_print_str(&tmp, sql_ex.escaped, sql_ex.escaped_len);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bool line_lexem_added= false;
|
||||||
if (sql_ex.line_term_len)
|
if (sql_ex.line_term_len)
|
||||||
{
|
{
|
||||||
tmp.append(" LINES TERMINATED BY ");
|
tmp.append(" LINES TERMINATED BY ");
|
||||||
pretty_print_str(&tmp, sql_ex.line_term, sql_ex.line_term_len);
|
pretty_print_str(&tmp, sql_ex.line_term, sql_ex.line_term_len);
|
||||||
|
line_lexem_added= true;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (sql_ex.line_start_len)
|
if (sql_ex.line_start_len)
|
||||||
{
|
{
|
||||||
tmp.append(" LINES STARTING BY ");
|
if (!line_lexem_added)
|
||||||
|
tmp.append(" LINES");
|
||||||
|
tmp.append(" STARTING BY ");
|
||||||
pretty_print_str(&tmp, sql_ex.line_start, sql_ex.line_start_len);
|
pretty_print_str(&tmp, sql_ex.line_start, sql_ex.line_start_len);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1299,15 +1303,19 @@ void Load_log_event::print(FILE* file, bool short_form, char* last_db)
|
|||||||
pretty_print_str(file, sql_ex.escaped, sql_ex.escaped_len);
|
pretty_print_str(file, sql_ex.escaped, sql_ex.escaped_len);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bool line_lexem_added= false;
|
||||||
if (sql_ex.line_term)
|
if (sql_ex.line_term)
|
||||||
{
|
{
|
||||||
fprintf(file," LINES TERMINATED BY ");
|
fprintf(file," LINES TERMINATED BY ");
|
||||||
pretty_print_str(file, sql_ex.line_term, sql_ex.line_term_len);
|
pretty_print_str(file, sql_ex.line_term, sql_ex.line_term_len);
|
||||||
|
line_lexem_added= true;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (sql_ex.line_start)
|
if (sql_ex.line_start)
|
||||||
{
|
{
|
||||||
fprintf(file," LINES STARTING BY ");
|
if (!line_lexem_added)
|
||||||
|
fprintf(file," LINES");
|
||||||
|
fprintf(file," STARTING BY ");
|
||||||
pretty_print_str(file, sql_ex.line_start, sql_ex.line_start_len);
|
pretty_print_str(file, sql_ex.line_start, sql_ex.line_start_len);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user