summaryrefslogtreecommitdiff
path: root/mysql-test/t/partition_open_files_limit.test
diff options
context:
space:
mode:
authorMattias Jonsson <mattias.jonsson@sun.com>2009-10-08 15:36:43 +0200
committerMattias Jonsson <mattias.jonsson@sun.com>2009-10-08 15:36:43 +0200
commit87a4644db8715c1d04560f8c80a776d5a7ebfd9e (patch)
tree9383b1f3b7eae01a259d67f7ed7dd0b8e5743ef8 /mysql-test/t/partition_open_files_limit.test
parent7079338e0ed8f5ef52c77fd81ad23bbb8fd8c86a (diff)
downloadmariadb-git-87a4644db8715c1d04560f8c80a776d5a7ebfd9e.tar.gz
Bug#46922: crash when adding partitions and open_files_limit
is reached Problem was bad error handling, leaving some new temporary partitions locked and initialized and some not yet initialized and locked, leading to a crash when trying to unlock the not yet initialized and locked partitions Solution was to unlock the already locked partitions, and not include any of the new temporary partitions in later unlocks
Diffstat (limited to 'mysql-test/t/partition_open_files_limit.test')
-rw-r--r--mysql-test/t/partition_open_files_limit.test19
1 files changed, 19 insertions, 0 deletions
diff --git a/mysql-test/t/partition_open_files_limit.test b/mysql-test/t/partition_open_files_limit.test
new file mode 100644
index 00000000000..92a9b18b573
--- /dev/null
+++ b/mysql-test/t/partition_open_files_limit.test
@@ -0,0 +1,19 @@
+--source include/have_partition.inc
+
+--disable_warnings
+DROP TABLE IF EXISTS `t1`;
+--enable_warnings
+
+#
+--echo # Bug#46922: crash when adding partitions and open_files_limit is reached
+#
+CREATE TABLE t1 (a INT PRIMARY KEY)
+ENGINE=MyISAM PARTITION BY KEY () PARTITIONS 1;
+INSERT INTO t1 VALUES (1), (2), (3), (4), (5), (6), (7), (8), (9), (10), (11);
+--echo # if the bug exists, then crash will happen here
+--replace_regex /file '.*'/file '<partition file>'/
+--error 23
+ALTER TABLE t1 ADD PARTITION PARTITIONS 511;
+--sorted_result
+SELECT * FROM t1;
+DROP TABLE t1;