Below is the list of changes that have just been committed into a local
5.1 repository of serg. When serg does a push these changes will
be propagated to the main repository and, within 24 hours after the
push, to the public repository.
For information on how to access the public repository
see http://dev.mysql.com/doc/mysql/en/installing-source-tree.html
ChangeSet@stripped, 2007-10-08 18:33:03+02:00, serg@stripped +7 -0
fixed uninit memory access in SET pluginvar=DEFAULT
do link_sources only once in sql/ and libmysql_r/
complain in mysql-test-run if there were innodb errors
libmysql_r/Makefile.am@stripped, 2007-10-08 18:32:59+02:00, serg@stripped +1 -0
do link_sources only once
mysql-test/lib/mtr_report.pl@stripped, 2007-10-08 18:32:59+02:00, serg@stripped +10 -4
InnoDB errors are no less important for pushbuild to monitor
than InnoDB warnings
mysql-test/r/innodb_mysql.result@stripped, 2007-10-08 18:32:59+02:00, serg@stripped +2 -0
test case for SET pluginvar=DEFAULT
mysql-test/suite/rpl/include/rpl_mixed_dml.inc@stripped, 2007-10-08 18:32:59+02:00,
serg@stripped +2 -2
use mysqltest builtins instead of --exec. Fixes a failing test too :)
mysql-test/t/innodb_mysql.test@stripped, 2007-10-08 18:32:59+02:00, serg@stripped +2 -1
test case for SET pluginvar=DEFAULT
sql/Makefile.am@stripped, 2007-10-08 18:32:59+02:00, serg@stripped +1 -0
do link_sources only once
sql/sql_plugin.cc@stripped, 2007-10-08 18:32:59+02:00, serg@stripped +8 -2
fixed uninit memory access in SET pluginvar=DEFAULT
diff -Nrup a/libmysql_r/Makefile.am b/libmysql_r/Makefile.am
--- a/libmysql_r/Makefile.am 2007-09-26 19:41:40 +02:00
+++ b/libmysql_r/Makefile.am 2007-10-08 18:32:59 +02:00
@@ -41,6 +41,7 @@ link_sources:
@LN_CP_F@ $$d/$$f $$f; \
done; \
done
+ echo timestamp > link_sources
# Don't update the files from bitkeeper
%::SCCS/s.%
diff -Nrup a/mysql-test/lib/mtr_report.pl b/mysql-test/lib/mtr_report.pl
--- a/mysql-test/lib/mtr_report.pl 2007-08-13 11:35:07 +02:00
+++ b/mysql-test/lib/mtr_report.pl 2007-10-08 18:32:59 +02:00
@@ -234,6 +234,7 @@ sub mtr_report_stats ($) {
"\\[ERROR\\]",
"^Error:", "^==.* at 0x",
"InnoDB: Warning",
+ "InnoDB: Error",
"^safe_mutex:",
"missing DBUG_RETURN",
"mysqld: Warning",
@@ -335,14 +336,19 @@ sub mtr_report_stats ($) {
/\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
+ # 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:
/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_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
# from the internal data dictiona
diff -Nrup a/mysql-test/r/innodb_mysql.result b/mysql-test/r/innodb_mysql.result
--- a/mysql-test/r/innodb_mysql.result 2007-09-28 20:14:40 +02:00
+++ b/mysql-test/r/innodb_mysql.result 2007-10-08 18:32:59 +02:00
@@ -1,3 +1,5 @@
+set global innodb_support_xa=default;
+set session innodb_support_xa=default;
SET SESSION STORAGE_ENGINE = InnoDB;
drop table if exists t1,t2,t3,t1m,t1i,t2m,t2i,t4;
create table t1 (
diff -Nrup a/mysql-test/suite/rpl/include/rpl_mixed_dml.inc
b/mysql-test/suite/rpl/include/rpl_mixed_dml.inc
--- a/mysql-test/suite/rpl/include/rpl_mixed_dml.inc 2007-08-28 02:33:52 +02:00
+++ b/mysql-test/suite/rpl/include/rpl_mixed_dml.inc 2007-10-08 18:32:59 +02:00
@@ -51,9 +51,9 @@ DELETE FROM t2 WHERE a = 2;
--echo
--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 '|' ;
---exec rm $MYSQLTEST_VARDIR/tmp/rpl_mixed.dat
+--remove_file $MYSQLTEST_VARDIR/tmp/rpl_mixed.dat
SELECT * FROM t1;
--source suite/rpl/include/rpl_mixed_check_select.inc
--source suite/rpl/include/rpl_mixed_clear_tables.inc
diff -Nrup a/mysql-test/t/innodb_mysql.test b/mysql-test/t/innodb_mysql.test
--- a/mysql-test/t/innodb_mysql.test 2006-09-18 16:55:52 +02:00
+++ b/mysql-test/t/innodb_mysql.test 2007-10-08 18:32:59 +02:00
@@ -10,5 +10,6 @@ let $engine_type= InnoDB;
let $other_engine_type= MEMORY;
# InnoDB does support FOREIGN KEYFOREIGN KEYs
let $test_foreign_keys= 1;
-
+set global innodb_support_xa=default;
+set session innodb_support_xa=default;
--source include/mix1.inc
diff -Nrup a/sql/Makefile.am b/sql/Makefile.am
--- a/sql/Makefile.am 2007-08-31 01:23:07 +02:00
+++ b/sql/Makefile.am 2007-10-08 18:32:59 +02:00
@@ -161,6 +161,7 @@ link_sources:
@LN_CP_F@ $(top_srcdir)/sql-common/my_time.c my_time.c
rm -f 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
# NOTE Built sources should depend on their sources not the tool
diff -Nrup a/sql/sql_plugin.cc b/sql/sql_plugin.cc
--- a/sql/sql_plugin.cc 2007-08-25 10:43:14 +02:00
+++ b/sql/sql_plugin.cc 2007-10-08 18:32:59 +02:00
@@ -181,6 +181,7 @@ public:
TYPELIB* plugin_var_typelib(void);
uchar* value_ptr(THD *thd, enum_var_type type, LEX_STRING *base);
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);
bool update(THD *thd, set_var *var);
};
@@ -2168,9 +2169,11 @@ static st_bookmark *register_var(const c
size= sizeof(int);
break;
case PLUGIN_VAR_LONG:
+ case PLUGIN_VAR_ENUM:
size= sizeof(long);
break;
case PLUGIN_VAR_LONGLONG:
+ case PLUGIN_VAR_SET:
size= sizeof(ulonglong);
break;
case PLUGIN_VAR_STR:
@@ -2611,6 +2614,7 @@ void sys_var_pluginvar::set_default(THD
if (is_readonly())
return;
+ pthread_mutex_lock(&LOCK_global_system_variables);
tgt= real_value_ptr(thd, type);
src= ((void **) (plugin_var + 1) + 1);
@@ -2627,12 +2631,14 @@ void sys_var_pluginvar::set_default(THD
if (!(plugin_var->flags & PLUGIN_VAR_THDLOCAL) || type == OPT_GLOBAL)
{
- pthread_mutex_lock(&LOCK_plugin);
plugin_var->update(thd, plugin_var, tgt, src);
- pthread_mutex_unlock(&LOCK_plugin);
+ pthread_mutex_unlock(&LOCK_global_system_variables);
}
else
+ {
+ pthread_mutex_unlock(&LOCK_global_system_variables);
plugin_var->update(thd, plugin_var, tgt, src);
+ }
}
| Thread |
|---|
| • bk commit into 5.1 tree (serg:1.2575) | Sergei Golubchik | 8 Oct |