merge into mysql-5.1-bugteam
This commit is contained in:
commit
cd73187378
22
mysql-test/r/partition_open_files_limit.result
Normal file
22
mysql-test/r/partition_open_files_limit.result
Normal file
@ -0,0 +1,22 @@
|
||||
DROP TABLE IF EXISTS `t1`;
|
||||
# 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);
|
||||
# if the bug exists, then crash will happen here
|
||||
ALTER TABLE t1 ADD PARTITION PARTITIONS 511;
|
||||
ERROR HY000: Out of resources when opening file '<partition file>' (Errcode: 24)
|
||||
SELECT * FROM t1;
|
||||
a
|
||||
1
|
||||
10
|
||||
11
|
||||
2
|
||||
3
|
||||
4
|
||||
5
|
||||
6
|
||||
7
|
||||
8
|
||||
9
|
||||
DROP TABLE t1;
|
1
mysql-test/t/partition_open_files_limit-master.opt
Normal file
1
mysql-test/t/partition_open_files_limit-master.opt
Normal file
@ -0,0 +1 @@
|
||||
--open-files-limit=5 --max_connections=2 --table_open_cache=1
|
19
mysql-test/t/partition_open_files_limit.test
Normal file
19
mysql-test/t/partition_open_files_limit.test
Normal file
@ -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;
|
@ -1280,10 +1280,10 @@ void ha_partition::cleanup_new_partition(uint part_count)
|
||||
m_file= m_added_file;
|
||||
m_added_file= NULL;
|
||||
|
||||
external_lock(ha_thd(), F_UNLCK);
|
||||
/* delete_table also needed, a bit more complex */
|
||||
close();
|
||||
|
||||
m_added_file= m_file;
|
||||
m_file= save_m_file;
|
||||
}
|
||||
DBUG_VOID_RETURN;
|
||||
|
Loading…
x
Reference in New Issue
Block a user