Loading acinclude.m4 +8 −0 Original line number Diff line number Diff line Loading @@ -1817,6 +1817,14 @@ AC_DEFUN([MYSQL_CHECK_NDBCLUSTER], [ ndbcluster_system_libs="" ndb_mgmclient_libs="\$(top_builddir)/ndb/src/mgmclient/libndbmgmclient.la" MYSQL_CHECK_NDB_OPTIONS # libndbclient versioning when linked with GNU ld. if $LD --version 2>/dev/null|grep -q GNU; then NDB_LD_VERSION_SCRIPT="-Wl,--version-script=\$(top_builddir)/ndb/src/libndb.ver" AC_CONFIG_FILES(ndb/src/libndb.ver) fi AC_SUBST(NDB_LD_VERSION_SCRIPT) ;; * ) AC_MSG_RESULT([Not using NDB Cluster]) Loading configure.in +0 −7 Original line number Diff line number Diff line Loading @@ -449,13 +449,6 @@ if $LD --version 2>/dev/null|grep -q GNU; then fi AC_SUBST(LD_VERSION_SCRIPT) # libndbclient versioning when linked with GNU ld. if $LD --version 2>/dev/null|grep -q GNU; then NDB_LD_VERSION_SCRIPT="-Wl,--version-script=\$(top_builddir)/ndb/src/libndb.ver" AC_CONFIG_FILES(ndb/src/libndb.ver) fi AC_SUBST(NDB_LD_VERSION_SCRIPT) # Avoid bug in fcntl on some versions of linux Loading innobase/dict/dict0dict.c +16 −13 Original line number Diff line number Diff line Loading @@ -27,6 +27,9 @@ Created 1/8/1996 Heikki Tuuri #include "que0que.h" #include "rem0cmp.h" /* Implement isspace() in a locale-independent way. (Bug #24299) */ #define ib_isspace(c) ((char) (c) && strchr(" \v\f\t\r\n", c)) dict_sys_t* dict_sys = NULL; /* the dictionary system */ rw_lock_t dict_operation_lock; /* table create, drop, etc. reserve Loading Loading @@ -2374,7 +2377,7 @@ dict_accept( *success = FALSE; while (isspace(*ptr)) { while (ib_isspace(*ptr)) { ptr++; } Loading Loading @@ -2419,7 +2422,7 @@ dict_scan_id( *id = NULL; while (isspace(*ptr)) { while (ib_isspace(*ptr)) { ptr++; } Loading Loading @@ -2450,7 +2453,7 @@ dict_scan_id( len++; } } else { while (!isspace(*ptr) && *ptr != '(' && *ptr != ')' while (!ib_isspace(*ptr) && *ptr != '(' && *ptr != ')' && (accept_also_dot || *ptr != '.') && *ptr != ',' && *ptr != '\0') { Loading Loading @@ -2480,12 +2483,12 @@ dict_scan_id( if (heap && !quote) { /* EMS MySQL Manager sometimes adds characters 0xA0 (in latin1, a 'non-breakable space') to the end of a table name. But isspace(0xA0) is not true, which confuses our foreign key parser. After the UTF-8 conversion in ha_innodb.cc, bytes 0xC2 and 0xA0 are at the end of the string. After the UTF-8 conversion in ha_innodb.cc, bytes 0xC2 and 0xA0 are at the end of the string, and ib_isspace() does not work for multi-byte UTF-8 characters. TODO: we should lex the string using thd->charset_info, and my_isspace(). Only after that, convert id names to UTF-8. */ In MySQL 5.1 we lex the string using thd->charset_info, and my_isspace(). This workaround is not needed there. */ b = (byte*)(*id); id_len = strlen(b); Loading Loading @@ -2956,11 +2959,11 @@ dict_create_foreign_constraints_low( ut_a(success); if (!isspace(*ptr) && *ptr != '"' && *ptr != '`') { if (!ib_isspace(*ptr) && *ptr != '"' && *ptr != '`') { goto loop; } while (isspace(*ptr)) { while (ib_isspace(*ptr)) { ptr++; } Loading Loading @@ -2990,7 +2993,7 @@ dict_create_foreign_constraints_low( goto loop; } if (!isspace(*ptr)) { if (!ib_isspace(*ptr)) { goto loop; } Loading Loading @@ -3078,7 +3081,7 @@ dict_create_foreign_constraints_low( } ptr = dict_accept(ptr, "REFERENCES", &success); if (!success || !isspace(*ptr)) { if (!success || !ib_isspace(*ptr)) { dict_foreign_report_syntax_err(name, start_of_latest_foreign, ptr); return(DB_CANNOT_ADD_CONSTRAINT); Loading Loading @@ -3461,7 +3464,7 @@ dict_foreign_parse_drop_constraints( ptr = dict_accept(ptr, "DROP", &success); if (!isspace(*ptr)) { if (!ib_isspace(*ptr)) { goto loop; } Loading mysql-test/lib/mtr_cases.pl +3 −2 Original line number Diff line number Diff line Loading @@ -537,6 +537,8 @@ sub collect_one_test_case($$$$$$$) { $tinfo->{'comment'}= "No ndbcluster tests(--skip-ndbcluster)"; return; } # Ndb tests run with two mysqld masters $tinfo->{'master_num'}= 2; } else { Loading @@ -552,7 +554,7 @@ sub collect_one_test_case($$$$$$$) { if ( $tinfo->{'innodb_test'} ) { # This is a test that need inndob # This is a test that need innodb if ( $::mysqld_variables{'innodb'} eq "FALSE" ) { # innodb is not supported, skip it Loading @@ -578,7 +580,6 @@ our @tags= ["include/have_debug.inc", "need_debug", 1], ["include/have_ndb.inc", "ndb_test", 1], ["include/have_ndb_extra.inc", "ndb_extra", 1], ["include/have_multi_ndb.inc", "master_num", 2], ["require_manager", "require_manager", 1], ); Loading mysql-test/mysql-test-run.pl +8 −0 Original line number Diff line number Diff line Loading @@ -301,6 +301,8 @@ our %mysqld_variables; my $source_dist= 0; our $opt_max_save_core= 5; my $num_saved_cores= 0; # Number of core files saved in vardir/log/ so far. ###################################################################### # Loading Loading @@ -589,6 +591,7 @@ sub command_line_setup () { 'strace-client' => \$opt_strace_client, 'master-binary=s' => \$exe_master_mysqld, 'slave-binary=s' => \$exe_slave_mysqld, 'max-save-core=i' => \$opt_max_save_core, # Coverage, profiling etc 'gcov' => \$opt_gcov, Loading Loading @@ -3301,10 +3304,12 @@ sub save_files_before_restore($$) { # Look for core files foreach my $core_file ( glob("$data_dir/core*") ) { last if $opt_max_save_core > 0 && $num_saved_cores >= $opt_max_save_core; my $core_name= basename($core_file); mtr_report("Saving $core_name"); mkdir($save_name) if ! -d $save_name; rename("$core_file", "$save_name/$core_name"); ++$num_saved_cores; } } Loading Loading @@ -4897,6 +4902,9 @@ Options for debugging the product master-binary=PATH Specify the master "mysqld" to use slave-binary=PATH Specify the slave "mysqld" to use strace-client Create strace output for mysqltest client max-save-core Limit the number of core files saved (to avoid filling up disks for heavily crashing server). Defaults to $opt_max_save_core, set to 0 for no limit. Options for coverage, profiling etc Loading Loading
acinclude.m4 +8 −0 Original line number Diff line number Diff line Loading @@ -1817,6 +1817,14 @@ AC_DEFUN([MYSQL_CHECK_NDBCLUSTER], [ ndbcluster_system_libs="" ndb_mgmclient_libs="\$(top_builddir)/ndb/src/mgmclient/libndbmgmclient.la" MYSQL_CHECK_NDB_OPTIONS # libndbclient versioning when linked with GNU ld. if $LD --version 2>/dev/null|grep -q GNU; then NDB_LD_VERSION_SCRIPT="-Wl,--version-script=\$(top_builddir)/ndb/src/libndb.ver" AC_CONFIG_FILES(ndb/src/libndb.ver) fi AC_SUBST(NDB_LD_VERSION_SCRIPT) ;; * ) AC_MSG_RESULT([Not using NDB Cluster]) Loading
configure.in +0 −7 Original line number Diff line number Diff line Loading @@ -449,13 +449,6 @@ if $LD --version 2>/dev/null|grep -q GNU; then fi AC_SUBST(LD_VERSION_SCRIPT) # libndbclient versioning when linked with GNU ld. if $LD --version 2>/dev/null|grep -q GNU; then NDB_LD_VERSION_SCRIPT="-Wl,--version-script=\$(top_builddir)/ndb/src/libndb.ver" AC_CONFIG_FILES(ndb/src/libndb.ver) fi AC_SUBST(NDB_LD_VERSION_SCRIPT) # Avoid bug in fcntl on some versions of linux Loading
innobase/dict/dict0dict.c +16 −13 Original line number Diff line number Diff line Loading @@ -27,6 +27,9 @@ Created 1/8/1996 Heikki Tuuri #include "que0que.h" #include "rem0cmp.h" /* Implement isspace() in a locale-independent way. (Bug #24299) */ #define ib_isspace(c) ((char) (c) && strchr(" \v\f\t\r\n", c)) dict_sys_t* dict_sys = NULL; /* the dictionary system */ rw_lock_t dict_operation_lock; /* table create, drop, etc. reserve Loading Loading @@ -2374,7 +2377,7 @@ dict_accept( *success = FALSE; while (isspace(*ptr)) { while (ib_isspace(*ptr)) { ptr++; } Loading Loading @@ -2419,7 +2422,7 @@ dict_scan_id( *id = NULL; while (isspace(*ptr)) { while (ib_isspace(*ptr)) { ptr++; } Loading Loading @@ -2450,7 +2453,7 @@ dict_scan_id( len++; } } else { while (!isspace(*ptr) && *ptr != '(' && *ptr != ')' while (!ib_isspace(*ptr) && *ptr != '(' && *ptr != ')' && (accept_also_dot || *ptr != '.') && *ptr != ',' && *ptr != '\0') { Loading Loading @@ -2480,12 +2483,12 @@ dict_scan_id( if (heap && !quote) { /* EMS MySQL Manager sometimes adds characters 0xA0 (in latin1, a 'non-breakable space') to the end of a table name. But isspace(0xA0) is not true, which confuses our foreign key parser. After the UTF-8 conversion in ha_innodb.cc, bytes 0xC2 and 0xA0 are at the end of the string. After the UTF-8 conversion in ha_innodb.cc, bytes 0xC2 and 0xA0 are at the end of the string, and ib_isspace() does not work for multi-byte UTF-8 characters. TODO: we should lex the string using thd->charset_info, and my_isspace(). Only after that, convert id names to UTF-8. */ In MySQL 5.1 we lex the string using thd->charset_info, and my_isspace(). This workaround is not needed there. */ b = (byte*)(*id); id_len = strlen(b); Loading Loading @@ -2956,11 +2959,11 @@ dict_create_foreign_constraints_low( ut_a(success); if (!isspace(*ptr) && *ptr != '"' && *ptr != '`') { if (!ib_isspace(*ptr) && *ptr != '"' && *ptr != '`') { goto loop; } while (isspace(*ptr)) { while (ib_isspace(*ptr)) { ptr++; } Loading Loading @@ -2990,7 +2993,7 @@ dict_create_foreign_constraints_low( goto loop; } if (!isspace(*ptr)) { if (!ib_isspace(*ptr)) { goto loop; } Loading Loading @@ -3078,7 +3081,7 @@ dict_create_foreign_constraints_low( } ptr = dict_accept(ptr, "REFERENCES", &success); if (!success || !isspace(*ptr)) { if (!success || !ib_isspace(*ptr)) { dict_foreign_report_syntax_err(name, start_of_latest_foreign, ptr); return(DB_CANNOT_ADD_CONSTRAINT); Loading Loading @@ -3461,7 +3464,7 @@ dict_foreign_parse_drop_constraints( ptr = dict_accept(ptr, "DROP", &success); if (!isspace(*ptr)) { if (!ib_isspace(*ptr)) { goto loop; } Loading
mysql-test/lib/mtr_cases.pl +3 −2 Original line number Diff line number Diff line Loading @@ -537,6 +537,8 @@ sub collect_one_test_case($$$$$$$) { $tinfo->{'comment'}= "No ndbcluster tests(--skip-ndbcluster)"; return; } # Ndb tests run with two mysqld masters $tinfo->{'master_num'}= 2; } else { Loading @@ -552,7 +554,7 @@ sub collect_one_test_case($$$$$$$) { if ( $tinfo->{'innodb_test'} ) { # This is a test that need inndob # This is a test that need innodb if ( $::mysqld_variables{'innodb'} eq "FALSE" ) { # innodb is not supported, skip it Loading @@ -578,7 +580,6 @@ our @tags= ["include/have_debug.inc", "need_debug", 1], ["include/have_ndb.inc", "ndb_test", 1], ["include/have_ndb_extra.inc", "ndb_extra", 1], ["include/have_multi_ndb.inc", "master_num", 2], ["require_manager", "require_manager", 1], ); Loading
mysql-test/mysql-test-run.pl +8 −0 Original line number Diff line number Diff line Loading @@ -301,6 +301,8 @@ our %mysqld_variables; my $source_dist= 0; our $opt_max_save_core= 5; my $num_saved_cores= 0; # Number of core files saved in vardir/log/ so far. ###################################################################### # Loading Loading @@ -589,6 +591,7 @@ sub command_line_setup () { 'strace-client' => \$opt_strace_client, 'master-binary=s' => \$exe_master_mysqld, 'slave-binary=s' => \$exe_slave_mysqld, 'max-save-core=i' => \$opt_max_save_core, # Coverage, profiling etc 'gcov' => \$opt_gcov, Loading Loading @@ -3301,10 +3304,12 @@ sub save_files_before_restore($$) { # Look for core files foreach my $core_file ( glob("$data_dir/core*") ) { last if $opt_max_save_core > 0 && $num_saved_cores >= $opt_max_save_core; my $core_name= basename($core_file); mtr_report("Saving $core_name"); mkdir($save_name) if ! -d $save_name; rename("$core_file", "$save_name/$core_name"); ++$num_saved_cores; } } Loading Loading @@ -4897,6 +4902,9 @@ Options for debugging the product master-binary=PATH Specify the master "mysqld" to use slave-binary=PATH Specify the slave "mysqld" to use strace-client Create strace output for mysqltest client max-save-core Limit the number of core files saved (to avoid filling up disks for heavily crashing server). Defaults to $opt_max_save_core, set to 0 for no limit. Options for coverage, profiling etc Loading