Bug #119241 Exception when creating index instance
Submitted: 27 Oct 11:25 Modified: 27 Oct 11:29
Reporter: Alice Alice Email Updates:
Status: Open Impact on me:
None 
Category:MySQL Server: DDL Severity:S2 (Serious)
Version:8.0.41 OS:Any
Assigned to: CPU Architecture:Any
Tags: DDL ALTER TABLE

[27 Oct 11:25] Alice Alice
Description:
Exception when creating index instance
[Current thread is 1 (LWP 3619026)]
Missing separate debuginfos, use: dnf debuginfo-install glibc-2.28-61.h51.eulerosv2r9.x86_64 libaio-0.3.111-7.h1.eulerosv2r9.x86_64 numactl-libs-2.0.13-4.h1.r1.eulerosv2r9.x86_64 zlib-1.2.11-17.h6.eulerosv2r9.x86_64
(gdb) bt
#0  0x00007ff6df1f7281 in pthread_kill () from /usr/lib64/libpthread.so.0
#1  0x000055e8edfe35cc in my_write_core (sig=11) at /devcloud/workspace/j_J2A63RVU/mysql-server/mysys/stacktrace.cc:340
#2  0x000055e8eca74fb7 in handle_fatal_signal (sig=11) at /devcloud/workspace/j_J2A63RVU/mysql-server/sql/signal_handler.cc:245
#3  <signal handler called>
#4  0x000055e8ec625034 in TABLE::has_null_row (this=0x0) at /devcloud/workspace/j_J2A63RVU/mysql-server/sql/table.h:2124
#5  0x000055e8ec625c7e in Field::is_null (this=0x7fd435476268, row_offset=0) at /devcloud/workspace/j_J2A63RVU/mysql-server/sql/field.h:1250
#6  0x000055e8ecc8899c in Item_field::val_int (this=0x7fd4bd07fe20) at /devcloud/workspace/j_J2A63RVU/mysql-server/sql/item.cc:3038
#7  0x000055e8ecd7554b in Item_func_regexp_instr::return_option (this=0x7fd4bd07f7f8) at /devcloud/workspace/j_J2A63RVU/mysql-server/sql/item_regexp_func.h:251
#8  0x000055e8ecd73d84 in Item_func_regexp_instr::fix_fields (this=0x7fd4bd07f7f8, thd=0x7fd4afb37800, arguments=0x7fd4bd07ff80) at /devcloud/workspace/j_J2A63RVU/mysql-server/sql/item_regexp_func.cc:161
#9  0x000055e8ecea8774 in Key_part_spec::resolve_expression (this=0x7fd4bd07ff68, thd=0x7fd4afb37800) at /devcloud/workspace/j_J2A63RVU/mysql-server/sql/key_spec.cc:98
#10 0x000055e8ec8e5ac7 in add_functional_index_to_create_list (thd=0x7fd4afb37800, key_spec=0x7fd4bd07ffa0, alter_info=0x7fd435a2ed80, kp=0x7fd4bd07ff68, key_part_number=0, create_info=0x7fd435a2ec30)
    at /devcloud/workspace/j_J2A63RVU/mysql-server/sql/sql_table.cc:7882
#11 0x000055e8ec8e6c08 in mysql_prepare_create_table (thd=0x7fd4afb37800, error_schema_name=0x7fd4bd07f3e8 "test", error_table_name=0x7fd4bd07dde8 "tb1", create_info=0x7fd435a2ec30, alter_info=0x7fd435a2ed80, 
    file=0x7fd4354747b0, is_partitioned=false, key_info_buffer=0x7fd435a2c968, key_count=0x7fd435a2c904, fk_key_info_buffer=0x7fd435a2c970, fk_key_count=0x7fd435a2c908, existing_fks=0x7fd4354745a8, 
    existing_fks_count=0, existing_fks_table=0x7fd433b7cfd8, fk_max_generated_name_number=0, select_field_count=0, find_parent_keys=true) at /devcloud/workspace/j_J2A63RVU/mysql-server/sql/sql_table.cc:8127
