summaryrefslogtreecommitdiff
path: root/mysql-test/r
diff options
context:
space:
mode:
authorArun Kuruvila <arun.kuruvila@oracle.com>2015-08-21 08:35:42 +0530
committerArun Kuruvila <arun.kuruvila@oracle.com>2015-08-21 08:35:42 +0530
commitf4ff086abea975222572fcfd232bf296018f5d85 (patch)
tree2fc9d1949180e4a335b651859aa3b0b43b8a4e98 /mysql-test/r
parent75f43c5f6a5332894cf2d90ab2c04cc62c5ad18b (diff)
downloadmariadb-git-f4ff086abea975222572fcfd232bf296018f5d85.tar.gz
Bug#20198490 : LOWER_CASE_TABLE_NAMES=0 ON WINDOWS LEADS TO
PROBLEMS Description:- Server variable "--lower_case_tables_names" when set to "0" on windows platform which does not support case sensitive file operations leads to problems. A warning message is printed in the error log while starting the server with "--lower_case_tables_names=0". Also according to the documentation, seting "lower_case_tables_names" to "0" on a case-insensitive filesystem might lead to index corruption. Analysis:- The problem reported in the bug is:- Creating an INNODB table 'a' and executing a query, "INSERT INTO a SELECT a FROM A;" on a server started with "--lower_case_tables_names=0" and running on a case-insensitive filesystem leads innodb to flat spin. Optimizer thinks that "a" and "A" are two different tables as the variable "lower_case_table_names" is set to "0". As a result, optimizer comes up with a plan which does not need a temporary table. If the same table is used in select and insert, a temporary table is needed. This incorrect optimizer plan leads to infinite insertions. Fix:- If the server is started with "--lower_case_tables_names" set to 0 on a case-insensitive filesystem, an error, "The server option 'lower_case_table_names'is configured to use case sensitive table names but the data directory is on a case-insensitive file system which is an unsupported combination. Please consider either using a case sensitive file system for your data directory or switching to a case-insensitive table name mode.", is printed in the server error log and the server exits.
Diffstat (limited to 'mysql-test/r')
-rw-r--r--mysql-test/r/lowercase_fs_on.result3
-rw-r--r--mysql-test/r/lowercase_table3.result11
2 files changed, 3 insertions, 11 deletions
diff --git a/mysql-test/r/lowercase_fs_on.result b/mysql-test/r/lowercase_fs_on.result
new file mode 100644
index 00000000000..a090f46cfbf
--- /dev/null
+++ b/mysql-test/r/lowercase_fs_on.result
@@ -0,0 +1,3 @@
+#
+# Bug#20198490 : LOWER_CASE_TABLE_NAMES=0 ON WINDOWS LEADS TO PROBLEMS
+#
diff --git a/mysql-test/r/lowercase_table3.result b/mysql-test/r/lowercase_table3.result
deleted file mode 100644
index 22e80aaeb26..00000000000
--- a/mysql-test/r/lowercase_table3.result
+++ /dev/null
@@ -1,11 +0,0 @@
-call mtr.add_suppression("Cannot find or open table test/BUG29839 from");
-DROP TABLE IF EXISTS t1,T1;
-CREATE TABLE t1 (a INT);
-SELECT * FROM T1;
-a
-FLUSH TABLES;
-DROP TABLE t1;
-CREATE TABLE bug29839 (a INT) ENGINE=INNODB;
-SELECT * FROM BUG29839;
-ERROR 42S02: Table 'test.BUG29839' doesn't exist
-DROP TABLE bug29839;