Commit c38cfd0b authored by serg@janus.mylan's avatar serg@janus.mylan

Merge bk-internal.mysql.com:/home/bk/mysql-5.1

into  janus.mylan:/usr/home/serg/Abk/mysql-5.1
parents b5e97b4b dd1f11d7
...@@ -3004,3 +3004,9 @@ win/vs71cache.txt ...@@ -3004,3 +3004,9 @@ win/vs71cache.txt
win/vs8cache.txt win/vs8cache.txt
zlib/*.ds? zlib/*.ds?
zlib/*.vcproj zlib/*.vcproj
libmysql_r/client_settings.h
libmysql_r/link_sources
libmysqld/scheduler.cc
libmysqld/sql_connect.cc
libmysqld/sql_tablespace.cc
sql/link_sources
...@@ -41,6 +41,7 @@ link_sources: ...@@ -41,6 +41,7 @@ link_sources:
@LN_CP_F@ $$d/$$f $$f; \ @LN_CP_F@ $$d/$$f $$f; \
done; \ done; \
done done
echo timestamp > link_sources
# Don't update the files from bitkeeper # Don't update the files from bitkeeper
%::SCCS/s.% %::SCCS/s.%
...@@ -234,6 +234,7 @@ sub mtr_report_stats ($) { ...@@ -234,6 +234,7 @@ sub mtr_report_stats ($) {
"\\[ERROR\\]", "\\[ERROR\\]",
"^Error:", "^==.* at 0x", "^Error:", "^==.* at 0x",
"InnoDB: Warning", "InnoDB: Warning",
"InnoDB: Error",
"^safe_mutex:", "^safe_mutex:",
"missing DBUG_RETURN", "missing DBUG_RETURN",
"mysqld: Warning", "mysqld: Warning",
...@@ -335,15 +336,20 @@ sub mtr_report_stats ($) { ...@@ -335,15 +336,20 @@ sub mtr_report_stats ($) {
/\QError in Log_event::read_log_event(): 'Sanity check failed', data_len: 258, event_type: 49\E/ or /\QError in Log_event::read_log_event(): 'Sanity check failed', data_len: 258, event_type: 49\E/ or
/Statement is not safe to log in statement format/ or /Statement is not safe to log in statement format/ or
# test case for Bug#bug29807 copies a stray frm into database
/InnoDB: Error: table `test`.`bug29807` does not exist in the InnoDB internal/ or
/Cannot find table test\/bug29807 from the internal data dictionary/ or
# innodb foreign key tests that fail in ALTER or RENAME produce this
/InnoDB: Error: in ALTER TABLE `test`.`t[12]`/ or
/InnoDB: Error: in RENAME TABLE table `test`.`t1`/ or
/InnoDB: Error: table `test`.`t[12]` does not exist in the InnoDB internal/ or
# Test case for Bug#14233 produces the following warnings: # Test case for Bug#14233 produces the following warnings:
/Stored routine 'test'.'bug14233_1': invalid value in column mysql.proc/ or /Stored routine 'test'.'bug14233_1': invalid value in column mysql.proc/ or
/Stored routine 'test'.'bug14233_2': invalid value in column mysql.proc/ or /Stored routine 'test'.'bug14233_2': invalid value in column mysql.proc/ or
/Stored routine 'test'.'bug14233_3': invalid value in column mysql.proc/ or /Stored routine 'test'.'bug14233_3': invalid value in column mysql.proc/ or
# BUG#29807 - innodb_mysql.test: Cannot find table test/t2
# from the internal data dictionary
/Cannot find table test\/bug29807 from the internal data dictionary/ or
# BUG#29839 - lowercase_table3.test: Cannot find table test/T1 # BUG#29839 - lowercase_table3.test: Cannot find table test/T1
# from the internal data dictiona # from the internal data dictiona
/Cannot find table test\/BUG29839 from the internal data dictionary/ /Cannot find table test\/BUG29839 from the internal data dictionary/
......
set global innodb_support_xa=default;
set session innodb_support_xa=default;
SET SESSION STORAGE_ENGINE = InnoDB; SET SESSION STORAGE_ENGINE = InnoDB;
drop table if exists t1,t2,t3,t1m,t1i,t2m,t2i,t4; drop table if exists t1,t2,t3,t1m,t1i,t2m,t2i,t4;
drop procedure if exists p1; drop procedure if exists p1;
......
...@@ -51,9 +51,9 @@ DELETE FROM t2 WHERE a = 2; ...@@ -51,9 +51,9 @@ DELETE FROM t2 WHERE a = 2;
--echo --echo
--echo ******************** LOAD DATA INFILE ******************** --echo ******************** LOAD DATA INFILE ********************
--exec cp ./suite/rpl/data/rpl_mixed.dat $MYSQLTEST_VARDIR/tmp/ --copy_file ./suite/rpl/data/rpl_mixed.dat $MYSQLTEST_VARDIR/tmp/rpl_mixed.dat
LOAD DATA INFILE '../tmp/rpl_mixed.dat' INTO TABLE t1 FIELDS TERMINATED BY '|' ; LOAD DATA INFILE '../tmp/rpl_mixed.dat' INTO TABLE t1 FIELDS TERMINATED BY '|' ;
--exec rm $MYSQLTEST_VARDIR/tmp/rpl_mixed.dat --remove_file $MYSQLTEST_VARDIR/tmp/rpl_mixed.dat
SELECT * FROM t1; SELECT * FROM t1;
--source suite/rpl/include/rpl_mixed_check_select.inc --source suite/rpl/include/rpl_mixed_check_select.inc
--source suite/rpl/include/rpl_mixed_clear_tables.inc --source suite/rpl/include/rpl_mixed_clear_tables.inc
......
...@@ -10,5 +10,6 @@ let $engine_type= InnoDB; ...@@ -10,5 +10,6 @@ let $engine_type= InnoDB;
let $other_engine_type= MEMORY; let $other_engine_type= MEMORY;
# InnoDB does support FOREIGN KEYFOREIGN KEYs # InnoDB does support FOREIGN KEYFOREIGN KEYs
let $test_foreign_keys= 1; let $test_foreign_keys= 1;
set global innodb_support_xa=default;
set session innodb_support_xa=default;
--source include/mix1.inc --source include/mix1.inc
...@@ -161,6 +161,7 @@ link_sources: ...@@ -161,6 +161,7 @@ link_sources:
@LN_CP_F@ $(top_srcdir)/sql-common/my_time.c my_time.c @LN_CP_F@ $(top_srcdir)/sql-common/my_time.c my_time.c
rm -f my_user.c rm -f my_user.c
@LN_CP_F@ $(top_srcdir)/sql-common/my_user.c my_user.c @LN_CP_F@ $(top_srcdir)/sql-common/my_user.c my_user.c
echo timestamp > link_sources
# This generates lex_hash.h # This generates lex_hash.h
# NOTE Built sources should depend on their sources not the tool # NOTE Built sources should depend on their sources not the tool
......
...@@ -181,6 +181,7 @@ class sys_var_pluginvar: public sys_var ...@@ -181,6 +181,7 @@ class sys_var_pluginvar: public sys_var
TYPELIB* plugin_var_typelib(void); TYPELIB* plugin_var_typelib(void);
uchar* value_ptr(THD *thd, enum_var_type type, LEX_STRING *base); uchar* value_ptr(THD *thd, enum_var_type type, LEX_STRING *base);
bool check(THD *thd, set_var *var); bool check(THD *thd, set_var *var);
bool check_default(enum_var_type type) { return is_readonly(); }
void set_default(THD *thd, enum_var_type type); void set_default(THD *thd, enum_var_type type);
bool update(THD *thd, set_var *var); bool update(THD *thd, set_var *var);
}; };
...@@ -2168,9 +2169,11 @@ static st_bookmark *register_var(const char *plugin, const char *name, ...@@ -2168,9 +2169,11 @@ static st_bookmark *register_var(const char *plugin, const char *name,
size= sizeof(int); size= sizeof(int);
break; break;
case PLUGIN_VAR_LONG: case PLUGIN_VAR_LONG:
case PLUGIN_VAR_ENUM:
size= sizeof(long); size= sizeof(long);
break; break;
case PLUGIN_VAR_LONGLONG: case PLUGIN_VAR_LONGLONG:
case PLUGIN_VAR_SET:
size= sizeof(ulonglong); size= sizeof(ulonglong);
break; break;
case PLUGIN_VAR_STR: case PLUGIN_VAR_STR:
...@@ -2611,6 +2614,7 @@ void sys_var_pluginvar::set_default(THD *thd, enum_var_type type) ...@@ -2611,6 +2614,7 @@ void sys_var_pluginvar::set_default(THD *thd, enum_var_type type)
if (is_readonly()) if (is_readonly())
return; return;
pthread_mutex_lock(&LOCK_global_system_variables);
tgt= real_value_ptr(thd, type); tgt= real_value_ptr(thd, type);
src= ((void **) (plugin_var + 1) + 1); src= ((void **) (plugin_var + 1) + 1);
...@@ -2627,12 +2631,14 @@ void sys_var_pluginvar::set_default(THD *thd, enum_var_type type) ...@@ -2627,12 +2631,14 @@ void sys_var_pluginvar::set_default(THD *thd, enum_var_type type)
if (!(plugin_var->flags & PLUGIN_VAR_THDLOCAL) || type == OPT_GLOBAL) if (!(plugin_var->flags & PLUGIN_VAR_THDLOCAL) || type == OPT_GLOBAL)
{ {
pthread_mutex_lock(&LOCK_plugin);
plugin_var->update(thd, plugin_var, tgt, src); plugin_var->update(thd, plugin_var, tgt, src);
pthread_mutex_unlock(&LOCK_plugin); pthread_mutex_unlock(&LOCK_global_system_variables);
} }
else else
{
pthread_mutex_unlock(&LOCK_global_system_variables);
plugin_var->update(thd, plugin_var, tgt, src); plugin_var->update(thd, plugin_var, tgt, src);
}
} }
......
...@@ -11930,7 +11930,7 @@ static void test_bug5194() ...@@ -11930,7 +11930,7 @@ static void test_bug5194()
MAX_PARAM_COUNT * CHARS_PER_PARAM + 1); MAX_PARAM_COUNT * CHARS_PER_PARAM + 1);
param_str= (char*) malloc(COLUMN_COUNT * CHARS_PER_PARAM); param_str= (char*) malloc(COLUMN_COUNT * CHARS_PER_PARAM);
if (bind == 0 || query == 0 || param_str == 0) if (my_bind == 0 || query == 0 || param_str == 0)
{ {
fprintf(stderr, "Can't allocate enough memory for query structs\n"); fprintf(stderr, "Can't allocate enough memory for query structs\n");
if (my_bind) if (my_bind)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment