Details
-
Type:
Bug
-
Status: Open
-
Priority:
Major
-
Resolution: Unresolved
-
Affects Version/s: 5.5.36-galera
-
Fix Version/s: 5.5.46-galera
-
Component/s: None
-
Labels:
Description
mysqld: maria-5.5-galera/sql/protocol.cc:1094: virtual bool Protocol_text::store_long(longlong): Assertion `field_types == 0 || field_types[field_pos] == MYSQL_TYPE_INT24 || field_types[field_pos] == MYSQL_TYPE_LONG' failed. [ERROR] mysqld got signal 6 ;
Selected threads:
Thread 10 (Thread 0x7f9d20328700 (LWP 3423)): #0 pthread_cond_timedwait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S:215 #1 0x0000000000cfcb90 in safe_cond_timedwait (cond=0x34ce468, mp=0x34ce3c0, abstime=0x7f9d20326210, file=0xd9a3c8 "maria-5.5-galera/sql/mdl.cc", line=1202) at maria-5.5-galera/mysys/thr_mutex.c:547 #2 0x0000000000725fc1 in inline_mysql_cond_timedwait (that=0x34ce468, mutex=0x34ce3c0, abstime=0x7f9d20326210, src_file=0xd9a3c8 "maria-5.5-galera/sql/mdl.cc", src_line=1202) at maria-5.5-galera/include/mysql/psi/mysql_thread.h:1018 #3 0x0000000000727095 in MDL_wait::timed_wait (this=0x34ce3c0, thd=0x34ce2d0, abs_timeout=0x7f9d20326210, set_status_on_timeout=false, wait_state_name=0xd9a308 "Waiting for stored function metadata lock") at maria-5.5-galera/sql/mdl.cc:1202 #4 0x0000000000728bc0 in MDL_context::acquire_lock (this=0x34ce3c0, mdl_request=0x7f9d20326690, lock_wait_timeout=31536000) at maria-5.5-galera/sql/mdl.cc:2209 #5 0x000000000072903c in MDL_context::acquire_locks (this=0x34ce3c0, mdl_requests=0x7f9d20326320, lock_wait_timeout=31536000) at maria-5.5-galera/sql/mdl.cc:2320 #6 0x00000000008bc6d5 in lock_object_name (thd=0x34ce2d0, mdl_type=MDL_key::FUNCTION, db=0x7f9cd42ca150 "test", name=0x7f9cd42ca148 "func1") at maria-5.5-galera/sql/lock.cc:903 #7 0x000000000090eec7 in sp_drop_routine (thd=0x34ce2d0, type=TYPE_ENUM_FUNCTION, name=0x7f9cd42ca158) at maria-5.5-galera/sql/sp.cc:1259 #8 0x000000000061fcac in mysql_execute_command (thd=0x34ce2d0) at maria-5.5-galera/sql/sql_parse.cc:4558 #9 0x0000000000624da9 in mysql_parse (thd=0x34ce2d0, rawbuf=0x7f9cd42ca0a8 "DROP FUNCTION func1", length=19, parser_state=0x7f9d20327550) at maria-5.5-galera/sql/sql_parse.cc:6304 #10 0x0000000000623e70 in wsrep_mysql_parse (thd=0x34ce2d0, rawbuf=0x7f9cd42ca0a8 "DROP FUNCTION func1", length=19, parser_state=0x7f9d20327550) at maria-5.5-galera/sql/sql_parse.cc:6069 #11 0x0000000000616335 in dispatch_command (command=COM_QUERY, thd=0x34ce2d0, packet=0x35bccc1 "DROP FUNCTION func1", packet_length=19) at maria-5.5-galera/sql/sql_parse.cc:1245 #12 0x0000000000615114 in do_command (thd=0x34ce2d0) at maria-5.5-galera/sql/sql_parse.cc:891 #13 0x000000000071ddd7 in do_handle_one_connection (thd_arg=0x34ce2d0) at maria-5.5-galera/sql/sql_connect.cc:1291 #14 0x000000000071d7af in handle_one_connection (arg=0x34ce2d0) at maria-5.5-galera/sql/sql_connect.cc:1199 #15 0x00007f9d2fad3e9a in start_thread (arg=0x7f9d20328700) at pthread_create.c:308 #16 0x00007f9d2f204cbd in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112 #17 0x0000000000000000 in ?? () Thread 1 (Thread 0x7f9d202df700 (LWP 3425)): #0 __pthread_kill (threadid=<optimized out>, signo=<optimized out>) at ../nptl/sysdeps/unix/sysv/linux/pthread_kill.c:63 #1 0x0000000000cf4b80 in my_write_core (sig=6) at maria-5.5-galera/mysys/stacktrace.c:457 #2 0x00000000007e5240 in handle_fatal_signal (sig=6) at maria-5.5-galera/sql/signal_handler.cc:262 #3 <signal handler called> #4 0x00007f9d2f147425 in __GI_raise (sig=<optimized out>) at ../nptl/sysdeps/unix/sysv/linux/raise.c:64 #5 0x00007f9d2f14ab8b in __GI_abort () at abort.c:91 #6 0x00007f9d2f1400ee in __assert_fail_base (fmt=<optimized out>, assertion=0xd5bd00 "field_types == 0 || field_types[field_pos] == MYSQL_TYPE_INT24 || field_types[field_pos] == MYSQL_TYPE_LONG", file=0xd5b750 "maria-5.5-galera/sql/protocol.cc", line=<optimized out>, function=<optimized out>) at assert.c:94 #7 0x00007f9d2f140192 in __GI___assert_fail (assertion=0xd5bd00 "field_types == 0 || field_types[field_pos] == MYSQL_TYPE_INT24 || field_types[field_pos] == MYSQL_TYPE_LONG", file=0xd5b750 "maria-5.5-galera/sql/protocol.cc", line=1094, function=0xd5c360 "virtual bool Protocol_text::store_long(longlong)") at assert.c:103 #8 0x000000000057a58e in Protocol_text::store_long (this=0x35c1438, from=2) at maria-5.5-galera/sql/protocol.cc:1092 #9 0x000000000080439a in Item::send (this=0x7f9cec0150c8, protocol=0x35c1438, buffer=0x7f9d202dc250) at maria-5.5-galera/sql/item.cc:6367 #10 0x0000000000579c26 in Protocol::send_result_set_row (this=0x35c1438, row_items=0x7f9cec014428) at maria-5.5-galera/sql/protocol.cc:908 #11 0x00000000005dfd7a in select_send::send_data (this=0x7f9cec02c008, items=...) at maria-5.5-galera/sql/sql_class.cc:2591 #12 0x00000000006521fc in JOIN::exec (this=0x7f9cec02c028) at maria-5.5-galera/sql/sql_select.cc:2235 #13 0x0000000000655073 in mysql_select (thd=0x35c0e70, rref_pointer_array=0x7f9cec014570, tables=0x0, wild_num=0, fields=..., conds=0x0, og_num=0, order=0x0, group=0x0, having=0x0, proc_param=0x0, select_options=2147749632, result=0x7f9cec02c008, unit=0x7f9cec013c40, select_lex=0x7f9cec014318) at maria-5.5-galera/sql/sql_select.cc:3056 #14 0x000000000064bbfa in handle_select (thd=0x35c0e70, lex=0x7f9cec013b90, result=0x7f9cec02c008, setup_tables_done_option=0) at maria-5.5-galera/sql/sql_select.cc:316 #15 0x000000000062166e in execute_sqlcom_select (thd=0x35c0e70, all_tables=0x0) at maria-5.5-galera/sql/sql_parse.cc:5014 #16 0x00000000006191ab in mysql_execute_command (thd=0x35c0e70) at maria-5.5-galera/sql/sql_parse.cc:2488 #17 0x0000000000919568 in sp_instr_stmt::exec_core (this=0x7f9cec015230, thd=0x35c0e70, nextp=0x7f9d202dd6d8) at maria-5.5-galera/sql/sp_head.cc:3189 #18 0x0000000000918db5 in sp_lex_keeper::reset_lex_and_exec_core (this=0x7f9cec015270, thd=0x35c0e70, nextp=0x7f9d202dd6d8, open_tables=false, instr=0x7f9cec015230) at maria-5.5-galera/sql/sp_head.cc:2983 #19 0x0000000000919322 in sp_instr_stmt::execute (this=0x7f9cec015230, thd=0x35c0e70, nextp=0x7f9d202dd6d8) at maria-5.5-galera/sql/sp_head.cc:3121 #20 0x0000000000914f48 in sp_head::execute (this=0x7f9cec0133e8, thd=0x35c0e70, merge_da_on_success=true) at maria-5.5-galera/sql/sp_head.cc:1425 #21 0x0000000000916dd3 in sp_head::execute_procedure (this=0x7f9cec0133e8, thd=0x35c0e70, args=0x35c4100) at maria-5.5-galera/sql/sp_head.cc:2182 #22 0x000000000061f628 in mysql_execute_command (thd=0x35c0e70) at maria-5.5-galera/sql/sql_parse.cc:4445 #23 0x0000000000624da9 in mysql_parse (thd=0x35c0e70, rawbuf=0x7f9cec0063c8 "CALL proc1 ()", length=13, parser_state=0x7f9d202de550) at maria-5.5-galera/sql/sql_parse.cc:6304 #24 0x0000000000623e70 in wsrep_mysql_parse (thd=0x35c0e70, rawbuf=0x7f9cec0063c8 "CALL proc1 ()", length=13, parser_state=0x7f9d202de550) at maria-5.5-galera/sql/sql_parse.cc:6069 #25 0x0000000000616335 in dispatch_command (command=COM_QUERY, thd=0x35c0e70, packet=0x35c65d1 "CALL proc1 ()", packet_length=13) at maria-5.5-galera/sql/sql_parse.cc:1245 #26 0x0000000000615114 in do_command (thd=0x35c0e70) at maria-5.5-galera/sql/sql_parse.cc:891 #27 0x000000000071ddd7 in do_handle_one_connection (thd_arg=0x35c0e70) at maria-5.5-galera/sql/sql_connect.cc:1291 #28 0x000000000071d7af in handle_one_connection (arg=0x35c0e70) at maria-5.5-galera/sql/sql_connect.cc:1199 #29 0x00007f9d2fad3e9a in start_thread (arg=0x7f9d202df700) at pthread_create.c:308 #30 0x00007f9d2f204cbd in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112 #31 0x0000000000000000 in ?? ()
Trying to get some variables. Some pointers may be invalid and cause the dump to abort. Query (0x7f9cec02bf08): SELECT func1() Connection ID (thread ID): 8 Status: KILL_QUERY
It's enough to run the test workflow on one node with two threads.
Server command line:
maria-5.5-galera/sql/mysqld --no-defaults --basedir=maria-5.5-galera --datadir=maria-5.5-galera/data --log-error=maria-5.5-galera/data/log.err --lc-messages-dir=maria-5.5-galera/sql/share/ --port=8306 --socket=maria-5.5-galera/data/tmp/mysql.sock --tmpdir=maria-5.5-galera/data/tmp --core --datadir=maria-5.5-galera/data1 --tmpdir=maria-5.5-galera/data1/tmp --port=8306 --socket=maria-5.5-galera/data1/tmp/node1.sock --wsrep-provider=galera/libgalera_smm.so --wsrep-cluster-address=gcomm:// --binlog-format=row --wsrep-sst-method=rsync --log-error=maria-5.5-galera/data1/log.err --innodb_autoinc_lock_mode=2 --innodb_locks_unsafe_for_binlog=1 --general-log=1
RQG grammar (test.yy):
query: CALL proc1 () | ddl ; ddl: create_function | drop_function | create_procedure | drop_procedure ; create_function: CREATE FUNCTION func1 () RETURNS INTEGER RETURN _digit ; create_procedure: CREATE PROCEDURE proc1 () BEGIN SELECT func1() ; END ; drop_function: DROP FUNCTION func1 ; drop_procedure: DROP PROCEDURE proc1 ;
RQG command line:
perl ./gentest.pl --threads=2 --queries=100M --duration=600 --dsn=dbi:mysql:host=127.0.0.1:port=8306:user=root:database=test --grammar=test.yy
bzr version-info:
revision-id: seppo.jaakola@codership.com-20130216222240-syypg8kc355qcpsp revno: 3380 branch-nick: maria-5.5-galera
Gliffy Diagrams
Attachments
Activity
- All
- Comments
- Work Log
- History
- Activity
- Transitions
Still reproducible on the current maria-5.5-galera tree