#12 0x000055e8ec8e9b52 in create_table_impl (thd=0x7fd4afb37800, schema=..., db=0x7fd4bd07f3e8 "test", table_name=0x7fd435a2d770 "#sql-35ecfc_1d6", error_table_name=0x7fd4bd07dde8 "tb1", 
    path=0x7fd435a2e354 "./test/#sql-35ecfc_1d6", create_info=0x7fd435a2ec30, alter_info=0x7fd435a2ed80, internal_tmp_table=true, select_field_count=0, find_parent_keys=true, no_ha_table=true, 
    do_not_store_in_dd=true, is_trans=0x0, key_info=0x7fd435a2c968, key_count=0x7fd435a2c904, keys_onoff=Alter_info::LEAVE_AS_IS, fk_key_info=0x7fd435a2c970, fk_key_count=0x7fd435a2c908, 
    existing_fk_info=0x7fd4354745a8, existing_fk_count=0, existing_fk_table=0x7fd433b7cfd8, fk_max_generated_name_number=0, table_def=0x7fd435a2c978, post_ddl_ht=0x0)
    at /devcloud/workspace/j_J2A63RVU/mysql-server/sql/sql_table.cc:8983
#13 0x000055e8ec905130 in mysql_alter_table (thd=0x7fd4afb37800, new_db=0x7fd4bd07f3e8 "test", new_name=0x7fd4bd07dde8 "tb1", create_info=0x7fd435a2ec30, table_list=0x7fd4bd07ed90, alter_info=0x7fd435a2ed80)
    at /devcloud/workspace/j_J2A63RVU/mysql-server/sql/sql_table.cc:17260
#14 0x000055e8ecfba8b3 in Sql_cmd_create_or_drop_index_base::execute (this=0x7fd4bd0800f8, thd=0x7fd4afb37800) at /devcloud/workspace/j_J2A63RVU/mysql-server/sql/sql_cmd_ddl_table.cc:556
#15 0x000055e8ec7fad60 in mysql_execute_command (thd=0x7fd4afb37800, first_level=true) at /devcloud/workspace/j_J2A63RVU/mysql-server/sql/sql_parse.cc:4096
#16 0x000055e8ec800f3a in dispatch_sql_command (thd=0x7fd4afb37800, parser_state=0x7fd435a303b0) at /devcloud/workspace/j_J2A63RVU/mysql-server/sql/sql_parse.cc:5903
#17 0x000055e8ec7f5b1f in dispatch_command (thd=0x7fd4afb37800, com_data=0x7fd435a30d20, command=COM_QUERY) at /devcloud/workspace/j_J2A63RVU/mysql-server/sql/sql_parse.cc:2380
#18 0x000055e8ec7f3838 in do_command (thd=0x7fd4afb37800) at /devcloud/workspace/j_J2A63RVU/mysql-server/sql/sql_parse.cc:1715
#19 0x000055e8ef157fb7 in threadpool_process_request (thd=0x7fd4afb37800) at /devcloud/workspace/j_J2A63RVU/mysql-server/plugin/threadpool/threadpool_common.cc:333
#20 0x000055e8ef15c29b in handle_event (connection=0x7fd4afb17440) at /devcloud/workspace/j_J2A63RVU/mysql-server/plugin/threadpool/threadpool_unix.cc:1732
#21 0x000055e8ef15c447 in worker_main (param=0x55e8f32f9e00 <g_all_groups+240640>) at /devcloud/workspace/j_J2A63RVU/mysql-server/plugin/threadpool/threadpool_unix.cc:1779
#22 0x000055e8ef05bf7b in pfs_spawn_thread (arg=0x7fd4bc2086a0) at /devcloud/workspace/j_J2A63RVU/mysql-server/storage/perfschema/pfs.cc:3050
#23 0x00007ff6df1eff3b in ?? () from /usr/lib64/libpthread.so.0
#24 0x00007ff6dc4d2980 in clone () from /usr/lib64/libc.so.6
(gdb) f 15
#15 0x000055e8ec7fad60 in mysql_execute_command (thd=0x7fd4afb37800, first_level=true) at /devcloud/workspace/j_J2A63RVU/mysql-server/sql/sql_parse.cc:4096
4096 /devcloud/workspace/j_J2A63RVU/mysql-server/sql/sql_parse.cc: No such file or directory.
(gdb) p thd->m_db
$1 = {str = 0x7fd476c096b0 "test", length = 4}
(gdb) p thd->m_query_string
$2 = {str = 0x7fd4bd07d830 "create index tb1_func_ind_4606 on tb1((regexp_instr(tb1.c5,tb1.c11,tb1.c5,tb1.c5,tb1.c5)))", length = 90}

