summaryrefslogtreecommitdiff
path: root/storage
diff options
context:
space:
mode:
authorMattias Jonsson <mattias.jonsson@sun.com>2008-10-03 20:08:40 +0200
committerMattias Jonsson <mattias.jonsson@sun.com>2008-10-03 20:08:40 +0200
commita470fd7ba487de1a9a3b44085fa8c3db697d2878 (patch)
treea55172e98f0b18b4bd8308505f0c1288d09a2319 /storage
parenteb656b216468c2739f22f1df0f828054ea6bf1cd (diff)
downloadmariadb-git-a470fd7ba487de1a9a3b44085fa8c3db697d2878.tar.gz
Bug#37719: Crash if rename Archive table to same name with different
case and then select Problem was that the archive share was using a case insensitive charset when comparing table names Solution was to use a case sensitive char set when the table names are case sensitive mysql-test/suite/parts/r/partition_mgm_lc0_archive.result: Bug#37719: Crash if rename Archive table to same name with different case and then select Updated to correct result. storage/archive/ha_archive.cc: Bug#37719: Crash if rename Archive table to same name with different case and then select system_charset_info is case insensitive, table_alias_charset depends on the filesystem/lower_case_table_names variable. since there could be two tables that used the same share, unpredicted things could happen.
Diffstat (limited to 'storage')
-rw-r--r--storage/archive/ha_archive.cc2
1 files changed, 1 insertions, 1 deletions
diff --git a/storage/archive/ha_archive.cc b/storage/archive/ha_archive.cc
index 967e315d4a4..7edfca53751 100644
--- a/storage/archive/ha_archive.cc
+++ b/storage/archive/ha_archive.cc
@@ -171,7 +171,7 @@ int archive_db_init(void *p)
if (pthread_mutex_init(&archive_mutex, MY_MUTEX_INIT_FAST))
goto error;
- if (hash_init(&archive_open_tables, system_charset_info, 32, 0, 0,
+ if (hash_init(&archive_open_tables, table_alias_charset, 32, 0, 0,
(hash_get_key) archive_get_key, 0, 0))
{
VOID(pthread_mutex_destroy(&archive_mutex));