Details
-
Type:
Bug
-
Status: Closed
-
Priority:
Blocker
-
Resolution: Cannot Reproduce
-
Affects Version/s: 5.5.34-galera
-
Fix Version/s: 5.5.36-galera
-
Component/s: None
-
Labels:None
-
Environment:Linux
Description
mysqld process does not always stop even if you kill -9 <process_id>
Here how to repeat (you need latest version from mariadb-galera-5.5 branch):
Put attached files to mysql-test/suite/wsrep/t/ directory
test.opt
-binlog-format=row --innodb_autoinc_lock_mode=2 --innodb_locks_unsafe_for_binlog=1 --wsrep-provider=/usr/lib/libgalera_smm.so --wsrep-cluster-address=gcomm:// --wsrep-on=1 --log-bin --wsrep-debug=1
test.test
--source include/have_innodb.inc
--source include/have_wsrep.inc
--source include/have_binlog_format_row.inc
SET GLOBAL lock_wait_timeout = 2;
SET GLOBAL innodb_lock_wait_timeout = 1;
CREATE TABLE t1 (pk INT PRIMARY KEY) ENGINE=InnoDB;
CREATE OR REPLACE VIEW v1 AS SELECT pk FROM t1;
CREATE FUNCTION func1() RETURNS INTEGER RETURN 4;
CREATE FUNCTION func2() RETURNS INTEGER RETURN 4;
CREATE PROCEDURE proc1() SELECT func1() FROM v1;
--connect (con1,localhost,root,,test)
--connect (con2,localhost,root,,test)
--let $run = 100
while ($run)
{
--connection con1
--send
CREATE OR REPLACE ALGORITHM = TEMPTABLE VIEW v1 AS SELECT func2() AS pk FROM t1;
--connection con2
CALL proc1();
--connection con1
--reap
--dec $run
}
then run at mysql-test directory
./mysql-test-run.pl --ddd --suite=wsrep test
that will start debugger, type run at debugger command line, it will crash with SIGSEGV (yes this is known another bug)
type quit on command line, then see if process is still there
ps -ef | grep mysqld (it should be there and also address2line)
Now only way to get rid of is reboot. There are other similar means to get process to zombie state too easily...
Gliffy Diagrams
Attachments
Activity
- All
- Comments
- Work Log
- History
- Activity
- Transitions
the test fails with the following error :
mysqltest: At line 30: query 'CALL proc1()' failed: 2027: Malformed packet