How to repeat:
create database db1;
use db1;
CREATE TABLE `tb1` (
  `c1` tinyint DEFAULT NULL,
  `c2` tinyint unsigned DEFAULT NULL,
  `c3` smallint DEFAULT NULL,
  `c4` smallint unsigned DEFAULT NULL,
  `c5` int DEFAULT NULL,
  `c6` int unsigned DEFAULT NULL,
  `c7` bigint DEFAULT NULL,
  `c8` bigint unsigned DEFAULT NULL,
  `c9` mediumint DEFAULT NULL,
  `c10` mediumint unsigned DEFAULT NULL,
  `c11` float DEFAULT NULL,
  `c12` double DEFAULT NULL,
  `c13` decimal(60,30) DEFAULT NULL,
  `c14` tinyint(1) DEFAULT NULL,
  `c15` binary(1) DEFAULT NULL,
  `c16` varbinary(64) DEFAULT NULL,
  `c17` blob,
  `c18` tinyblob,
  `c19` char(1) DEFAULT NULL,
  `c20` varchar(64) DEFAULT NULL,
  `c21` text,
  `c22` tinytext,
  `c23` date DEFAULT NULL,
  `c24` time DEFAULT NULL,
  `c25` time(3) DEFAULT NULL,
  `c26` time(6) DEFAULT NULL,
  `c27` datetime DEFAULT NULL,
  `c28` datetime(3) DEFAULT NULL,
  `c29` datetime(6) DEFAULT NULL,
  `c30` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
  `c31` timestamp(3) NOT NULL DEFAULT '0000-00-00 00:00:00.000',
  `c32` timestamp(6) NOT NULL DEFAULT '0000-00-00 00:00:00.000000',
  `c33` year DEFAULT NULL,
  `c34` bit(1) DEFAULT NULL,
  `c35` json DEFAULT NULL,
  `c36` enum('1','abc','@#$','','111111111111111111','-111111111111111111','1970-1-1','-838:59:59.000000','1901','-9223372036854775808','0','9223372036854775807','-9223372036854775807','9e99') DEFAULT NULL,
  `c37` set('1','abc','@#$','','111111111111111111','-111111111111111111','1970-1-1','-838:59:59.000000','1901','0','9e99') DEFAULT NULL,
  KEY `tb1_ind_0` (`c1`),
  KEY `tb1_ind_1` (`c2`),
  KEY `tb1_ind_2` (`c3`),
  KEY `tb1_ind_3` (`c4`),
  KEY `tb1_ind_4` (`c5`),
  KEY `tb1_ind_5` (`c6`),
  KEY `tb1_ind_6` (`c7`),
  KEY `tb1_ind_7` (`c8`),
  KEY `tb1_ind_8` (`c9`),
  KEY `tb1_ind_9` (`c10`),
  KEY `tb1_ind_10` (`c11`),
  KEY `tb1_ind_11` (`c12`),
  KEY `tb1_ind_12` (`c13`),
  KEY `tb1_ind_13` (`c14`),
  KEY `tb1_ind_14` (`c15`),
  KEY `tb1_ind_15` (`c16`),
  KEY `tb1_ind_18` (`c19`),
  KEY `tb1_ind_19` (`c20`),
  KEY `tb1_ind_22` (`c23`),
  KEY `tb1_ind_23` (`c24`),
  KEY `tb1_ind_24` (`c25`),
  KEY `tb1_ind_25` (`c26`),
  KEY `tb1_ind_26` (`c27`),
  KEY `tb1_ind_27` (`c28`),
  KEY `tb1_ind_28` (`c29`),
  KEY `tb1_ind_29` (`c30`),
  KEY `tb1_ind_30` (`c31`),
  KEY `tb1_ind_31` (`c32`),
  KEY `tb1_ind_32` (`c33`),
  KEY `tb1_ind_33` (`c34`),
  KEY `tb1_ind_35` (`c36`),
  KEY `tb1_ind_36` (`c37`),
  KEY `tb1_func_ind_18` ((abs(`c11`))),
  KEY `tb1_func_ind_19` ((abs(`c12`))),
  KEY `tb1_func_ind_22` ((abs(`c3`))),
  KEY `tb1_func_ind_23` ((abs(`c13`))),
  KEY `tb1_func_ind_24` ((abs(`c24`))),
  KEY `tb1_func_ind_47` ((acos(`c12`))),
  KEY `tb1_func_ind_48` ((acos(`c22`))),
  KEY `tb1_func_ind_54` (((`c24` + interval `c14` day))),
  KEY `tb1_func_ind_60` ((addtime(`c30`,`c24`))),
  KEY `tb1_func_ind_63` ((addtime(`c24`,`c30`))),
  KEY `tb1_func_ind_66` ((addtime(`c4`,`c30`))),
  KEY `tb1_func_ind_68` ((addtime(`c23`,`c30`))),
  KEY `tb1_func_ind_69` ((addtime(`c23`,`c23`))),
  KEY `tb1_func_ind_70` ((addtime(`c35`,`c23`))),
  KEY `tb1_func_ind_71` ((addtime(`c23`,`c24`))),
  KEY `tb1_func_ind_73` ((addtime(`c30`,`c23`))),
  KEY `tb1_func_ind_74` ((addtime(`c27`,`c24`))),
  KEY `tb1_func_ind_75` ((addtime(`c25`,`c35`))),
  KEY `tb1_func_ind_101` ((any_value(`c14`))),
  KEY `tb1_func_ind_193` ((ascii(`c19`))),
  KEY `tb1_func_ind_194` ((ascii(`c18`))),
  KEY `tb1_func_ind_200` ((asin(`c12`))),
  KEY `tb1_func_ind_203` ((atan(`c12`))),
  KEY `tb1_func_ind_204` ((atan(`c23`))),
  KEY `tb1_func_ind_205` ((atan(`c12`,`c12`))),
  KEY `tb1_func_ind_206` ((atan(`c30`,`c8`))),
  KEY `tb1_func_ind_251` ((conv(`c7`,10,2))),
  KEY `tb1_func_ind_252` ((conv(`c13`,10,2))),
  KEY `tb1_func_ind_253` ((conv(`c12`,10,2))),
  KEY `tb1_func_ind_293` ((bit_count(`c7`))),
  KEY `tb1_func_ind_309` ((bit_length(`c22`))),
  KEY `tb1_func_ind_310` ((bit_length(`c34`)))
) ENGINE=innodb DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;

create index tb1_func_ind_4606 on tb1((regexp_instr(tb1.c5,tb1.c11,tb1.c5,tb1.c5,tb1.c5)))
[27 Oct 11:29] Alice Alice
When creating a table, you need to set sql_mode=''
set sql_mode=''