We're updating the issue view to help you get more done.Learn more

Failing assertion: state == TRX_STATE_NOT_STARTED on concurrent CREATE OR REPLACE and transactional UPDATE

--source include/have_innodb.inc

CREATE TABLE t1 (a INT, b INT) ENGINE=InnoDB;
INSERT INTO t1 VALUES (1,1),(2,2);

CREATE TABLE t2 (c INT, d INT) ENGINE=InnoDB;
INSERT INTO t2 VALUES (1,1), (2,2);

CREATE TABLE t3 (e INT) ENGINE=InnoDB;

CREATE TABLE t4 ENGINE=InnoDB AS SELECT * FROM t2;

--connect (con11,localhost,root,,test)

BEGIN;
UPDATE t1 SET a = 0 WHERE a = ( SELECT e FROM t3 );

--connect (con12,localhost,root,,test)

--send 
UPDATE t4 SET d = 1 WHERE d = ( SELECT a FROM t1 ) ORDER BY c LIMIT 6;

--connection default

CREATE OR REPLACE TABLE t5 ENGINE=InnoDB AS SELECT * FROM t2;

--connection con11

UPDATE t4 SET d = 9 WHERE d = ( SELECT d FROM t5 );

--connection con12
--reap
2014-02-08 01:23:59 7f2faf76c700  InnoDB: Assertion failure in thread 139842783987456 in file trx0trx.ic line 60
InnoDB: Failing assertion: state == TRX_STATE_NOT_STARTED
#5  0x00007f2fc650e6f0 in *__GI_abort () at abort.c:92
#6  0x00007f2fbeb33661 in trx_state_eq (trx=0x7f2fb8839478, state=TRX_STATE_ACTIVE) at 10.0/storage/xtradb/include/trx0trx.ic:60
#7  0x00007f2fbeb3eb45 in ha_innodb::unlock_row (this=0x7f2fba9a3088) at 10.0/storage/xtradb/handler/ha_innodb.cc:7976
#8  0x000000000084d177 in find_all_keys (param=0x7f2faf76a2c0, select=0x7f2fb8831c98, fs_info=0x7f2faf76a250, buffpek_pointers=0x7f2faf76a4e0, tempfile=0x7f2faf76a340, pq=0x7f2faf76a200, found_rows=0x7f2faf76aa88) at 10.0/sql/filesort.cc:741
#9  0x000000000084bd8d in filesort (thd=0x7f2fbd5bd070, table=0x7f2fba8acc70, sortorder=0x7f2fb88321d8, s_length=1, select=0x7f2fb8831c98, max_rows=6, sort_positions=true, examined_rows=0x7f2faf76aa90, found_rows=0x7f2faf76aa88) at 10.0/sql/filesort.cc:294
#10 0x00000000007324f1 in mysql_update (thd=0x7f2fbd5bd070, table_list=0x7f2fb882b1c0, fields=..., values=..., conds=0x7f2fb882cd78, order_num=1, order=0x7f2fb882cff0, limit=6, handle_duplicates=DUP_ERROR, ignore=false, found_return=0x7f2faf76b290, updated_return=0x7f2faf76b288) at 10.0/sql/sql_update.cc:558
#11 0x000000000066d785 in mysql_execute_command (thd=0x7f2fbd5bd070) at 10.0/sql/sql_parse.cc:3331
#12 0x0000000000675eab in mysql_parse (thd=0x7f2fbd5bd070, rawbuf=0x7f2fb882b088 "UPDATE t4 SET d = 1 WHERE d = ( SELECT a FROM t1 ) ORDER BY c LIMIT 6", length=69, parser_state=0x7f2faf76b630) at 10.0/sql/sql_parse.cc:6447
#13 0x0000000000668c79 in dispatch_command (command=COM_QUERY, thd=0x7f2fbd5bd070, packet=0x7f2fbd5c3071 "UPDATE t4 SET d = 1 WHERE d = ( SELECT a FROM t1 ) ORDER BY c LIMIT 6", packet_length=69) at 10.0/sql/sql_parse.cc:1308
#14 0x000000000066801b in do_command (thd=0x7f2fbd5bd070) at 10.0/sql/sql_parse.cc:1005
#15 0x0000000000782275 in do_handle_one_connection (thd_arg=0x7f2fbd5bd070) at 10.0/sql/sql_connect.cc:1379
#16 0x0000000000781fc8 in handle_one_connection (arg=0x7f2fbd5bd070) at 10.0/sql/sql_connect.cc:1293
#17 0x0000000000aa8661 in pfs_spawn_thread (arg=0x7f2fbd7ff490) at 10.0/storage/perfschema/pfs.cc:1853
#18 0x00007f2fc7a64b50 in start_thread (arg=<optimized out>) at pthread_create.c:304
#19 0x00007f2fc65b3a7d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
revision-id: sergii@pisem.net-20140206153840-87zgw53lgkyvvdvp
revno: 3992
branch-nick: 10.0

Status

Assignee

Michael Widenius

Reporter

Elena Stepanova