Bug #74585 Failing assertion: *mbmaxlen < 5 in ha_innodb.cc line 1588
Submitted: 27 Oct 2014 9:39 Modified: 22 Dec 2015 6:07
Reporter: Ramesh Sivaraman Email Updates:
Status: Duplicate Impact on me:
None 
Category:MySQL Server: DDL Severity:S3 (Non-critical)
Version:5.6.20-debug, 5.6.22, 5.7.6, 5.5.40 OS:Linux (CentOS 7)
Assigned to: CPU Architecture:Any

[27 Oct 2014 9:39] Ramesh Sivaraman
Description:
2014-10-27 09:31:33 7fab9eaa9700  InnoDB: Assertion failure in thread 140375078115072 in file ha_innodb.cc line 1588
InnoDB: Failing assertion: *mbmaxlen < 5

**** GDB info

#0  0x00007fab9e4b0771 in pthread_kill () from /lib64/libpthread.so.0
#1  0x0000000000a9035e in my_write_core (sig=6) at /ssd/ramesh/mysql-server/mysql-5.6/mysys/stacktrace.c:422
#2  0x0000000000723688 in handle_fatal_signal (sig=6) at /ssd/ramesh/mysql-server/mysql-5.6/sql/signal_handler.cc:230
#3  <signal handler called>
#4  0x00007fab9d2bc5c9 in raise () from /lib64/libc.so.6
#5  0x00007fab9d2bdcd8 in abort () from /lib64/libc.so.6
#6  0x0000000000b472c4 in innobase_get_cset_width (cset=17, mbminlen=0x7fab9eaa29b8, mbmaxlen=0x7fab9eaa29b0) at /ssd/ramesh/mysql-server/mysql-5.6/
storage/innobase/handler/ha_innodb.cc:1588
#7  0x0000000000d671e3 in dtype_get_mblen (mtype=12, prtype=1114383, mbminlen=0x7fab9eaa29b8, mbmaxlen=0x7fab9eaa29b0) at /ssd/ramesh/mysql-server/m
ysql-5.6/storage/innobase/include/data0type.ic:96
#8  0x0000000000d68e56 in dict_mem_fill_column_struct (column=0x7fab020c8078, col_pos=0, mtype=12, prtype=1114383, col_len=95) at /ssd/ramesh/mysql-
server/mysql-5.6/storage/innobase/dict/dict0mem.cc:444
#9  0x0000000000d686a0 in dict_mem_table_add_col (table=0x7fab02081378, heap=0x7fab020a7000, name=0x7fab020978c1 "A", mtype=12, prtype=1114383, len=
95) at /ssd/ramesh/mysql-server/mysql-5.6/storage/innobase/dict/dict0mem.cc:257
#10 0x0000000000b52fb0 in create_table_def (trx=0x7fab020c7a78, form=0x7fab9eaa39a0, table_name=0x7fab9eaa2d70 "data/#sql195d_1_0", temp_path=0x7fab
9eaa2f70 "/ssd/ramesh/mysql-server/mysql-5.6.20-linux-x86_64-debug/data/#sql195d_1_0", remote_path=0x7fab9eaa3170 "", flags=1, flags2=81) at /ssd/ra
mesh/mysql-server/mysql-5.6/storage/innobase/handler/ha_innodb.cc:8645
#11 0x0000000000b54975 in ha_innobase::create (this=0x7fab0207f010, name=0x7fab9eaa5950 "/ssd/ramesh/mysql-server/mysql-5.6.20-linux-x86_64-debug/data/#sql195d_1_0", form=0x7fab9eaa39a0, create_info=0x7fab9eaa73d0) at /ssd/ramesh/mysql-server/mysql-5.6/storage/innobase/handler/ha_innodb.cc:9561
#12 0x000000000063c426 in handler::ha_create (this=0x7fab0207f010, name=0x7fab9eaa5950 "/ssd/ramesh/mysql-server/mysql-5.6.20-linux-x86_64-debug/data/#sql195d_1_0", form=0x7fab9eaa39a0, info=0x7fab9eaa73d0) at /ssd/ramesh/mysql-server/mysql-5.6/sql/handler.cc:4524
#13 0x000000000063ccdd in ha_create_table (thd=0x7fab0b324000, path=0x7fab9eaa5950 "/ssd/ramesh/mysql-server/mysql-5.6.20-linux-x86_64-debug/data/#sql195d_1_0", db=0x7fab0201f698 "test", table_name=0x7fab0201f100 "v0as", create_info=0x7fab9eaa73d0, update_create_info=false, is_temp_table=false) at /ssd/ramesh/mysql-server/mysql-5.6/sql/handler.cc:4762
#14 0x00000000008a3b36 in rea_create_table (thd=0x7fab0b324000, path=0x7fab9eaa5950 "/ssd/ramesh/mysql-server/mysql-5.6.20-linux-x86_64-debug/data/#sql195d_1_0", db=0x7fab0201f698 "test", table_name=0x7fab0201f100 "v0as", create_info=0x7fab9eaa73d0, create_fields=..., keys=0, key_info=0x7fab0201ff08, file=0x7fab02074010, no_ha_table=false) at /ssd/ramesh/mysql-server/mysql-5.6/sql/unireg.cc:527
#15 0x000000000083a7ce in create_table_impl (thd=0x7fab0b324000, db=0x7fab0201f698 "test", table_name=0x7fab0201f100 "v0as", path=0x7fab9eaa5950 "/ssd/ramesh/mysql-server/mysql-5.6.20-linux-x86_64-debug/data/#sql195d_1_0", create_info=0x7fab9eaa73d0, alter_info=0x7fab9eaa6e70, internal_tmp_table=false, select_field_count=1, no_ha_table=false, is_trans=0x0, key_info=0x7fab9eaa5b58, key_count=0x7fab9eaa5b54) at /ssd/ramesh/mysql-server/mysql-5.6/sql/sql_table.cc:4919
#16 0x000000000083ac99 in mysql_create_table_no_lock (thd=0x7fab0b324000, db=0x7fab0201f698 "test", table_name=0x7fab0201f100 "v0as", create_info=0x7fab9eaa73d0, alter_info=0x7fab9eaa6e70, select_field_count=1, is_trans=0x0) at /ssd/ramesh/mysql-server/mysql-5.6/sql/sql_table.cc:5029
#17 0x00000000007b6d76 in create_table_from_items (thd=0x7fab0b324000, create_info=0x7fab9eaa73d0, create_table=0x7fab0201f138, alter_info=0x7fab9eaa6e70, items=0x7fab0b326998) at /ssd/ramesh/mysql-server/mysql-5.6/sql/sql_insert.cc:4035
#18 0x00000000007b6fff in select_create::prepare (this=0x7fab0201f7b8, values=..., u=0x7fab0b326230) at /ssd/ramesh/mysql-server/mysql-5.6/sql/sql_insert.cc:4101
#19 0x00000000007f71f3 in JOIN::prepare (this=0x7fab0201f938, tables_init=0x0, wild_num=0, conds_init=0x0, og_num=0, order_init=0x0, group_init=0x0, having_init=0x0, select_lex_arg=0x7fab0b326878, unit_arg=0x7fab0b326230) at /ssd/ramesh/mysql-server/mysql-5.6/sql/sql_resolver.cc:348
#20 0x00000000007fe013 in mysql_prepare_select (thd=0x7fab0b324000, tables=0x0, wild_num=0, fields=..., conds=0x0, og_num=0, order=0x0, group=0x0, having=0x0, select_options=2416184064, result=0x7fab0201f7b8, unit=0x7fab0b326230, select_lex=0x7fab0b326878, free_join=0x7fab9eaa6c97) at /ssd/ramesh/mysql-server/mysql-5.6/sql/sql_select.cc:1054
#21 0x00000000007fe2ed in mysql_select (thd=0x7fab0b324000, tables=0x0, wild_num=0, fields=..., conds=0x0, order=0x7fab0b326a40, group=0x7fab0b326978, having=0x0, select_options=2416184064, result=0x7fab0201f7b8, unit=0x7fab0b326230, select_lex=0x7fab0b326878) at /ssd/ramesh/mysql-server/mysql-5.6/sql/sql_select.cc:1177
#22 0x00000000007fc4c7 in handle_select (thd=0x7fab0b324000, result=0x7fab0201f7b8, setup_tables_done_option=0) at /ssd/ramesh/mysql-server/mysql-5.6/sql/sql_select.cc:110
#23 0x00000000007d0404 in mysql_execute_command (thd=0x7fab0b324000) at /ssd/ramesh/mysql-server/mysql-5.6/sql/sql_parse.cc:3041
#24 0x00000000007d8fa4 in mysql_parse (thd=0x7fab0b324000, rawbuf=0x7fab0201f010 "create temporary table v0as select 'This is temp. table' A", length=58, parser_state=0x7fab9eaa7e70) at /ssd/ramesh/mysql-server/mysql-5.6/sql/sql_parse.cc:6245
#25 0x00000000007cc557 in dispatch_command (command=COM_QUERY, thd=0x7fab0b324000, packet=0x7fab0b362001 "create temporary table v0as select 'This is temp. table' A", packet_length=58) at /ssd/ramesh/mysql-server/mysql-5.6/sql/sql_parse.cc:1332
#26 0x00000000007cb646 in do_command (thd=0x7fab0b324000) at /ssd/ramesh/mysql-server/mysql-5.6/sql/sql_parse.cc:1034
#27 0x0000000000793a61 in do_handle_one_connection (thd_arg=0x7fab0b324000) at /ssd/ramesh/mysql-server/mysql-5.6/sql/sql_connect.cc:982
#28 0x000000000079354a in handle_one_connection (arg=0x7fab0b324000) at /ssd/ramesh/mysql-server/mysql-5.6/sql/sql_connect.cc:898
#29 0x0000000000ad4b5c in pfs_spawn_thread (arg=0x7fab97f38b00) at /ssd/ramesh/mysql-server/mysql-5.6/storage/perfschema/pfs.cc:1860
#30 0x00007fab9e4abdf3 in start_thread () from /lib64/libpthread.so.0
#31 0x00007fab9d37d01d in clone () from /lib64/libc.so.6

