diff options
author | unknown <msvensson@neptunus.(none)> | 2005-04-27 12:17:07 +0200 |
---|---|---|
committer | unknown <msvensson@neptunus.(none)> | 2005-04-27 12:17:07 +0200 |
commit | fc26e1c15b32cfb789afb962644eae0d96bbb46d (patch) | |
tree | 4e7323461bae1133f3b2eccd16301b85466c157c /sql | |
parent | e9cf23d1fc55521a92d61446035c6ab5d16b202a (diff) | |
parent | 5444ad94009330a1db7f978290e998fafd23d501 (diff) | |
download | mariadb-git-fc26e1c15b32cfb789afb962644eae0d96bbb46d.tar.gz |
Merge neptunus.(none):/home/msvensson/mysql/bug9911
into neptunus.(none):/home/msvensson/mysql/mysql-4.1
Diffstat (limited to 'sql')
-rw-r--r-- | sql/examples/ha_archive.cc | 24 | ||||
-rw-r--r-- | sql/examples/ha_archive.h | 1 |
2 files changed, 25 insertions, 0 deletions
diff --git a/sql/examples/ha_archive.cc b/sql/examples/ha_archive.cc index bc4af0c7dc7..0e1df45a70b 100644 --- a/sql/examples/ha_archive.cc +++ b/sql/examples/ha_archive.cc @@ -427,6 +427,30 @@ const char **ha_archive::bas_ext() const { static const char *ext[]= { ARZ, ARN, ARM, NullS }; return ext; } +/* + Rename all files that this handler defines in bas_ext list + + NOTE Don't care if the .arn file is missing +*/ +int ha_archive::rename_table(const char * from, const char * to) +{ + DBUG_ENTER("ha_archive::rename_table"); + for (const char **ext=bas_ext(); *ext ; ext++) + { + if (rename_file_ext(from,to,*ext)) + { + if (my_errno == ENOENT && + !my_strcasecmp(system_charset_info, *ext, ARN)) + continue; + + DBUG_RETURN(my_errno); + } + + } + DBUG_RETURN(0); +} + + /* When opening a file we: Create/get our shared structure. diff --git a/sql/examples/ha_archive.h b/sql/examples/ha_archive.h index 855d756368d..1d3365aca67 100644 --- a/sql/examples/ha_archive.h +++ b/sql/examples/ha_archive.h @@ -124,6 +124,7 @@ public: int optimize(THD* thd, HA_CHECK_OPT* check_opt); THR_LOCK_DATA **store_lock(THD *thd, THR_LOCK_DATA **to, enum thr_lock_type lock_type); + int rename_table(const char * from, const char * to); }; bool archive_db_init(void); |