[MDEV-18725] Assertion failure in file storage/innobase/fts/fts0fts.cc upon modifying column into a blob Created: 2019-02-24  Updated: 2019-02-28  Resolved: 2019-02-28

Status: Closed
Project: MariaDB Server
Component/s: Data Definition - Alter Table, Data types, Full-text Search, Storage Engine - InnoDB
Affects Version/s: 10.4
Fix Version/s: 10.4.4

Type: Bug Priority: Major
Reporter: Elena Stepanova Assignee: Sergei Golubchik
Resolution: Fixed Votes: 0
Labels: None

Issue Links:
Problem/Incident
is caused by MDEV-371 Unique indexes for blobs Closed

 Description   

Note: The failure became possible after MDEV-371, without it ALTER is rejected due to the missing length in the key definition.

--source include/have_innodb.inc
 
CREATE TABLE t1 (
  pk INT,
  a INT,
  b VARCHAR(1024),
  PRIMARY KEY (pk),
  KEY (a),
  FULLTEXT KEY(b)
) ENGINE=InnoDB;
 
ALTER TABLE t1 MODIFY a LINESTRING;
 
# Cleanup
DROP TABLE t1;

10.4 fb01193c

2019-02-25 00:14:51 0x7f4913fff700  InnoDB: Assertion failure in file /data/src/10.4/storage/innobase/fts/fts0fts.cc line 332
InnoDB: We intentionally generate a memory trap.
 