How to repeat:
DROP DATABASE test;CREATE DATABASE test;USE test;
SET character_set_filesystem=filename;
SET @session_start_value=@@character_set_filesystem;
SET @@session.character_set_database=@session_start_value;
set character set default;
create temporary table v0as select 'This is temp. table' A;
[27 Oct 2014 11:11] MySQL Verification Team
Hello Ramesh Sivaraman,

Thank you for the bug report and test case.
Confirmed that 5.6.22/5.7.6 debug build asserts.

Thanks,
Umesh
[27 Oct 2014 11:11] MySQL Verification Team
// 5.7.6

(gdb) bt
#0  0x0000003bf260c8ac in pthread_kill () from /lib64/libpthread.so.0
#1  0x0000000000e794c5 in my_write_core (sig=6) at /pb2/build/sb_0-13146106-1409929295.44/mysqlcom-pro-5.7.6-m16/mysys/stacktrace.c:247
#2  0x000000000086cb4e in handle_fatal_signal (sig=6) at /pb2/build/sb_0-13146106-1409929295.44/mysqlcom-pro-5.7.6-m16/sql/signal_handler.cc:219
#3  <signal handler called>
#4  0x0000003bf2232635 in raise () from /lib64/libc.so.6
#5  0x0000003bf2233e15 in abort () from /lib64/libc.so.6
#6  0x00000000010663db in ut_dbg_assertion_failed (expr=0x157723d "*mbmaxlen < 5",
    file=0x1576970 "/pb2/build/sb_0-13146106-1409929295.44/mysqlcom-pro-5.7.6-m16/storage/innobase/handler/ha_innodb.cc", line=1719)
    at /pb2/build/sb_0-13146106-1409929295.44/mysqlcom-pro-5.7.6-m16/storage/innobase/ut/ut0dbg.cc:68
