mirror of
https://github.com/MariaDB/server.git
synced 2025-07-30 16:24:05 +03:00
Merge pchardin@bk-internal.mysql.com:/home/bk/mysql-5.0-runtime
into mysql.com:/home/cps/mysql/trees/mysql-5.0-virgin
This commit is contained in:
@ -5000,3 +5000,13 @@ insert t1 values (1),(2),(3),(4),(5);
|
||||
truncate table t1;
|
||||
affected rows: 0
|
||||
drop table t1;
|
||||
create table bug15205 (val int(11) default null) engine=csv;
|
||||
create table bug15205_2 (val int(11) default null) engine=csv;
|
||||
select * from bug15205;
|
||||
ERROR HY000: Got error 1 from storage engine
|
||||
select * from bug15205_2;
|
||||
val
|
||||
select * from bug15205;
|
||||
val
|
||||
drop table bug15205;
|
||||
drop table bug15205_2;
|
||||
|
@ -1384,3 +1384,27 @@ truncate table t1; -- truncate
|
||||
--disable_info
|
||||
drop table t1;
|
||||
|
||||
#
|
||||
# Bug #15205 Select from CSV table without the datafile causes crash
|
||||
#
|
||||
# NOTE: the bug is not deterministic
|
||||
|
||||
# The crash happens because the necessary cleanup after an error wasn't
|
||||
# performed. Namely, the table share, inserted in the hash during table
|
||||
# open, was not deleted from hash. At the same time the share was freed
|
||||
# when an error was encountered. Thus, subsequent access to the hash
|
||||
# resulted in scanning through deleted memory and we were geting a crash.
|
||||
# that's why we need two tables in the bugtest
|
||||
|
||||
create table bug15205 (val int(11) default null) engine=csv;
|
||||
create table bug15205_2 (val int(11) default null) engine=csv;
|
||||
--exec rm $MYSQLTEST_VARDIR/master-data/test/bug15205.CSV
|
||||
# system error (can't open the datafile)
|
||||
--error ER_GET_ERRNO
|
||||
select * from bug15205;
|
||||
select * from bug15205_2;
|
||||
--exec touch $MYSQLTEST_VARDIR/master-data/test/bug15205.CSV
|
||||
select * from bug15205;
|
||||
drop table bug15205;
|
||||
drop table bug15205_2;
|
||||
|
||||
|
Reference in New Issue
Block a user