Below is the list of changes that have just been committed into a local
5.0 repository of svoj. When svoj 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-06-14 16:14:47+05:00, svoj@stripped +2 -0
BUG#26976 - Missing table in merge not noted in related error msg +
SHOW CREATE TABLE fails
Addition to the fix: report db name + table name instead of table path.
This solves embedded merge test failure.
mysql-test/r/merge.result@stripped, 2007-06-14 16:14:46+05:00, svoj@stripped +4 -4
BUG#26976 - Missing table in merge not noted in related error msg +
SHOW CREATE TABLE fails
Addition to the fix: report db name + table name instead of table path.
sql/ha_myisammrg.cc@stripped, 2007-06-14 16:14:46+05:00, svoj@stripped +11 -1
BUG#26976 - Missing table in merge not noted in related error msg +
SHOW CREATE TABLE fails
Addition to the fix: report db name + table name instead of table path.
# This is a BitKeeper patch. What follows are the unified diffs for the
# set of deltas contained in the patch. The rest of the patch, the part
# that BitKeeper cares about, is below these diffs.
# User: svoj
# Host: june.mysql.com
# Root: /home/svoj/devel/mysql/BUG26976/mysql-5.0-engines
--- 1.90/sql/ha_myisammrg.cc 2007-06-06 04:42:39 +05:00
+++ 1.91/sql/ha_myisammrg.cc 2007-06-14 16:14:46 +05:00
@@ -72,11 +72,21 @@ extern int check_definition(MI_KEYDEF *t
uint t1_keys, uint t1_recs,
MI_KEYDEF *t2_keyinfo, MI_COLUMNDEF *t2_recinfo,
uint t2_keys, uint t2_recs, bool strict);
+static void split_file_name(const char *file_name,
+ LEX_STRING *db, LEX_STRING *name);
+
+
extern "C" void myrg_print_wrong_table(const char *table_name)
{
+ LEX_STRING db, name;
+ char buf[FN_REFLEN];
+ split_file_name(table_name, &db, &name);
+ memcpy(buf, db.str, db.length);
+ buf[db.length]= '.';
+ memcpy(buf + db.length + 1, name.str, name.length);
push_warning_printf(current_thd, MYSQL_ERROR::WARN_LEVEL_ERROR,
ER_ADMIN_WRONG_MRG_TABLE, ER(ER_ADMIN_WRONG_MRG_TABLE),
- table_name);
+ buf);
}
--- 1.61/mysql-test/r/merge.result 2007-06-06 04:42:39 +05:00
+++ 1.62/mysql-test/r/merge.result 2007-06-14 16:14:46 +05:00
@@ -849,8 +849,8 @@ SELECT * FROM tm1;
ERROR HY000: Unable to open underlying table which is differently defined or of
non-MyISAM type or doesn't exist
CHECK TABLE tm1;
Table Op Msg_type Msg_text
-test.tm1 check Error Table './test/t1' is differently defined or of non-MyISAM type or
doesn't exist
-test.tm1 check Error Table './test/t2' is differently defined or of non-MyISAM type or
doesn't exist
+test.tm1 check Error Table 'test.t1' is differently defined or of non-MyISAM type or
doesn't exist
+test.tm1 check Error Table 'test.t2' is differently defined or of non-MyISAM type or
doesn't exist
test.tm1 check Error Unable to open underlying table which is differently defined or of
non-MyISAM type or doesn't exist
test.tm1 check error Corrupt
CREATE TABLE t1(a INT);
@@ -858,7 +858,7 @@ SELECT * FROM tm1;
ERROR HY000: Unable to open underlying table which is differently defined or of
non-MyISAM type or doesn't exist
CHECK TABLE tm1;
Table Op Msg_type Msg_text
-test.tm1 check Error Table './test/t2' is differently defined or of non-MyISAM type or
doesn't exist
+test.tm1 check Error Table 'test.t2' is differently defined or of non-MyISAM type or
doesn't exist
test.tm1 check Error Unable to open underlying table which is differently defined or of
non-MyISAM type or doesn't exist
test.tm1 check error Corrupt
CREATE TABLE t2(a BLOB);
@@ -866,7 +866,7 @@ SELECT * FROM tm1;
ERROR HY000: Unable to open underlying table which is differently defined or of
non-MyISAM type or doesn't exist
CHECK TABLE tm1;
Table Op Msg_type Msg_text
-test.tm1 check Error Table './test/t2' is differently defined or of non-MyISAM type or
doesn't exist
+test.tm1 check Error Table 'test.t2' is differently defined or of non-MyISAM type or
doesn't exist
test.tm1 check Error Unable to open underlying table which is differently defined or of
non-MyISAM type or doesn't exist
test.tm1 check error Corrupt
ALTER TABLE t2 MODIFY a INT;
| Thread |
|---|
| • bk commit into 5.0 tree (svoj:1.2520) BUG#26976 | Sergey Vojtovich | 14 Jun |