Details
-
Bug
-
Status: Open (View Workflow)
-
Major
-
Resolution: Unresolved
-
10.3(EOL), 10.4(EOL), 10.5, 10.6, 10.7(EOL), 10.8(EOL), 10.9(EOL), 10.10(EOL), 10.11, 11.0(EOL)
Description
INSTALL PLUGIN RocksDB SONAME 'ha_rocksdb.so'; |
CREATE TABLE t1 (f INT) ENGINE=InnoDB; |
SELECT * FROM t1 INTO OUTFILE 'a'; |
SET SESSION collation_server=filename; |
DROP DATABASE test; |
SELECT User FROM mysql.user; |
CREATE TABLE t2 (a VARCHAR(2),b TEXT,KEY(a,b(1))) ENGINE=RocksDB; |
Leads to tread hangs in optimized builds:
11.0.1 4d09050ca77a7efac4565d46e4bcd85a5f210c53 (Optimized) |
MariaDB [test]> show processlist;
|
+----+------+-----------+------+---------+------+----------------+------------------------------------------------------------------+----------+
|
| Id | User | Host | db | Command | Time | State | Info | Progress |
|
+----+------+-----------+------+---------+------+----------------+------------------------------------------------------------------+----------+
|
| 4 | root | localhost | test | Query | 566 | creating table | CREATE TABLE t2 (a VARCHAR(2),b TEXT,KEY(a,b(1))) ENGINE=RocksDB | 0.000 |
|
| 5 | root | localhost | test | Query | 0 | starting | show processlist | 0.000 |
|
+----+------+-----------+------+---------+------+----------------+------------------------------------------------------------------+----------+
|
2 rows in set (0.000 sec)
|
And a crash in debug builds:
11.0.1 4d09050ca77a7efac4565d46e4bcd85a5f210c53 (Debug) |
mysqld: /test/11.0_dbg/storage/rocksdb/rdb_datadic.cc:3065: void myrocks::rdb_get_mem_comparable_space(CHARSET_INFO*, const std::vector<unsigned char>**, size_t*, size_t*): Assertion `cs->mbmaxlen <= MAX_MULTI_BYTE_CHAR_SIZE' failed.
|
11.0.1 4d09050ca77a7efac4565d46e4bcd85a5f210c53 (Debug) |
Core was generated by `/test/MD110223-mariadb-11.0.1-linux-x86_64-dbg/bin/mysqld --no-defaults --core-'.
|
Program terminated with signal SIGABRT, Aborted.
|
#0 __pthread_kill_implementation (no_tid=0, signo=6, threadid=23414417991232)
|
at ./nptl/pthread_kill.c:44
|
[Current thread is 1 (Thread 0x154b98112640 (LWP 3951499))]
|
(gdb) bt
|
#0 __pthread_kill_implementation (no_tid=0, signo=6, threadid=23414417991232) at ./nptl/pthread_kill.c:44
|
#1 __pthread_kill_internal (signo=6, threadid=23414417991232) at ./nptl/pthread_kill.c:78
|
#2 __GI___pthread_kill (threadid=23414417991232, signo=signo@entry=6) at ./nptl/pthread_kill.c:89
|
#3 0x0000154bb09ab476 in __GI_raise (sig=sig@entry=6) at ../sysdeps/posix/raise.c:26
|
#4 0x0000154bb09917f3 in __GI_abort () at ./stdlib/abort.c:79
|
#5 0x0000154bb099171b in __assert_fail_base (fmt=0x154bb0b46150 "%s%s%s:%u: %s%sAssertion `%s' failed.\n%n", assertion=0x154b76ec3210 "cs->mbmaxlen <= MAX_MULTI_BYTE_CHAR_SIZE", file=0x154b76ec1290 "/test/11.0_dbg/storage/rocksdb/rdb_datadic.cc", line=3065, function=<optimized out>) at ./assert/assert.c:92
|
#6 0x0000154bb09a2e96 in __GI___assert_fail (assertion=0x154b76ec3210 "cs->mbmaxlen <= MAX_MULTI_BYTE_CHAR_SIZE", file=0x154b76ec1290 "/test/11.0_dbg/storage/rocksdb/rdb_datadic.cc", line=3065, function=0x154b76ec31a0 "void myrocks::rdb_get_mem_comparable_space(CHARSET_INFO*, const std::vector<unsigned char>**, size_t*, size_t*)") at ./assert/assert.c:101
|
#7 0x0000154b76bc3709 in myrocks::rdb_get_mem_comparable_space (cs=cs@entry=0x562c814225a0 <my_charset_filename>, xfrm=xfrm@entry=0x154b9810d348, xfrm_len=xfrm_len@entry=0x154b9810d350, mb_len=mb_len@entry=0x154b9810d358) at /test/11.0_dbg/storage/rocksdb/rdb_datadic.cc:3065
|
#8 0x0000154b76bc6e87 in myrocks::Rdb_field_packing::setup (this=this@entry=0x154b9810d320, key_descr=key_descr@entry=0x0, field=0x154aa4294e38, keynr_arg=keynr_arg@entry=0, key_part_arg=key_part_arg@entry=0, key_length=<optimized out>) at /test/11.0_dbg/storage/rocksdb/rdb_datadic.cc:3422
|
#9 0x0000154b76b701f7 in myrocks::ha_rocksdb::check_keyread_allowed (this=this@entry=0x154aa4295090, inx=inx@entry=0, part=0, all_parts=<optimized out>) at /test/11.0_dbg/storage/rocksdb/ha_rocksdb.cc:7931
|
#10 0x0000154b76b70342 in myrocks::ha_rocksdb::index_flags (this=0x154aa4295090, inx=0, part=<optimized out>, all_parts=<optimized out>) at /test/11.0_dbg/storage/rocksdb/ha_rocksdb.cc:8286
|
#11 0x0000562c8008fd24 in TABLE_SHARE::init_from_binary_frm_image (this=this@entry=0x154b9810e010, thd=thd@entry=0x154aa4000d58, write=<optimized out>, frm_image=<optimized out>, frm_length=<optimized out>, par_image=par_image@entry=0x0, par_length=<optimized out>) at /test/11.0_dbg/sql/table.cc:3076
|
#12 0x0000562c8023c77e in ha_create_table (thd=thd@entry=0x154aa4000d58, path=<optimized out>, db=0x154aa4013988 "test", table_name=0x154aa4013238 "t2", create_info=create_info@entry=0x154b9810f410, frm=frm@entry=0x154b9810ee60, skip_frm_file=false) at /test/11.0_dbg/sql/handler.cc:5911
|
#13 0x0000562c80044d86 in create_table_impl (thd=thd@entry=0x154aa4000d58, ddl_log_state_create=ddl_log_state_create@entry=0x154b9810f190, ddl_log_state_rm=<optimized out>, ddl_log_state_rm@entry=0x154b9810f320, orig_db=@0x154aa4013288: {str = 0x154aa4013988 "test", length = 4}, orig_table_name=@0x154aa4013298: {str = 0x154aa4013238 "t2", length = 2}, db=@0x154aa4013288: {str = 0x154aa4013988 "test", length = 4}, table_name=@0x154aa4013298: {str = 0x154aa4013238 "t2", length = 2}, path=@0x154b9810ee50: {str = 0x154b9810ee70 "./test/t2", length = 9}, options=<optimized out>, create_info=0x154b9810f410, alter_info=0x154b9810f230, create_table_mode=0, is_trans=0x154b9810f170, key_info=0x154b9810ee48, key_count=0x154b9810ee44, frm=0x154b9810ee60) at /test/11.0_dbg/sql/sql_table.cc:4607
|
#14 0x0000562c800450fc in mysql_create_table_no_lock (thd=thd@entry=0x154aa4000d58, ddl_log_state_create=ddl_log_state_create@entry=0x154b9810f190, ddl_log_state_rm=ddl_log_state_rm@entry=0x154b9810f320, db=db@entry=0x154aa4013288, table_name=table_name@entry=0x154aa4013298, create_info=create_info@entry=0x154b9810f410, alter_info=0x154b9810f230, is_trans=0x154b9810f170, create_table_mode=0, table_list=0x154aa4013270) at /test/11.0_dbg/sql/sql_table.cc:4708
|
#15 0x0000562c80046fb4 in mysql_create_table (alter_info=0x154b9810f230, create_info=0x154b9810f410, create_table=0x154aa4013270, thd=0x154aa4000d58) at /test/11.0_dbg/sql/sql_table.cc:4824
|
#16 Sql_cmd_create_table_like::execute (this=<optimized out>, thd=0x154aa4000d58) at /test/11.0_dbg/sql/sql_table.cc:12411
|
#17 0x0000562c7ff72cb7 in mysql_execute_command (thd=thd@entry=0x154aa4000d58, is_called_from_prepared_stmt=is_called_from_prepared_stmt@entry=false) at /test/11.0_dbg/sql/sql_parse.cc:6001
|
#18 0x0000562c7ff746d0 in mysql_parse (thd=thd@entry=0x154aa4000d58, rawbuf=<optimized out>, length=<optimized out>, parser_state=parser_state@entry=0x154b981112c0) at /test/11.0_dbg/sql/sql_parse.cc:8000
|
#19 0x0000562c7ff76864 in dispatch_command (command=command@entry=COM_QUERY, thd=thd@entry=0x154aa4000d58, packet=packet@entry=0x154aa400ae09 "CREATE TABLE t2 (a VARCHAR(2),b TEXT,KEY(a,b(1))) ENGINE=RocksDB", packet_length=packet_length@entry=64, blocking=blocking@entry=true) at /test/11.0_dbg/sql/sql_class.h:242
|
#20 0x0000562c7ff786bd in do_command (thd=0x154aa4000d58, blocking=blocking@entry=true) at /test/11.0_dbg/sql/sql_parse.cc:1407
|
#21 0x0000562c800c34e4 in do_handle_one_connection (connect=<optimized out>, connect@entry=0x562c822fbca8, put_in_cache=put_in_cache@entry=true) at /test/11.0_dbg/sql/sql_connect.cc:1416
|
#22 0x0000562c800c3743 in handle_one_connection (arg=0x562c822fbca8) at /test/11.0_dbg/sql/sql_connect.cc:1318
|
#23 0x0000154bb09fdb43 in start_thread (arg=<optimized out>) at ./nptl/pthread_create.c:442
|
#24 0x0000154bb0a8fa00 in clone3 () at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:81
|
Crash confirmed present in:
MariaDB: 10.3.38 (dbg), 10.4.29 (dbg), 10.5.20 (dbg), 10.6.13 (dbg), 10.7.8 (dbg), 10.8.8 (dbg), 10.9.6 (dbg), 10.10.4 (dbg), 10.11.2 (dbg), 11.0.1 (dbg)
Hang confirmed present in:
MariaDB: 10.3.38 (opt), 10.4.29 (opt), 10.5.20 (opt), 10.6.13 (opt), 10.7.8 (opt), 10.8.8 (opt), 10.9.6 (opt), 10.10.4 (opt), 10.11.2 (opt), 11.0.1 (opt)