[MDEV-7926] Server crashes in get_geometry_column_record on concurrent SELECT FROM I_S.GEOMETRY_COLUMNS with join and DDL Created: 2015-04-07  Updated: 2015-05-12  Resolved: 2015-05-12

Status: Closed
Project: MariaDB Server
Component/s: GIS, Triggers
Affects Version/s: 10.1
Fix Version/s: 10.1.5

Type: Bug Priority: Major
Reporter: Elena Stepanova Assignee: Alexey Botchkov
Resolution: Fixed Votes: 0
Labels: None

Issue Links:
Relates
relates to MDEV-7509 Testing for GIS extensions Closed

 Description   

Stack trace from 10.1 commit 47c344b0

#3  <signal handler called>
#4  0x00007f6a6c6562bc in get_geometry_column_record (thd=0x7f6a4ee3d070, tables=0x7f6a47be2ae0, table=0x7f6a478b0088, res=true, db_name=0x7f6a478f4a48, table_name=0x7f6a47b563e0) at 10.1/sql/sql_show.cc:379
#5  0x00007f6a6c660a8f in fill_schema_table_by_open (thd=0x7f6a4ee3d070, is_show_fields_or_keys=false, table=0x7f6a478b0088, schema_table=0x7f6a6d6ee840, orig_db_name=0x7f6a478f4a48, orig_table_name=0x7f6a47b563e0, open_tables_state_backup=0x7f6a6bff56f0, can_deadlock=true) at 10.1/sql/sql_show.cc:4051
#6  0x00007f6a6c661faa in get_all_tables (thd=0x7f6a4ee3d070, tables=0x7f6a47861338, cond=0x0) at 10.1/sql/sql_show.cc:4638
#7  0x00007f6a6c6709d7 in get_schema_tables_result (join=0x7f6a47862fd0, executed_place=PROCESSED_BY_JOIN_EXEC) at 10.1/sql/sql_show.cc:7939
#8  0x00007f6a6c613ab9 in JOIN::exec_inner (this=0x7f6a47862fd0) at 10.1/sql/sql_select.cc:2544
#9  0x00007f6a6c613155 in JOIN::exec (this=0x7f6a47862fd0) at 10.1/sql/sql_select.cc:2394
#10 0x00007f6a6c616710 in mysql_select (thd=0x7f6a4ee3d070, rref_pointer_array=0x7f6a4ee41758, tables=0x7f6a47861338, wild_num=1, fields=..., conds=0x0, og_num=0, order=0x0, group=0x0, having=0x0, proc_param=0x0, select_options=2684619520, result=0x7f6a47862fb0, unit=0x7f6a4ee40df0, select_lex=0x7f6a4ee414e0) at 10.1/sql/sql_select.cc:3322
#11 0x00007f6a6c60c849 in handle_select (thd=0x7f6a4ee3d070, lex=0x7f6a4ee40d28, result=0x7f6a47862fb0, setup_tables_done_option=0) at 10.1/sql/sql_select.cc:373
#12 0x00007f6a6c5dd9f2 in execute_sqlcom_select (thd=0x7f6a4ee3d070, all_tables=0x7f6a47861338) at 10.1/sql/sql_parse.cc:5782
#13 0x00007f6a6c5d3d99 in mysql_execute_command (thd=0x7f6a4ee3d070) at 10.1/sql/sql_parse.cc:2926
#14 0x00007f6a6c5e100e in mysql_parse (thd=0x7f6a4ee3d070, rawbuf=0x7f6a47861088 "SELECT * FROM INFORMATION_SCHEMA.GEOMETRY_COLUMNS, mysql.general_log", length=68, parser_state=0x7f6a6bff7200) at 10.1/sql/sql_parse.cc:7165
#15 0x00007f6a6c5d003a in dispatch_command (command=COM_QUERY, thd=0x7f6a4ee3d070, packet=0x7f6a4ee43071 "SELECT * FROM INFORMATION_SCHEMA.GEOMETRY_COLUMNS, mysql.general_log", packet_length=68) at 10.1/sql/sql_parse.cc:1462
#16 0x00007f6a6c5cee0a in do_command (thd=0x7f6a4ee3d070) at 10.1/sql/sql_parse.cc:1090
#17 0x00007f6a6c6ff95f in do_handle_one_connection (thd_arg=0x7f6a4ee3d070) at 10.1/sql/sql_connect.cc:1347
#18 0x00007f6a6c6ff6a4 in handle_one_connection (arg=0x7f6a4ee3d070) at 10.1/sql/sql_connect.cc:1258
#19 0x00007f6a6bcc3b50 in start_thread (arg=<optimized out>) at pthread_create.c:304
#20 0x00007f6a69d5895d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112

RQG grammar (is.yy)

thread1:
	CREATE TRIGGER _letter BEFORE INSERT ON _table FOR EACH ROW BEGIN INSERT INTO _table SELECT * FROM _table LIMIT 0 ; END ; |
	DROP TRIGGER IF EXISTS _letter |
	CREATE OR REPLACE VIEW _letter AS SELECT * FROM _table |
	DROP VIEW IF EXISTS _letter ;
 
query:
	SELECT * FROM INFORMATION_SCHEMA.GEOMETRY_COLUMNS, mysql.general_log;

RQG command line

perl ./runall-new.pl --threads=2 --duration=400 --queries=100M  --grammar=is.yy  --basedir=<your basedir> --vardir=<your vardir>


Generated at Thu Feb 08 07:23:20 UTC 2024 using Jira 8.20.16#820016-sha1:9d11dbea5f4be3d4cc21f03a88dd11d8c8687422.