mirror of
https://github.com/MariaDB/server.git
synced 2025-07-30 16:24:05 +03:00
Portability fixes & fixing of test suite
mysql-test/r/func_math.result: Updated tests after merge with 3.23 mysql-test/r/multi_update.result: Fixed not portable test mysql-test/r/mysqlbinlog.result: Fixed test after push without doing 'make test' mysql-test/t/multi_update.test: Fixed not portable test sql/sql_parse.cc: Don't use static inline, as this is not portable
This commit is contained in:
@ -59,9 +59,12 @@ ASIN(0.8+0.2)
|
|||||||
SELECT ASIN(1.2-0.2);
|
SELECT ASIN(1.2-0.2);
|
||||||
ASIN(1.2-0.2)
|
ASIN(1.2-0.2)
|
||||||
1.570796
|
1.570796
|
||||||
|
select floor(log(4)/log(2));
|
||||||
floor(log(4)/log(2))
|
floor(log(4)/log(2))
|
||||||
2
|
2
|
||||||
|
select floor(log(8)/log(2));
|
||||||
floor(log(8)/log(2))
|
floor(log(8)/log(2))
|
||||||
3
|
3
|
||||||
|
select floor(log(16)/log(2));
|
||||||
floor(log(16)/log(2))
|
floor(log(16)/log(2))
|
||||||
4
|
4
|
||||||
|
@ -386,17 +386,17 @@ SELECT * from t2;
|
|||||||
a
|
a
|
||||||
1
|
1
|
||||||
DROP TABLE t1,t2;
|
DROP TABLE t1,t2;
|
||||||
create table `t1` ( `p_id` int(10) unsigned NOT NULL auto_increment, `p_code` varchar(20) NOT NULL default '', `p_created` datetime NOT NULL default '0000-00-00 00:00:00', `p_active` tinyint(1) unsigned NOT NULL default '1', PRIMARY KEY (`p_id`) );
|
create table `t1` (`p_id` int(10) unsigned NOT NULL auto_increment, `p_code` varchar(20) NOT NULL default '', `p_active` tinyint(1) unsigned NOT NULL default '1', PRIMARY KEY (`p_id`) );
|
||||||
create table `t2` ( `c2_id` int(10) unsigned NULL auto_increment, `c2_p_id` int(10) unsigned NOT NULL default '0', `c2_note` text NOT NULL, `c2_created` datetime NOT NULL default '0000-00-00 00:00:00', `c2_active` tinyint(1) unsigned NOT NULL default '1', PRIMARY KEY (`c2_id`), KEY `c2_p_id` (`c2_p_id`) );
|
create table `t2` (`c2_id` int(10) unsigned NULL auto_increment, `c2_p_id` int(10) unsigned NOT NULL default '0', `c2_note` text NOT NULL, `c2_active` tinyint(1) unsigned NOT NULL default '1', PRIMARY KEY (`c2_id`), KEY `c2_p_id` (`c2_p_id`) );
|
||||||
insert into t1 values (0,'A01-Comp',now(),1);
|
insert into t1 values (0,'A01-Comp',1);
|
||||||
insert into t1 values (0,'B01-Comp',now(),1);
|
insert into t1 values (0,'B01-Comp',1);
|
||||||
insert into t2 values (0,1,'A Note',now(),1);
|
insert into t2 values (0,1,'A Note',1);
|
||||||
update t1 left join t2 on p_id = c2_p_id set c2_note = 'asdf-1' where p_id = 2;
|
update t1 left join t2 on p_id = c2_p_id set c2_note = 'asdf-1' where p_id = 2;
|
||||||
select * from t1;
|
select * from t1;
|
||||||
p_id p_code p_created p_active
|
p_id p_code p_active
|
||||||
1 A01-Comp 2004-03-11 23:21:29 1
|
1 A01-Comp 1
|
||||||
2 B01-Comp 2004-03-11 23:21:29 1
|
2 B01-Comp 1
|
||||||
select * from t2;
|
select * from t2;
|
||||||
c2_id c2_p_id c2_note c2_created c2_active
|
c2_id c2_p_id c2_note c2_active
|
||||||
1 1 A Note 2004-03-11 23:21:29 1
|
1 1 A Note 1
|
||||||
drop table t1, t2;
|
drop table t1, t2;
|
||||||
|
@ -14,6 +14,7 @@ insert into t1 values ("Alas");
|
|||||||
flush logs;
|
flush logs;
|
||||||
|
|
||||||
--- Local --
|
--- Local --
|
||||||
|
/*!40019 SET @@session.max_insert_delayed_threads=0*/;
|
||||||
use test;
|
use test;
|
||||||
SET TIMESTAMP=1000000000;
|
SET TIMESTAMP=1000000000;
|
||||||
create table t1 (word varchar(20));
|
create table t1 (word varchar(20));
|
||||||
@ -31,19 +32,23 @@ LOAD DATA LOCAL INFILE 'MYSQL_TEST_DIR/var/tmp/words.dat-4-0' INTO TABLE `t1` FI
|
|||||||
LOAD DATA LOCAL INFILE 'MYSQL_TEST_DIR/var/tmp/words.dat-5-0' INTO TABLE `t1` FIELDS TERMINATED BY '\t' ENCLOSED BY '' ESCAPED BY '\\' LINES TERMINATED BY '\n' STARTING BY '' (word);
|
LOAD DATA LOCAL INFILE 'MYSQL_TEST_DIR/var/tmp/words.dat-5-0' INTO TABLE `t1` FIELDS TERMINATED BY '\t' ENCLOSED BY '' ESCAPED BY '\\' LINES TERMINATED BY '\n' STARTING BY '' (word);
|
||||||
|
|
||||||
--- Broken LOAD DATA --
|
--- Broken LOAD DATA --
|
||||||
|
/*!40019 SET @@session.max_insert_delayed_threads=0*/;
|
||||||
use test;
|
use test;
|
||||||
SET TIMESTAMP=1000000000;
|
SET TIMESTAMP=1000000000;
|
||||||
insert into t1 values ("Alas");
|
insert into t1 values ("Alas");
|
||||||
|
|
||||||
--- --database --
|
--- --database --
|
||||||
|
/*!40019 SET @@session.max_insert_delayed_threads=0*/;
|
||||||
SET INSERT_ID=1;
|
SET INSERT_ID=1;
|
||||||
|
|
||||||
--- --position --
|
--- --position --
|
||||||
|
/*!40019 SET @@session.max_insert_delayed_threads=0*/;
|
||||||
use test;
|
use test;
|
||||||
SET TIMESTAMP=1000000000;
|
SET TIMESTAMP=1000000000;
|
||||||
insert into t1 values ("Alas");
|
insert into t1 values ("Alas");
|
||||||
|
|
||||||
--- Remote --
|
--- Remote --
|
||||||
|
/*!40019 SET @@session.max_insert_delayed_threads=0*/;
|
||||||
use test;
|
use test;
|
||||||
SET TIMESTAMP=1000000000;
|
SET TIMESTAMP=1000000000;
|
||||||
create table t1 (word varchar(20));
|
create table t1 (word varchar(20));
|
||||||
@ -64,14 +69,17 @@ SET TIMESTAMP=1000000000;
|
|||||||
insert into t1 values ("Alas");
|
insert into t1 values ("Alas");
|
||||||
|
|
||||||
--- Broken LOAD DATA --
|
--- Broken LOAD DATA --
|
||||||
|
/*!40019 SET @@session.max_insert_delayed_threads=0*/;
|
||||||
use test;
|
use test;
|
||||||
SET TIMESTAMP=1000000000;
|
SET TIMESTAMP=1000000000;
|
||||||
insert into t1 values ("Alas");
|
insert into t1 values ("Alas");
|
||||||
|
|
||||||
--- --database --
|
--- --database --
|
||||||
|
/*!40019 SET @@session.max_insert_delayed_threads=0*/;
|
||||||
SET INSERT_ID=1;
|
SET INSERT_ID=1;
|
||||||
|
|
||||||
--- --position --
|
--- --position --
|
||||||
|
/*!40019 SET @@session.max_insert_delayed_threads=0*/;
|
||||||
use test;
|
use test;
|
||||||
SET TIMESTAMP=1000000000;
|
SET TIMESTAMP=1000000000;
|
||||||
insert into t1 values ("Alas");
|
insert into t1 values ("Alas");
|
||||||
|
@ -330,11 +330,11 @@ DROP TABLE t1,t2;
|
|||||||
# Test update with const tables
|
# Test update with const tables
|
||||||
#
|
#
|
||||||
|
|
||||||
create table `t1` ( `p_id` int(10) unsigned NOT NULL auto_increment, `p_code` varchar(20) NOT NULL default '', `p_created` datetime NOT NULL default '0000-00-00 00:00:00', `p_active` tinyint(1) unsigned NOT NULL default '1', PRIMARY KEY (`p_id`) );
|
create table `t1` (`p_id` int(10) unsigned NOT NULL auto_increment, `p_code` varchar(20) NOT NULL default '', `p_active` tinyint(1) unsigned NOT NULL default '1', PRIMARY KEY (`p_id`) );
|
||||||
create table `t2` ( `c2_id` int(10) unsigned NULL auto_increment, `c2_p_id` int(10) unsigned NOT NULL default '0', `c2_note` text NOT NULL, `c2_created` datetime NOT NULL default '0000-00-00 00:00:00', `c2_active` tinyint(1) unsigned NOT NULL default '1', PRIMARY KEY (`c2_id`), KEY `c2_p_id` (`c2_p_id`) );
|
create table `t2` (`c2_id` int(10) unsigned NULL auto_increment, `c2_p_id` int(10) unsigned NOT NULL default '0', `c2_note` text NOT NULL, `c2_active` tinyint(1) unsigned NOT NULL default '1', PRIMARY KEY (`c2_id`), KEY `c2_p_id` (`c2_p_id`) );
|
||||||
insert into t1 values (0,'A01-Comp',now(),1);
|
insert into t1 values (0,'A01-Comp',1);
|
||||||
insert into t1 values (0,'B01-Comp',now(),1);
|
insert into t1 values (0,'B01-Comp',1);
|
||||||
insert into t2 values (0,1,'A Note',now(),1);
|
insert into t2 values (0,1,'A Note',1);
|
||||||
update t1 left join t2 on p_id = c2_p_id set c2_note = 'asdf-1' where p_id = 2;
|
update t1 left join t2 on p_id = c2_p_id set c2_note = 'asdf-1' where p_id = 2;
|
||||||
select * from t1;
|
select * from t1;
|
||||||
select * from t2;
|
select * from t2;
|
||||||
|
@ -65,7 +65,7 @@ static bool create_total_list(THD *thd, LEX *lex,
|
|||||||
TABLE_LIST **result, bool skip_first);
|
TABLE_LIST **result, bool skip_first);
|
||||||
static bool check_one_table_access(THD *thd, ulong want_access,
|
static bool check_one_table_access(THD *thd, ulong want_access,
|
||||||
TABLE_LIST *table, bool no_errors);
|
TABLE_LIST *table, bool no_errors);
|
||||||
static inline bool all_tables_not_ok(THD *thd, TABLE_LIST *tables);
|
|
||||||
|
|
||||||
const char *any_db="*any*"; // Special symbol for check_access
|
const char *any_db="*any*"; // Special symbol for check_access
|
||||||
|
|
||||||
@ -108,6 +108,7 @@ static void unlock_locked_tables(THD *thd)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
static bool end_active_trans(THD *thd)
|
static bool end_active_trans(THD *thd)
|
||||||
{
|
{
|
||||||
int error=0;
|
int error=0;
|
||||||
@ -123,6 +124,14 @@ static bool end_active_trans(THD *thd)
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
inline bool all_tables_not_ok(THD *thd, TABLE_LIST *tables)
|
||||||
|
{
|
||||||
|
return (table_rules_on && tables && !tables_ok(thd,tables) &&
|
||||||
|
((thd->lex.sql_command != SQLCOM_DELETE_MULTI) ||
|
||||||
|
!tables_ok(thd,(TABLE_LIST *)thd->lex.auxilliary_table_list.first)));
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
static HASH hash_user_connections;
|
static HASH hash_user_connections;
|
||||||
extern pthread_mutex_t LOCK_user_conn;
|
extern pthread_mutex_t LOCK_user_conn;
|
||||||
|
|
||||||
@ -2967,12 +2976,6 @@ void mysql_init_multi_delete(LEX *lex)
|
|||||||
lex->select->table_list.save_and_clear(&lex->auxilliary_table_list);
|
lex->select->table_list.save_and_clear(&lex->auxilliary_table_list);
|
||||||
}
|
}
|
||||||
|
|
||||||
static inline bool all_tables_not_ok(THD *thd, TABLE_LIST *tables)
|
|
||||||
{
|
|
||||||
return (table_rules_on && tables && !tables_ok(thd,tables) &&
|
|
||||||
((thd->lex.sql_command != SQLCOM_DELETE_MULTI) ||
|
|
||||||
!tables_ok(thd,(TABLE_LIST *)thd->lex.auxilliary_table_list.first)));
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
When you modify mysql_parse(), you may need to mofify
|
When you modify mysql_parse(), you may need to mofify
|
||||||
|
Reference in New Issue
Block a user