#7  0x0000000000e9a662 in innobase_get_cset_width (cset=17, mbminlen=0x7f933c0a3b28, mbmaxlen=0x7f933c0a3b20)
    at /pb2/build/sb_0-13146106-1409929295.44/mysqlcom-pro-5.7.6-m16/storage/innobase/handler/ha_innodb.cc:1719
#8  0x000000000111f49c in dtype_get_mblen (mtype=12, prtype=1114383, mbminlen=0x7f933c0a3b28, mbmaxlen=0x7f933c0a3b20)
    at /pb2/build/sb_0-13146106-1409929295.44/mysqlcom-pro-5.7.6-m16/storage/innobase/include/data0type.ic:94
#9  0x000000000112126e in dict_mem_fill_column_struct (column=0x7f92740228d8, col_pos=0, mtype=12, prtype=1114383, col_len=95)
    at /pb2/build/sb_0-13146106-1409929295.44/mysqlcom-pro-5.7.6-m16/storage/innobase/dict/dict0mem.cc:454
#10 0x0000000001120aa8 in dict_mem_table_add_col (table=0x7f9274029008, heap=0x7f9274022fb0, name=0x7f933c0a3bf0 "A", mtype=12, prtype=1114383, len=95)
    at /pb2/build/sb_0-13146106-1409929295.44/mysqlcom-pro-5.7.6-m16/storage/innobase/dict/dict0mem.cc:267
#11 0x0000000000ea73db in create_table_def (trx=0x7f9337574ca0, form=0x7f933c0a4700, table_name=0x7f933c0a43a0 "tmp/#sql7833_1_0", temp_path=0x7f933c0a41a0 "/tmp/#sql7833_1_0",
    remote_path=0x7f933c0a3fa0 "", flags=1, flags2=65) at /pb2/build/sb_0-13146106-1409929295.44/mysqlcom-pro-5.7.6-m16/storage/innobase/handler/ha_innodb.cc:9017
#12 0x0000000000ea9341 in ha_innobase::create (this=0x7f92740284c0, name=0x7f933c0a6920 "/tmp/#sql7833_1_0", form=0x7f933c0a4700, create_info=0x7f933c0a8490)
    at /pb2/build/sb_0-13146106-1409929295.44/mysqlcom-pro-5.7.6-m16/storage/innobase/handler/ha_innodb.cc:10080
#13 0x00000000008d5fd2 in handler::ha_create (this=0x7f92740284c0, name=0x7f933c0a6920 "/tmp/#sql7833_1_0", form=0x7f933c0a4700, info=0x7f933c0a8490)
    at /pb2/build/sb_0-13146106-1409929295.44/mysqlcom-pro-5.7.6-m16/sql/handler.cc:4614
#14 0x00000000008d688d in ha_create_table (thd=0x7f9274000d30, path=0x7f933c0a6920 "/tmp/#sql7833_1_0", db=0x7f9274006218 "test", table_name=0x7f9274005c68 "v0as", create_info=0x7f933c0a8490,
    update_create_info=false, is_temp_table=false) at /pb2/build/sb_0-13146106-1409929295.44/mysqlcom-pro-5.7.6-m16/sql/handler.cc:4849