#5  0x00007f491ece63fa in abort () from /lib/x86_64-linux-gnu/libc.so.6
#6  0x000055f9150fdeb6 in ut_dbg_assertion_failed (expr=0x0, file=0x55f9157ba5c8 "/data/src/10.4/storage/innobase/fts/fts0fts.cc", line=332) at /data/src/10.4/storage/innobase/ut/ut0dbg.cc:60
#7  0x000055f91522c551 in fts_get_charset (prtype=1283) at /data/src/10.4/storage/innobase/fts/fts0fts.cc:332
#8  0x000055f91522dbe6 in fts_index_get_charset (index=0x7f48c81a9948) at /data/src/10.4/storage/innobase/fts/fts0fts.cc:968
#9  0x000055f91522dd22 in fts_cache_index_cache_create (table=0x7f48c807a458, index=0x7f48c81a9948) at /data/src/10.4/storage/innobase/fts/fts0fts.cc:1020
#10 0x000055f9151b9e68 in dict_index_build_internal_fts (index=0x7f48c8081bb8) at /data/src/10.4/storage/innobase/dict/dict0dict.cc:3129
#11 0x000055f9151b7e4e in dict_index_add_to_cache (index=0x7f48c8081bb8, page_no=4294967295, strict=true, err=0x7f4913ff9924, add_v=0x0) at /data/src/10.4/storage/innobase/dict/dict0dict.cc:2354
#12 0x000055f9151a9d2d in dict_create_index_step (thr=0x7f48c81a6ff0) at /data/src/10.4/storage/innobase/dict/dict0crea.cc:1346
#13 0x000055f914fe30cd in que_thr_step (thr=0x7f48c81a6ff0) at /data/src/10.4/storage/innobase/que/que0que.cc:1052
#14 0x000055f914fe327d in que_run_threads_low (thr=0x7f48c81a6ff0) at /data/src/10.4/storage/innobase/que/que0que.cc:1104
#15 0x000055f914fe346e in que_run_threads (thr=0x7f48c81a6ff0) at /data/src/10.4/storage/innobase/que/que0que.cc:1144
#16 0x000055f9150402c8 in row_create_index_for_mysql (index=0x7f48c8081bb8, trx=0x7f4918aee268, field_lengths=0x0) at /data/src/10.4/storage/innobase/row/row0mysql.cc:2560
#17 0x000055f914ef4f8b in create_index (trx=0x7f4918aee268, form=0x7f4913ffa200, table=0x7f48c807a458, key_num=2) at /data/src/10.4/storage/innobase/handler/ha_innodb.cc:11228
#18 0x000055f914ee11fe in create_table_info_t::create_table (this=0x7f4913ff9ca0, create_fk=true) at /data/src/10.4/storage/innobase/handler/ha_innodb.cc:12451
#19 0x000055f914ef56e8 in ha_innobase::create (this=0x7f48c8078b48, name=0x7f4913ffc94d "./test/#sql-2bdd_9", form=0x7f4913ffa200, create_info=0x7f4913ffccd0, file_per_table=true, trx=0x7f4918aee268) at /data/src/10.4/storage/innobase/handler/ha_innodb.cc:12683
#20 0x000055f914ee1ad1 in ha_innobase::create (this=0x7f48c8078b48, name=0x7f4913ffc94d "./test/#sql-2bdd_9", form=0x7f4913ffa200, create_info=0x7f4913ffccd0) at /data/src/10.4/storage/innobase/handler/ha_innodb.cc:12736
#21 0x000055f914b9aaf0 in handler::ha_create (this=0x7f48c8078b48, name=0x7f4913ffc94d "./test/#sql-2bdd_9", form=0x7f4913ffa200, info_arg=0x7f4913ffccd0) at /data/src/10.4/sql/handler.cc:4816
#22 0x000055f914b9bb65 in ha_create_table (thd=0x7f48c8000b00, path=0x7f4913ffc94d "./test/#sql-2bdd_9", db=0x7f48c8015c48 "test", table_name=0x7f48c8015568 "t1", create_info=0x7f4913ffccd0, frm=0x7f4913ffb8a0) at /data/src/10.4/sql/handler.cc:5190
#23 0x000055f91493762d in mysql_alter_table (thd=0x7f48c8000b00, new_db=0x7f48c8005290, new_name=0x7f48c8005690, create_info=0x7f4913ffccd0, table_list=0x7f48c80155a0, alter_info=0x7f4913ffcc10, order_num=0, order=0x0, ignore=false) at /data/src/10.4/sql/sql_table.cc:9976
#24 0x000055f9149c5922 in Sql_cmd_alter_table::execute (this=0x7f48c8015d70, thd=0x7f48c8000b00) at /data/src/10.4/sql/sql_alter.cc:499
#25 0x000055f914856aca in mysql_execute_command (thd=0x7f48c8000b00) at /data/src/10.4/sql/sql_parse.cc:6346
#26 0x000055f91485bc72 in mysql_parse (thd=0x7f48c8000b00, rawbuf=0x7f48c80154a8 "ALTER TABLE t1 MODIFY a LINESTRING", length=34, parser_state=0x7f4913ffe180, is_com_multi=false, is_next_command=false) at /data/src/10.4/sql/sql_parse.cc:8157
#27 0x000055f914847360 in dispatch_command (command=COM_QUERY, thd=0x7f48c8000b00, packet=0x7f48c8139fd1 "ALTER TABLE t1 MODIFY a LINESTRING", packet_length=34, is_com_multi=false, is_next_command=false) at /data/src/10.4/sql/sql_parse.cc:1829
#28 0x000055f914845b34 in do_command (thd=0x7f48c8000b00) at /data/src/10.4/sql/sql_parse.cc:1358
#29 0x000055f9149bf837 in do_handle_one_connection (connect=0x55f917e1dd10) at /data/src/10.4/sql/sql_connect.cc:1399
#30 0x000055f9149bf5a8 in handle_one_connection (arg=0x55f917e1dd10) at /data/src/10.4/sql/sql_connect.cc:1302
#31 0x000055f914eb6979 in pfs_spawn_thread (arg=0x55f917e63b80) at /data/src/10.4/storage/perfschema/pfs.cc:1862
#32 0x00007f49209b4494 in start_thread (arg=0x7f4913fff700) at pthread_create.c:333
#33 0x00007f491ed9a93f in clone () from /lib/x86_64-linux-gnu/libc.so.6


Generated at Thu Feb 08 08:46:16 UTC 2024 using Jira 8.20.16#820016-sha1:9d11dbea5f4be3d4cc21f03a88dd11d8c8687422.