summaryrefslogtreecommitdiff
path: root/client/mysqldump.c
diff options
context:
space:
mode:
authorSatya B <satya.bn@sun.com>2009-03-19 11:36:37 +0530
committerSatya B <satya.bn@sun.com>2009-03-19 11:36:37 +0530
commitb696ba1f99c70b2504136508e089383264319c8c (patch)
tree914bc60511140a5291f8903bfb0f2b5e1b9d7804 /client/mysqldump.c
parenta559e14d23cd5ee2c454f561160bc473f14c02d2 (diff)
downloadmariadb-git-b696ba1f99c70b2504136508e089383264319c8c.tar.gz
Fix for BUG#21360 - mysqldump error on federated tables
When loading dump created by mysqldump tool an error is thrown saying storage engine for the table doesn't have an option. mysqldump tries to re-insert the data into the federated table which causes the error. Since the data is already available on the remote server, mysqldump shouldn't try to dump the data again for FEDERATED tables. As stated in the bug page, it can be considered similar to the MERGE ENGINE with "view only" nature. Fixed by adding the "FEDERATED ENGINE" to the exception list to ignore the data. client/mysqldump.c: Fixed check_if_ignore_table() to ignore FEDERATED engine when dumping the table data. mysql-test/r/federated.result: Result file for BUG#21360 mysql-test/t/federated.test: Testcase for BUG#21360
Diffstat (limited to 'client/mysqldump.c')
-rw-r--r--client/mysqldump.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/client/mysqldump.c b/client/mysqldump.c
index af6a6d10121..8ffc83b5684 100644
--- a/client/mysqldump.c
+++ b/client/mysqldump.c
@@ -3576,7 +3576,8 @@ char check_if_ignore_table(const char *table_name, char *table_type)
If these two types, we do want to skip dumping the table
*/
if (!opt_no_data &&
- (!strcmp(table_type,"MRG_MyISAM") || !strcmp(table_type,"MRG_ISAM")))
+ (!strcmp(table_type,"MRG_MyISAM") || !strcmp(table_type,"MRG_ISAM") ||
+ !strcmp(table_type,"FEDERATED")))
result= IGNORE_DATA;
}
mysql_free_result(res);