#15 0x0000000000c8eec9 in rea_create_table (thd=0x7f9274000d30, path=0x7f933c0a6920 "/tmp/#sql7833_1_0", db=0x7f9274006218 "test", table_name=0x7f9274005c68 "v0as", create_info=0x7f933c0a8490,
    create_fields=..., keys=0, key_info=0x7f9274006f10, file=0x7f9274006bf8, no_ha_table=false) at /pb2/build/sb_0-13146106-1409929295.44/mysqlcom-pro-5.7.6-m16/sql/unireg.cc:507
#16 0x0000000000c1aee6 in create_table_impl (thd=0x7f9274000d30, db=0x7f9274006218 "test", table_name=0x7f9274005c68 "v0as", path=0x7f933c0a6920 "/tmp/#sql7833_1_0",
    create_info=0x7f933c0a8490, alter_info=0x7f933c0a7eb0, internal_tmp_table=false, select_field_count=1, no_ha_table=false, is_trans=0x0, key_info=0x7f933c0a6b30, key_count=0x7f933c0a6b2c)
    at /pb2/build/sb_0-13146106-1409929295.44/mysqlcom-pro-5.7.6-m16/sql/sql_table.cc:4934
#17 0x0000000000c1b3a5 in mysql_create_table_no_lock (thd=0x7f9274000d30, db=0x7f9274006218 "test", table_name=0x7f9274005c68 "v0as", create_info=0x7f933c0a8490, alter_info=0x7f933c0a7eb0,
    select_field_count=1, is_trans=0x0) at /pb2/build/sb_0-13146106-1409929295.44/mysqlcom-pro-5.7.6-m16/sql/sql_table.cc:5045
#18 0x0000000000d7f946 in create_table_from_items (thd=0x7f9274000d30, create_info=0x7f933c0a8490, create_table=0x7f9274005ca0, alter_info=0x7f933c0a7eb0, items=0x7f92740054b8)
    at /pb2/build/sb_0-13146106-1409929295.44/mysqlcom-pro-5.7.6-m16/sql/sql_insert.cc:2435
#19 0x0000000000d7fbcb in select_create::prepare (this=0x7f9274006490, values=..., u=0x7f9274005628) at /pb2/build/sb_0-13146106-1409929295.44/mysqlcom-pro-5.7.6-m16/sql/sql_insert.cc:2503
#20 0x0000000000bd6c70 in st_select_lex::prepare (this=0x7f92740053b0, join=0x7f9274006608) at /pb2/build/sb_0-13146106-1409929295.44/mysqlcom-pro-5.7.6-m16/sql/sql_resolver.cc:367
#21 0x0000000000be1725 in mysql_prepare_select (thd=0x7f9274000d30, fields=..., select_options=2416184064, result=0x7f9274006490, select_lex=0x7f92740053b0, free_join=0x7f933c0a7dce)
    at /pb2/build/sb_0-13146106-1409929295.44/mysqlcom-pro-5.7.6-m16/sql/sql_select.cc:944
#22 0x0000000000be17d4 in mysql_prepare_and_optimize_select (thd=0x7f9274000d30, fields=..., select_options=2416184064, result=0x7f9274006490, select_lex=0x7f92740053b0,
    free_join=0x7f933c0a7dce) at /pb2/build/sb_0-13146106-1409929295.44/mysqlcom-pro-5.7.6-m16/sql/sql_select.cc:983
#23 0x0000000000be195e in mysql_select (thd=0x7f9274000d30, fields=..., select_options=2416184064, result=0x7f9274006490, select_lex=0x7f92740053b0)
    at /pb2/build/sb_0-13146106-1409929295.44/mysqlcom-pro-5.7.6-m16/sql/sql_select.cc:1048
#24 0x0000000000bdfe55 in handle_select (thd=0x7f9274000d30, result=0x7f9274006490, setup_tables_done_option=0)
    at /pb2/build/sb_0-13146106-1409929295.44/mysqlcom-pro-5.7.6-m16/sql/sql_select.cc:97
#25 0x0000000000ba203f in mysql_execute_command (thd=0x7f9274000d30) at /pb2/build/sb_0-13146106-1409929295.44/mysqlcom-pro-5.7.6-m16/sql/sql_parse.cc:2904
#26 0x0000000000baa012 in mysql_parse (thd=0x7f9274000d30, parser_state=0x7f933c0a9660) at /pb2/build/sb_0-13146106-1409929295.44/mysqlcom-pro-5.7.6-m16/sql/sql_parse.cc:5427
#27 0x0000000000b9dec7 in dispatch_command (command=COM_QUERY, thd=0x7f9274000d30, packet=0x7f92740098b1 "create temporary table v0as select 'This is temp. table' A", packet_length=58)
    at /pb2/build/sb_0-13146106-1409929295.44/mysqlcom-pro-5.7.6-m16/sql/sql_parse.cc:1250
