summaryrefslogtreecommitdiff
path: root/storage
diff options
context:
space:
mode:
authorgluh@gluh.(none) <>2006-12-12 17:59:34 +0400
committergluh@gluh.(none) <>2006-12-12 17:59:34 +0400
commitc6d9cf1b1208b51454a0875e54ed93351fdc3f6a (patch)
tree8d5cfe93d01fa5ab58cf24e8c6b05e186486e1cd /storage
parentc24381bdaaca307148888f2cf7c223570266c4f0 (diff)
parent883aa8d980b29ba35776f65c17c9c04c6c130cc5 (diff)
downloadmariadb-git-c6d9cf1b1208b51454a0875e54ed93351fdc3f6a.tar.gz
Merge mysql.com:/home/gluh/MySQL/Merge/5.1
into mysql.com:/home/gluh/MySQL/Merge/5.1-opt
Diffstat (limited to 'storage')
-rw-r--r--storage/archive/ha_archive.cc10
1 files changed, 7 insertions, 3 deletions
diff --git a/storage/archive/ha_archive.cc b/storage/archive/ha_archive.cc
index d181be138ad..69d24bc00eb 100644
--- a/storage/archive/ha_archive.cc
+++ b/storage/archive/ha_archive.cc
@@ -458,7 +458,7 @@ ARCHIVE_SHARE *ha_archive::get_share(const char *table_name,
Since we now possibly no real_path, we will use it instead if it exists.
*/
if (*share->real_path)
- fn_format(share->data_file_name, share->real_path, "", ARZ,
+ fn_format(share->data_file_name, table_name, share->real_path, ARZ,
MY_REPLACE_EXT|MY_UNPACK_FILENAME);
VOID(my_hash_insert(&archive_open_tables, (byte*) share));
thr_lock_init(&share->lock);
@@ -686,9 +686,13 @@ int ha_archive::create(const char *name, TABLE *table_arg,
goto error;
}
+ /*
+ We reuse name_buff since it is available.
+ */
write_meta_file(create_file, 0, stats.auto_increment_value, 0,
- (char *)create_info->data_file_name,
- FALSE);
+ (create_info->data_file_name &&
+ dirname_part(name_buff, (char*)create_info->data_file_name))
+ ? name_buff : 0, FALSE);
my_close(create_file,MYF(0));
/*