--reap in test case crashes server

Bug #314871 reported by Brian Aker
2
Affects Status Importance Assigned to Milestone
Drizzle
Fix Released
High
Brian Aker

Bug Description

Look at test case lock_multi.

#create table t1 (i int);
#connection locker;
#lock table t1 read;
#connection writer;
#--send update t1 set i= 10;
#connection reader;
#let $wait_condition=
# select count(*) = 1 from information_schema.processlist
# where state = "Table lock" and info = "update t1 set i= 10";
#--source include/wait_condition.inc
#--send select * from t1;
#connection default;
#let $wait_condition=
# select count(*) = 1 from information_schema.processlist
# where state = "Table lock" and info = "select * from t1";
#--source include/wait_condition.inc
#let $ID= `select id from information_schema.processlist where state = "Table lock" and info = "update t1 set i= 10"`;
#--replace_result $ID ID
#eval kill query $ID;
#connection reader;
#--reap
#connection writer;
#--error ER_QUERY_INTERRUPTED
#--reap
#connection locker;
#unlock tables;
#connection default;
#drop table t1;

Revision history for this message
Padraig O'Sullivan (posulliv) wrote :

Confirmed on trunk:

$ ./test-run lock_multi
Logging: ./test-run lock_multi
Changed limits: max_open_files: 1024 max_connections: 886 table_cache: 64InnoDB: The first specified data file ./ibdata1 did not exist:
InnoDB: a new database to be created!
090201 11:49:00 InnoDB: Setting file ./ibdata1 size to 10 MB
InnoDB: Database physically writes the file full: wait...
090201 11:49:01 InnoDB: Log file ./ib_logfile0 did not exist: new to be created
InnoDB: Setting log file ./ib_logfile0 size to 5 MB
InnoDB: Database physically writes the file full: wait...
090201 11:49:01 InnoDB: Log file ./ib_logfile1 did not exist: new to be created
InnoDB: Setting log file ./ib_logfile1 size to 5 MB
InnoDB: Database physically writes the file full: wait...
InnoDB: Doublewrite buffer not found: creating new
InnoDB: Doublewrite buffer created
InnoDB: Creating foreign key constraint system tables
InnoDB: Foreign key constraint system tables created
090201 11:49:01 InnoDB Plugin 1.0.2 started; log sequence number 0
Entering pool shutdown
090201 11:49:01 InnoDB: Starting shutdown...
090201 11:49:02 InnoDB: Shutdown completed; log sequence number 46409
Plugin 'MyISAM' has ref_count=1 after deinitialization.MySQL Version 7.0.0
Using MTR_BUILD_THREAD = -69.4
Using MASTER_MYPORT = 9306
Using MASTER_MYPORT1 = 9307
Using SLAVE_MYPORT = 9308
Using SLAVE_MYPORT1 = 9309
Using SLAVE_MYPORT2 = 9310
Killing Possible Leftover Processes
Sleep 1 second waiting for processes to die
Removing Stale Files
Creating Directories
=======================================================
DEFAULT STORAGE ENGINE: innodb
TEST RESULT TIME (ms)
-------------------------------------------------------

main.lock_multi [ fail ]

drizzletest: At line 286: query 'reap' failed with wrong errno 3: '��', instead of 1317...

The result from queries just before the failure was:
< snip >
ERROR HY000: Can't execute the query because you have a conflicting read lock
UNLOCK TABLES;
DROP DATABASE mysqltest_1;
ERROR HY000: Can't drop database 'mysqltest_1'; database doesn't exist
create table t1 (f1 int not null auto_increment, primary key(f1)) engine=innodb;
lock tables t1 write;
alter table t1 auto_increment=0;
alter table t1 auto_increment=0;
unlock tables;
drop table t1;
End of 5.0 tests
create table t1 (i int);
lock table t1 read;
update t1 set i= 10;;
select * from t1;;
Timeout in wait_condition.inc for select count(*) = 1 from information_schema.processlist
where state = "Table lock" and info = "select * from t1"
kill query ID;
i
ERROR HY000:

Changed in drizzle:
status: New → Confirmed
Revision history for this message
Lee Bieber (kalebral-deactivatedaccount) wrote :

The problem shown in this bug is not reproducible on several of the systems that I tried. Marking it as fixed.

Changed in drizzle:
importance: Undecided → High
milestone: none → cirrus
status: Confirmed → Fix Released
Changed in drizzle:
assignee: nobody → Brian Aker (brianaker)
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.