#28 0x0000000000b9cb7b in do_command (thd=0x7f9274000d30) at /pb2/build/sb_0-13146106-1409929295.44/mysqlcom-pro-5.7.6-m16/sql/sql_parse.cc:834
#29 0x0000000000caa2d8 in handle_connection (arg=0xcb52500) at /pb2/build/sb_0-13146106-1409929295.44/mysqlcom-pro-5.7.6-m16/sql/conn_handler/connection_handler_per_thread.cc:298
#30 0x0000000001241f24 in pfs_spawn_thread (arg=0xcb36010) at /pb2/build/sb_0-13146106-1409929295.44/mysqlcom-pro-5.7.6-m16/storage/perfschema/pfs.cc:2137
#31 0x0000003bf26079d1 in start_thread () from /lib64/libpthread.so.0
#32 0x0000003bf22e886d in clone () from /lib64/libc.so.6
[27 Oct 2014 11:12] MySQL Verification Team
// 5.6.22

(gdb) bt
#0  0x0000003bf260c8ac in pthread_kill () from /lib64/libpthread.so.0
#1  0x0000000000afe982 in my_write_core (sig=6) at /export/home/pb2/build/sb_0-13146752-1409933888.09/mysqlcom-pro-5.6.22/mysys/stacktrace.c:422
#2  0x000000000077e6cc in handle_fatal_signal (sig=6) at /export/home/pb2/build/sb_0-13146752-1409933888.09/mysqlcom-pro-5.6.22/sql/signal_handler.cc:230
#3  <signal handler called>
#4  0x0000003bf2232635 in raise () from /lib64/libc.so.6
#5  0x0000003bf2233e15 in abort () from /lib64/libc.so.6
#6  0x0000000000b9231b in innobase_get_cset_width (cset=17, mbminlen=0x7f2b0f85e038, mbmaxlen=0x7f2b0f85e030)
    at /export/home/pb2/build/sb_0-13146752-1409933888.09/mysqlcom-pro-5.6.22/storage/innobase/handler/ha_innodb.cc:1588
#7  0x0000000000db48f8 in dtype_get_mblen (mtype=12, prtype=1114383, mbminlen=0x7f2b0f85e038, mbmaxlen=0x7f2b0f85e030)
    at /export/home/pb2/build/sb_0-13146752-1409933888.09/mysqlcom-pro-5.6.22/storage/innobase/include/data0type.ic:96
#8  0x0000000000db65dc in dict_mem_fill_column_struct (column=0x7f2ae0013e58, col_pos=0, mtype=12, prtype=1114383, col_len=95)
    at /export/home/pb2/build/sb_0-13146752-1409933888.09/mysqlcom-pro-5.6.22/storage/innobase/dict/dict0mem.cc:450
#9  0x0000000000db5dfa in dict_mem_table_add_col (table=0x7f2ae0013b88, heap=0x7f2ae0014470, name=0x7f2ae000f611 "A", mtype=12, prtype=1114383, len=95)
    at /export/home/pb2/build/sb_0-13146752-1409933888.09/mysqlcom-pro-5.6.22/storage/innobase/dict/dict0mem.cc:263
#10 0x0000000000b9dee6 in create_table_def (trx=0x7f2ae0012a88, form=0x7f2b0f85eb40, table_name=0x7f2b0f85e800 "tmp/#sql788b_1_0", temp_path=0x7f2b0f85e600 "/tmp/#sql788b_1_0",
    remote_path=0x7f2b0f85e400 "", flags=1, flags2=81) at /export/home/pb2/build/sb_0-13146752-1409933888.09/mysqlcom-pro-5.6.22/storage/innobase/handler/ha_innodb.cc:8656
#11 0x0000000000b9f934 in ha_innobase::create (this=0x7f2ae0012240, name=0x7f2b0f860be0 "/tmp/#sql788b_1_0", form=0x7f2b0f85eb40, create_info=0x7f2b0f862660)
    at /export/home/pb2/build/sb_0-13146752-1409933888.09/mysqlcom-pro-5.6.22/storage/innobase/handler/ha_innodb.cc:9572
#12 0x000000000069387c in handler::ha_create (this=0x7f2ae0012240, name=0x7f2b0f860be0 "/tmp/#sql788b_1_0", form=0x7f2b0f85eb40, info=0x7f2b0f862660)
    at /export/home/pb2/build/sb_0-13146752-1409933888.09/mysqlcom-pro-5.6.22/sql/handler.cc:4524
#13 0x0000000000694161 in ha_create_table (thd=0x8ae25a0, path=0x7f2b0f860be0 "/tmp/#sql788b_1_0", db=0x7f2ae0005678 "test", table_name=0x7f2ae00050e0 "v0as", create_info=0x7f2b0f862660,
    update_create_info=false, is_temp_table=false) at /export/home/pb2/build/sb_0-13146752-1409933888.09/mysqlcom-pro-5.6.22/sql/handler.cc:4762
