Below is the list of changes that have just been committed into a local
5.1 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-08 11:20:50+05:00, svoj@stripped +6 -0
BUG#26976 - Missing table in merge not noted in related error msg +
SHOW CREATE TABLE fails
After merge fixes.
mysql-test/r/backup.result@stripped, 2007-06-08 11:20:47+05:00, svoj@stripped +14 -26
Fixed test result.
mysql-test/r/sp.result@stripped, 2007-06-08 11:20:47+05:00, svoj@stripped +20 -21
Fixed test result.
sql/sql_table.cc@stripped, 2007-06-08 11:20:47+05:00, svoj@stripped +7 -1
Fixed wrongly merged line. Moved "deprecated" warnings from sql_yacc.yy
to mysql_backup_tables/mysql_restore_table.
sql/sql_yacc.yy@stripped, 2007-06-08 11:20:47+05:00, svoj@stripped +0 -4
Moved "deprecated" warnings from sql_yacc.yy to
mysql_backup_tables/mysql_restore_table.
storage/myisam/ha_myisam.cc@stripped, 2007-06-08 11:20:48+05:00, svoj@stripped +2 -11
Do not report the same error twice.
storage/myisammrg/ha_myisammrg.cc@stripped, 2007-06-08 11:20:48+05:00, svoj@stripped +0 -1
Removed wrongly merged line.
# 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.1-engines
--- 1.222/storage/myisam/ha_myisam.cc 2007-06-07 13:53:21 +05:00
+++ 1.223/storage/myisam/ha_myisam.cc 2007-06-08 11:20:48 +05:00
@@ -1224,11 +1224,7 @@ int ha_myisam::assign_to_keycache(THD* t
table->keys_in_use_for_query.clear_all();
if (table_list->process_index_hints(table))
- {
- errmsg= thd->net.last_error;
- error= HA_ADMIN_FAILED;
- goto err;
- }
+ DBUG_RETURN(HA_ADMIN_FAILED);
map= ~(ulonglong) 0;
if (!table->keys_in_use_for_query.is_clear_all())
/* use all keys if there's no list specified by the user through hints */
@@ -1243,7 +1239,6 @@ int ha_myisam::assign_to_keycache(THD* t
error= HA_ADMIN_CORRUPT;
}
- err:
if (error != HA_ADMIN_OK)
{
/* Send error to user */
@@ -1278,11 +1273,7 @@ int ha_myisam::preload_keys(THD* thd, HA
table->keys_in_use_for_query.clear_all();
if (table_list->process_index_hints(table))
- {
- errmsg= thd->net.last_error;
- error= HA_ADMIN_FAILED;
- goto err;
- }
+ DBUG_RETURN(HA_ADMIN_FAILED);
map= ~(ulonglong) 0;
/* Check validity of the index references */
--- 1.121/storage/myisammrg/ha_myisammrg.cc 2007-06-07 13:53:21 +05:00
+++ 1.122/storage/myisammrg/ha_myisammrg.cc 2007-06-08 11:20:48 +05:00
@@ -129,7 +129,6 @@ int ha_myisammrg::open(const char *name,
u_table->table->s->base.keys,
u_table->table->s->base.fields, false))
{
- my_free((uchar*) recinfo, MYF(0));
error= HA_ERR_WRONG_MRG_TABLE_DEF;
if (test_if_locked & HA_OPEN_FOR_REPAIR)
myrg_print_wrong_table(u_table->table->filename);
--- 1.430/sql/sql_table.cc 2007-06-07 13:53:21 +05:00
+++ 1.431/sql/sql_table.cc 2007-06-08 11:20:47 +05:00
@@ -4175,7 +4175,9 @@ send_result:
protocol->prepare_for_resend();
protocol->store(table_name, system_charset_info);
protocol->store((char*) operator_name, system_charset_info);
- protocol->store(warning_level_names[err->level], system_charset_info);
+ protocol->store(warning_level_names[err->level].str,
+ warning_level_names[err->level].length,
+ system_charset_info);
protocol->store(err->msg, system_charset_info);
if (protocol->write())
goto err;
@@ -4387,6 +4389,8 @@ send_result_message:
bool mysql_backup_table(THD* thd, TABLE_LIST* table_list)
{
DBUG_ENTER("mysql_backup_table");
+ WARN_DEPRECATED(thd, "5.2", "BACKUP TABLE",
+ "MySQL Administrator (mysqldump, mysql)");
DBUG_RETURN(mysql_admin_table(thd, table_list, 0,
"backup", TL_READ, 0, 0, 0, 0,
&handler::backup, 0));
@@ -4396,6 +4400,8 @@ bool mysql_backup_table(THD* thd, TABLE_
bool mysql_restore_table(THD* thd, TABLE_LIST* table_list)
{
DBUG_ENTER("mysql_restore_table");
+ WARN_DEPRECATED(thd, "5.2", "RESTORE TABLE",
+ "MySQL Administrator (mysqldump, mysql)");
DBUG_RETURN(mysql_admin_table(thd, table_list, 0,
"restore", TL_WRITE, 1, 1, 0,
&prepare_for_restore,
--- 1.576/sql/sql_yacc.yy 2007-06-06 02:23:57 +05:00
+++ 1.577/sql/sql_yacc.yy 2007-06-08 11:20:47 +05:00
@@ -5751,8 +5751,6 @@ restore:
RESTORE_SYM table_or_tables
{
Lex->sql_command = SQLCOM_RESTORE_TABLE;
- WARN_DEPRECATED(yythd, "5.2", "RESTORE TABLE",
- "MySQL Administrator (mysqldump, mysql)");
}
table_list FROM TEXT_STRING_sys
{
@@ -5763,8 +5761,6 @@ backup:
BACKUP_SYM table_or_tables
{
Lex->sql_command = SQLCOM_BACKUP_TABLE;
- WARN_DEPRECATED(yythd, "5.2", "BACKUP TABLE",
- "MySQL Administrator (mysqldump, mysql)");
}
table_list TO_SYM TEXT_STRING_sys
{
--- 1.276/mysql-test/r/sp.result 2007-06-07 13:39:21 +05:00
+++ 1.277/mysql-test/r/sp.result 2007-06-08 11:20:47 +05:00
@@ -4404,8 +4404,10 @@ call bug13012()|
Table Op Msg_type Msg_text
test.t1 repair status OK
Table Op Msg_type Msg_text
+test.t1 backup Warning The syntax 'BACKUP TABLE' is deprecated and will be removed in
MySQL 5.2. Please use MySQL Administrator (mysqldump, mysql) instead
test.t1 backup status OK
Table Op Msg_type Msg_text
+test.t1 restore Warning The syntax 'RESTORE TABLE' is deprecated and will be removed in
MySQL 5.2. Please use MySQL Administrator (mysqldump, mysql) instead
test.t1 restore status OK
drop procedure bug13012|
create view v1 as select * from t1|
@@ -4420,61 +4422,58 @@ Table Op Msg_type Msg_text
test.t1 repair status OK
test.t2 repair status OK
test.t3 repair status OK
-test.v1 repair error 'test.v1' is not BASE TABLE
+test.v1 repair Error 'test.v1' is not BASE TABLE
+test.v1 repair error Corrupt
Table Op Msg_type Msg_text
test.t1 optimize status OK
test.t2 optimize status OK
test.t3 optimize status OK
-test.v1 optimize error 'test.v1' is not BASE TABLE
+test.v1 optimize Error 'test.v1' is not BASE TABLE
+test.v1 optimize error Corrupt
Table Op Msg_type Msg_text
test.t1 analyze status Table is already up to date
test.t2 analyze status Table is already up to date
test.t3 analyze status Table is already up to date
-test.v1 analyze error 'test.v1' is not BASE TABLE
-Warnings:
-Error 1347 'test.v1' is not BASE TABLE
-Error 1347 'test.v1' is not BASE TABLE
-Error 1347 'test.v1' is not BASE TABLE
+test.v1 analyze Error 'test.v1' is not BASE TABLE
+test.v1 analyze error Corrupt
call bug13012()|
Table Op Msg_type Msg_text
test.t1 repair status OK
test.t2 repair status OK
test.t3 repair status OK
-test.v1 repair error 'test.v1' is not BASE TABLE
+test.v1 repair Error 'test.v1' is not BASE TABLE
+test.v1 repair error Corrupt
Table Op Msg_type Msg_text
test.t1 optimize status OK
test.t2 optimize status OK
test.t3 optimize status OK
-test.v1 optimize error 'test.v1' is not BASE TABLE
+test.v1 optimize Error 'test.v1' is not BASE TABLE
+test.v1 optimize error Corrupt
Table Op Msg_type Msg_text
test.t1 analyze status Table is already up to date
test.t2 analyze status Table is already up to date
test.t3 analyze status Table is already up to date
-test.v1 analyze error 'test.v1' is not BASE TABLE
-Warnings:
-Error 1347 'test.v1' is not BASE TABLE
-Error 1347 'test.v1' is not BASE TABLE
-Error 1347 'test.v1' is not BASE TABLE
+test.v1 analyze Error 'test.v1' is not BASE TABLE
+test.v1 analyze error Corrupt
call bug13012()|
Table Op Msg_type Msg_text
test.t1 repair status OK
test.t2 repair status OK
test.t3 repair status OK
-test.v1 repair error 'test.v1' is not BASE TABLE
+test.v1 repair Error 'test.v1' is not BASE TABLE
+test.v1 repair error Corrupt
Table Op Msg_type Msg_text
test.t1 optimize status OK
test.t2 optimize status OK
test.t3 optimize status OK
-test.v1 optimize error 'test.v1' is not BASE TABLE
+test.v1 optimize Error 'test.v1' is not BASE TABLE
+test.v1 optimize error Corrupt
Table Op Msg_type Msg_text
test.t1 analyze status Table is already up to date
test.t2 analyze status Table is already up to date
test.t3 analyze status Table is already up to date
-test.v1 analyze error 'test.v1' is not BASE TABLE
-Warnings:
-Error 1347 'test.v1' is not BASE TABLE
-Error 1347 'test.v1' is not BASE TABLE
-Error 1347 'test.v1' is not BASE TABLE
+test.v1 analyze Error 'test.v1' is not BASE TABLE
+test.v1 analyze error Corrupt
drop procedure bug13012|
drop view v1|
select * from t1 order by data|
--- 1.23/mysql-test/r/backup.result 2007-06-07 13:39:14 +05:00
+++ 1.24/mysql-test/r/backup.result 2007-06-08 11:20:47 +05:00
@@ -4,28 +4,24 @@ create table t4(n int);
backup table t4 to '../bogus';
Table Op Msg_type Msg_text
test.t4 backup error Failed copying .frm file (errno: X)
+test.t4 backup Warning The syntax 'BACKUP TABLE' is deprecated and will be removed in
MySQL 5.2. Please use MySQL Administrator (mysqldump, mysql) instead
+test.t4 backup Error Can't create/write to file 'MYSQLTEST_VARDIR/bogus/t4.frm' (Errcode:
X)
test.t4 backup status Operation failed
-Warnings:
-Warning 1543 The syntax 'BACKUP TABLE' is deprecated and will be removed in MySQL 5.2.
Please use MySQL Administrator (mysqldump, mysql) instead
-Error 1 Can't create/write to file 'MYSQLTEST_VARDIR/bogus/t4.frm' (Errcode: X)
backup table t4 to '../tmp';
Table Op Msg_type Msg_text
+test.t4 backup Warning The syntax 'BACKUP TABLE' is deprecated and will be removed in
MySQL 5.2. Please use MySQL Administrator (mysqldump, mysql) instead
test.t4 backup status OK
-Warnings:
-Warning 1543 The syntax 'BACKUP TABLE' is deprecated and will be removed in MySQL 5.2.
Please use MySQL Administrator (mysqldump, mysql) instead
backup table t4 to '../tmp';
Table Op Msg_type Msg_text
test.t4 backup error Failed copying .frm file (errno: X)
+test.t4 backup Warning The syntax 'BACKUP TABLE' is deprecated and will be removed in
MySQL 5.2. Please use MySQL Administrator (mysqldump, mysql) instead
+test.t4 backup Error Can't create/write to file 'MYSQLTEST_VARDIR/tmp/t4.frm' (Errcode:
X)
test.t4 backup status Operation failed
-Warnings:
-Warning 1543 The syntax 'BACKUP TABLE' is deprecated and will be removed in MySQL 5.2.
Please use MySQL Administrator (mysqldump, mysql) instead
-Error 1 Can't create/write to file 'MYSQLTEST_VARDIR/tmp/t4.frm' (Errcode: X)
drop table t4;
restore table t4 from '../tmp';
Table Op Msg_type Msg_text
+test.t4 restore Warning The syntax 'RESTORE TABLE' is deprecated and will be removed in
MySQL 5.2. Please use MySQL Administrator (mysqldump, mysql) instead
test.t4 restore status OK
-Warnings:
-Warning 1543 The syntax 'RESTORE TABLE' is deprecated and will be removed in MySQL 5.2.
Please use MySQL Administrator (mysqldump, mysql) instead
select count(*) from t4;
count(*)
0
@@ -33,9 +29,8 @@ create table t1(n int);
insert into t1 values (23),(45),(67);
backup table t1 to '../tmp';
Table Op Msg_type Msg_text
+test.t1 backup Warning The syntax 'BACKUP TABLE' is deprecated and will be removed in
MySQL 5.2. Please use MySQL Administrator (mysqldump, mysql) instead
test.t1 backup status OK
-Warnings:
-Warning 1543 The syntax 'BACKUP TABLE' is deprecated and will be removed in MySQL 5.2.
Please use MySQL Administrator (mysqldump, mysql) instead
drop table t1;
restore table t1 from '../bogus';
Table Op Msg_type Msg_text
@@ -45,9 +40,8 @@ Warning 1543 The syntax 'RESTORE TABLE'
Error 29 File 'MYSQLTEST_VARDIR/bogus/t1.frm' not found (Errcode: X)
restore table t1 from '../tmp';
Table Op Msg_type Msg_text
+test.t1 restore Warning The syntax 'RESTORE TABLE' is deprecated and will be removed in
MySQL 5.2. Please use MySQL Administrator (mysqldump, mysql) instead
test.t1 restore status OK
-Warnings:
-Warning 1543 The syntax 'RESTORE TABLE' is deprecated and will be removed in MySQL 5.2.
Please use MySQL Administrator (mysqldump, mysql) instead
select n from t1;
n
23
@@ -59,18 +53,16 @@ insert into t2 values (123),(145),(167);
insert into t3 values (223),(245),(267);
backup table t2,t3 to '../tmp';
Table Op Msg_type Msg_text
+test.t2 backup Warning The syntax 'BACKUP TABLE' is deprecated and will be removed in
MySQL 5.2. Please use MySQL Administrator (mysqldump, mysql) instead
test.t2 backup status OK
test.t3 backup status OK
-Warnings:
-Warning 1543 The syntax 'BACKUP TABLE' is deprecated and will be removed in MySQL 5.2.
Please use MySQL Administrator (mysqldump, mysql) instead
drop table t1,t2,t3;
restore table t1,t2,t3 from '../tmp';
Table Op Msg_type Msg_text
+test.t1 restore Warning The syntax 'RESTORE TABLE' is deprecated and will be removed in
MySQL 5.2. Please use MySQL Administrator (mysqldump, mysql) instead
test.t1 restore status OK
test.t2 restore status OK
test.t3 restore status OK
-Warnings:
-Warning 1543 The syntax 'RESTORE TABLE' is deprecated and will be removed in MySQL 5.2.
Please use MySQL Administrator (mysqldump, mysql) instead
select n from t1;
n
23
@@ -89,32 +81,28 @@ k
drop table t1,t2,t3,t4;
restore table t1 from '../tmp';
Table Op Msg_type Msg_text
+test.t1 restore Warning The syntax 'RESTORE TABLE' is deprecated and will be removed in
MySQL 5.2. Please use MySQL Administrator (mysqldump, mysql) instead
test.t1 restore status OK
-Warnings:
-Warning 1543 The syntax 'RESTORE TABLE' is deprecated and will be removed in MySQL 5.2.
Please use MySQL Administrator (mysqldump, mysql) instead
rename table t1 to t5;
lock tables t5 write;
backup table t5 to '../tmp';
unlock tables;
Table Op Msg_type Msg_text
+test.t5 backup Warning The syntax 'BACKUP TABLE' is deprecated and will be removed in
MySQL 5.2. Please use MySQL Administrator (mysqldump, mysql) instead
test.t5 backup status OK
-Warnings:
-Warning 1543 The syntax 'BACKUP TABLE' is deprecated and will be removed in MySQL 5.2.
Please use MySQL Administrator (mysqldump, mysql) instead
drop table t5;
DROP TABLE IF EXISTS `t+1`;
CREATE TABLE `t+1` (c1 INT);
INSERT INTO `t+1` VALUES (1), (2), (3);
BACKUP TABLE `t+1` TO '../tmp';
Table Op Msg_type Msg_text
+test.t+1 backup Warning The syntax 'BACKUP TABLE' is deprecated and will be removed in
MySQL 5.2. Please use MySQL Administrator (mysqldump, mysql) instead
test.t+1 backup status OK
-Warnings:
-Warning 1543 The syntax 'BACKUP TABLE' is deprecated and will be removed in MySQL 5.2.
Please use MySQL Administrator (mysqldump, mysql) instead
DROP TABLE `t+1`;
RESTORE TABLE `t+1` FROM '../tmp';
Table Op Msg_type Msg_text
+test.t+1 restore Warning The syntax 'RESTORE TABLE' is deprecated and will be removed in
MySQL 5.2. Please use MySQL Administrator (mysqldump, mysql) instead
test.t+1 restore status OK
-Warnings:
-Warning 1543 The syntax 'RESTORE TABLE' is deprecated and will be removed in MySQL 5.2.
Please use MySQL Administrator (mysqldump, mysql) instead
SELECT * FROM `t+1`;
c1
1
| Thread |
|---|
| • bk commit into 5.1 tree (svoj:1.2548) BUG#26976 | Sergey Vojtovich | 8 Jun |