#14 0x0000000000904ef4 in rea_create_table (thd=0x8ae25a0, path=0x7f2b0f860be0 "/tmp/#sql788b_1_0", db=0x7f2ae0005678 "test", table_name=0x7f2ae00050e0 "v0as", create_info=0x7f2b0f862660,
    create_fields=..., keys=0, key_info=0x7f2ae00061b0, file=0x7f2ae0005ee8, no_ha_table=false) at /export/home/pb2/build/sb_0-13146752-1409933888.09/mysqlcom-pro-5.6.22/sql/unireg.cc:526
#15 0x000000000089a95f in create_table_impl (thd=0x8ae25a0, db=0x7f2ae0005678 "test", table_name=0x7f2ae00050e0 "v0as", path=0x7f2b0f860be0 "/tmp/#sql788b_1_0", create_info=0x7f2b0f862660,
    alter_info=0x7f2b0f8620b0, internal_tmp_table=false, select_field_count=1, no_ha_table=false, is_trans=0x0, key_info=0x7f2b0f860de8, key_count=0x7f2b0f860de4)
    at /export/home/pb2/build/sb_0-13146752-1409933888.09/mysqlcom-pro-5.6.22/sql/sql_table.cc:4917
#16 0x000000000089ae26 in mysql_create_table_no_lock (thd=0x8ae25a0, db=0x7f2ae0005678 "test", table_name=0x7f2ae00050e0 "v0as", create_info=0x7f2b0f862660, alter_info=0x7f2b0f8620b0,
    select_field_count=1, is_trans=0x0) at /export/home/pb2/build/sb_0-13146752-1409933888.09/mysqlcom-pro-5.6.22/sql/sql_table.cc:5029
#17 0x0000000000814722 in create_table_from_items (thd=0x8ae25a0, create_info=0x7f2b0f862660, create_table=0x7f2ae0005118, alter_info=0x7f2b0f8620b0, items=0x8ae4f38)
    at /export/home/pb2/build/sb_0-13146752-1409933888.09/mysqlcom-pro-5.6.22/sql/sql_insert.cc:4032
#18 0x000000000081498f in select_create::prepare (this=0x7f2ae0005798, values=..., u=0x8ae47d0) at /export/home/pb2/build/sb_0-13146752-1409933888.09/mysqlcom-pro-5.6.22/sql/sql_insert.cc:4100
#19 0x0000000000855d1e in JOIN::prepare (this=0x7f2ae0005918, tables_init=0x0, wild_num=0, conds_init=0x0, og_num=0, order_init=0x0, group_init=0x0, having_init=0x0, select_lex_arg=0x8ae4e18,
    unit_arg=0x8ae47d0) at /export/home/pb2/build/sb_0-13146752-1409933888.09/mysqlcom-pro-5.6.22/sql/sql_resolver.cc:348
#20 0x000000000085cbdc in mysql_prepare_select (thd=0x8ae25a0, tables=0x0, wild_num=0, fields=..., conds=0x0, og_num=0, order=0x0, group=0x0, having=0x0, select_options=2416184064,
    result=0x7f2ae0005798, unit=0x8ae47d0, select_lex=0x8ae4e18, free_join=0x7f2b0f861f8b) at /export/home/pb2/build/sb_0-13146752-1409933888.09/mysqlcom-pro-5.6.22/sql/sql_select.cc:1054
#21 0x000000000085cea8 in mysql_select (thd=0x8ae25a0, tables=0x0, wild_num=0, fields=..., conds=0x0, order=0x8ae4fe0, group=0x8ae4f18, having=0x0, select_options=2416184064,
    result=0x7f2ae0005798, unit=0x8ae47d0, select_lex=0x8ae4e18) at /export/home/pb2/build/sb_0-13146752-1409933888.09/mysqlcom-pro-5.6.22/sql/sql_select.cc:1177
#22 0x000000000085b00f in handle_select (thd=0x8ae25a0, result=0x7f2ae0005798, setup_tables_done_option=0)
    at /export/home/pb2/build/sb_0-13146752-1409933888.09/mysqlcom-pro-5.6.22/sql/sql_select.cc:110
#23 0x000000000082e455 in mysql_execute_command (thd=0x8ae25a0) at /export/home/pb2/build/sb_0-13146752-1409933888.09/mysqlcom-pro-5.6.22/sql/sql_parse.cc:3041
#24 0x00000000008375d1 in mysql_parse (thd=0x8ae25a0, rawbuf=0x7f2ae0004ff0 "create temporary table v0as select 'This is temp. table' A", length=58, parser_state=0x7f2b0f863680)
    at /export/home/pb2/build/sb_0-13146752-1409933888.09/mysqlcom-pro-5.6.22/sql/sql_parse.cc:6245
#25 0x000000000082a3a2 in dispatch_command (command=COM_QUERY, thd=0x8ae25a0, packet=0x8c123b1 "create temporary table v0as select 'This is temp. table' A", packet_length=58)
    at /export/home/pb2/build/sb_0-13146752-1409933888.09/mysqlcom-pro-5.6.22/sql/sql_parse.cc:1332
#26 0x0000000000829407 in do_command (thd=0x8ae25a0) at /export/home/pb2/build/sb_0-13146752-1409933888.09/mysqlcom-pro-5.6.22/sql/sql_parse.cc:1034
#27 0x00000000007f0887 in do_handle_one_connection (thd_arg=0x8ae25a0) at /export/home/pb2/build/sb_0-13146752-1409933888.09/mysqlcom-pro-5.6.22/sql/sql_connect.cc:982
#28 0x00000000007f0358 in handle_one_connection (arg=0x8ae25a0) at /export/home/pb2/build/sb_0-13146752-1409933888.09/mysqlcom-pro-5.6.22/sql/sql_connect.cc:898
#29 0x0000000000e5c19d in pfs_spawn_thread (arg=0x8b061b0) at /export/home/pb2/build/sb_0-13146752-1409933888.09/mysqlcom-pro-5.6.22/storage/perfschema/pfs.cc:1860
#30 0x0000003bf26079d1 in start_thread () from /lib64/libpthread.so.0
#31 0x0000003bf22e886d in clone () from /lib64/libc.so.6
[28 Oct 2014 10:27] Marko Mäkelä
Posted by developer:
 
Was this tested on 5.5? The filename-safe encoding was introduced in MySQL 5.1. So, a similar test should fail on 5.1 (which is not supported any more) and 5.5.

It seems that the fix could be as simple as redefining DATA_MBMAX from 5 to 6, and enlarging mbminmaxlen:5 to 6 bits, so that the values 0..35 can fit there.

On the other hand, if we are going that route, then there will not be any savings from packing mbminlen and mbmaxlen to a single field. We could as well represent the fields as separate 3-bit bitfields (allowing values 0 to 7). It used to be like that (2-bit bitfields allowing values 0..3) before utf8mb4 was introduced.
[28 Oct 2014 12:16] MySQL Verification Team
// 5.5.40

(gdb) bt
#0  0x0000003bf260c8ac in pthread_kill () from /lib64/libpthread.so.0
#1  0x00000000007eb946 in my_write_core (sig=6) at /pb2/build/sb_0-13157587-1410177661.6/mysql-5.5.40/mysys/stacktrace.c:433
#2  0x00000000006a4144 in handle_fatal_signal (sig=6) at /pb2/build/sb_0-13157587-1410177661.6/mysql-5.5.40/sql/signal_handler.cc:247
#3  <signal handler called>
#4  0x0000003bf2232635 in raise () from /lib64/libc.so.6
#5  0x0000003bf2233e15 in abort () from /lib64/libc.so.6
#6  0x00000000007f506f in innobase_get_cset_width (cset=17, mbminlen=0x7f55de79e0f8, mbmaxlen=0x7f55de79e0f0)
    at /pb2/build/sb_0-13157587-1410177661.6/mysql-5.5.40/storage/innobase/handler/ha_innodb.cc:1128
#7  0x00000000008cbb14 in dtype_get_mblen (column=0x7f55d0011f18, col_pos=<value optimized out>, mtype=<value optimized out>, prtype=1114383, col_len=<value optimized out>)
    at /pb2/build/sb_0-13157587-1410177661.6/mysql-5.5.40/storage/innobase/include/data0type.ic:93
#8  dict_mem_fill_column_struct (column=0x7f55d0011f18, col_pos=<value optimized out>, mtype=<value optimized out>, prtype=1114383, col_len=<value optimized out>)
    at /pb2/build/sb_0-13157587-1410177661.6/mysql-5.5.40/storage/innobase/dict/dict0mem.c:253
#9  0x00000000008cc126 in dict_mem_table_add_col (table=0x7f55d0011cb8, heap=0x7f55d0011b50, name=0x7f55d001c021 "A", mtype=12, prtype=1114383, len=95)
    at /pb2/build/sb_0-13157587-1410177661.6/mysql-5.5.40/storage/innobase/dict/dict0mem.c:223
#10 0x00000000007f868a in create_table_def (this=<value optimized out>, name=<value optimized out>, form=0x7f55de79e750, create_info=0x7f55de7a1e20)
    at /pb2/build/sb_0-13157587-1410177661.6/mysql-5.5.40/storage/innobase/handler/ha_innodb.cc:6646
#11 ha_innobase::create (this=<value optimized out>, name=<value optimized out>, form=0x7f55de79e750, create_info=0x7f55de7a1e20)
    at /pb2/build/sb_0-13157587-1410177661.6/mysql-5.5.40/storage/innobase/handler/ha_innodb.cc:7252
#12 0x00000000006ab811 in handler::ha_create (this=0x7f55d000fed0, name=0x7f55de7a0500 "/tmp/#sql173a_1_0", form=0x7f55de79e750, info=0x7f55de7a1e20)
    at /pb2/build/sb_0-13157587-1410177661.6/mysql-5.5.40/sql/handler.cc:3616
#13 0x00000000006abbe1 in ha_create_table (thd=0x58d9930, path=0x7f55de7a0500 "/tmp/#sql173a_1_0", db=0x7f55d0005220 "test", table_name=0x7f55d0004cc0 "v0as", create_info=0x7f55de7a1e20,
    update_create_info=false) at /pb2/build/sb_0-13157587-1410177661.6/mysql-5.5.40/sql/handler.cc:3823
#14 0x000000000062100f in rea_create_table (thd=0x58d9930, path=0x7f55de7a0500 "/tmp/#sql173a_1_0", db=0x7f55d0005220 "test", table_name=0x7f55d0004cc0 "v0as", create_info=0x7f55de7a1e20,
    create_fields=..., keys=0, key_info=0x7f55d001bb08, file=0x7f55d001a0d0) at /pb2/build/sb_0-13157587-1410177661.6/mysql-5.5.40/sql/unireg.cc:528
#15 0x00000000005f225f in mysql_create_table_no_lock (thd=0x58d9930, db=0x7f55d0005220 "test", table_name=0x7f55d0004cc0 "v0as", create_info=0x7f55de7a1e20, alter_info=0x7f55de7a1870,
    internal_tmp_table=false, select_field_count=1, is_trans=0x0) at /pb2/build/sb_0-13157587-1410177661.6/mysql-5.5.40/sql/sql_table.cc:4327
#16 0x0000000000574a65 in create_table_from_items (thd=0x58d9930, create_info=0x7f55de7a1e20, create_table=0x7f55d0004cf8, alter_info=0x7f55de7a1870, items=<value optimized out>,
    lock=0x7f55de7a1528, hooks=0x7f55de7a14e0) at /pb2/build/sb_0-13157587-1410177661.6/mysql-5.5.40/sql/sql_insert.cc:3728
#17 0x0000000000577e0f in select_create::prepare (this=0x7f55d0005328, values=..., u=0x58db380) at /pb2/build/sb_0-13157587-1410177661.6/mysql-5.5.40/sql/sql_insert.cc:3881
#18 0x00000000005bce0d in JOIN::prepare (this=0x7f55d0005400, rref_pointer_array=0x58dbb88, tables_init=<value optimized out>, wild_num=<value optimized out>, conds_init=<value optimized out>,
    og_num=0, order_init=0x0, group_init=0x0, having_init=0x0, proc_param_init=0x0, select_lex_arg=0x58db9a0, unit_arg=0x58db380)
    at /pb2/build/sb_0-13157587-1410177661.6/mysql-5.5.40/sql/sql_select.cc:728
#19 0x00000000005cf09e in mysql_select (thd=0x58d9930, rref_pointer_array=0x58dbb88, tables=0x0, wild_num=0, fields=..., conds=0x0, og_num=0, order=0x0, group=0x0, having=0x0, proc_param=0x0,
    select_options=2424572672, result=0x7f55d0005328, unit=0x58db380, select_lex=0x58db9a0) at /pb2/build/sb_0-13157587-1410177661.6/mysql-5.5.40/sql/sql_select.cc:2583
#20 0x00000000005d2662 in handle_select (thd=0x58d9930, lex=0x58db2d0, result=0x7f55d0005328, setup_tables_done_option=0)
    at /pb2/build/sb_0-13157587-1410177661.6/mysql-5.5.40/sql/sql_select.cc:297
#21 0x000000000058e3a2 in mysql_execute_command (thd=0x58d9930) at /pb2/build/sb_0-13157587-1410177661.6/mysql-5.5.40/sql/sql_parse.cc:2561
#22 0x0000000000592c8d in mysql_parse (thd=0x58d9930, rawbuf=0x7f55d0004bd0 "create temporary table v0as select 'This is temp. table' A", length=<value optimized out>,
    parser_state=0x7f55de7a2bc0) at /pb2/build/sb_0-13157587-1410177661.6/mysql-5.5.40/sql/sql_parse.cc:5662
#23 0x000000000059428e in dispatch_command (command=COM_QUERY, thd=0x58d9930, packet=0x595e9f1 "create temporary table v0as select 'This is temp. table' A", packet_length=58)
    at /pb2/build/sb_0-13157587-1410177661.6/mysql-5.5.40/sql/sql_parse.cc:1038
#24 0x0000000000595a78 in do_command (thd=0x58d9930) at /pb2/build/sb_0-13157587-1410177661.6/mysql-5.5.40/sql/sql_parse.cc:773
#25 0x000000000063b636 in do_handle_one_connection (thd_arg=<value optimized out>) at /pb2/build/sb_0-13157587-1410177661.6/mysql-5.5.40/sql/sql_connect.cc:862
#26 0x000000000063b6ff in handle_one_connection (arg=<value optimized out>) at /pb2/build/sb_0-13157587-1410177661.6/mysql-5.5.40/sql/sql_connect.cc:781
#27 0x0000003bf26079d1 in start_thread () from /lib64/libpthread.so.0
#28 0x0000003bf22e886d in clone () from /lib64/libc.so.6
[22 Dec 2015 6:07] Erlend Dahl
Duplicate of

Bug#78732 InnoDB: Failing assertion: *mbmaxlen < 5 in file ha_innodb.cc line 1803