[MDEV-11785] Remove INFORMATION_SCHEMA.INNODB_TEMP_TABLE_INFO (was: Server crashes in i_s_innodb_temp_table_info_fill_table) Created: 2017-01-12  Updated: 2017-04-20  Resolved: 2017-01-17

Status: Closed
Project: MariaDB Server
Component/s: Storage Engine - InnoDB
Affects Version/s: 10.2
Fix Version/s: 10.2.4

Type: Bug Priority: Major
Reporter: Elena Stepanova Assignee: Marko Mäkelä
Resolution: Fixed Votes: 0
Labels: None

Issue Links:
Relates
relates to MDEV-12459 The information_schema tables for get... Closed
Sprint: 10.1.21

 Description   

If server is started with --skip-innodb (without skipping InnoDB information_schema plugins), the information schema tables are still there. Normally attempts to select from them produce a reasonable warning:

MariaDB [test]> select * from INFORMATION_SCHEMA.INNODB_SYS_TABLESTATS;
Empty set, 1 warning (0.00 sec)
 
MariaDB [test]> show warnings;
+---------+------+----------------------------------------------------------------------------------------------------------------+
| Level   | Code | Message                                                                                                        |
+---------+------+----------------------------------------------------------------------------------------------------------------+
| Warning | 1012 | InnoDB: SELECTing from INFORMATION_SCHEMA.INNODB_SYS_TABLESTATS but the InnoDB storage engine is not installed |
+---------+------+----------------------------------------------------------------------------------------------------------------+
1 row in set (0.00 sec)

But selecting from INFORMATION_SCHEMA.INNODB_TEMP_TABLE_INFO causes a crash:

MariaDB [test]> SELECT * FROM INFORMATION_SCHEMA.INNODB_TEMP_TABLE_INFO;
ERROR 2013 (HY000): Lost connection to MySQL server during query

10.2 fd0479ce592e

#3  <signal handler called>
#4  0x00007fd313a453a1 in i_s_innodb_temp_table_info_fill_table (thd=0x7fd307c16070, tables=0x7fd307c64428) at /data/src/10.2/storage/innobase/handler/i_s.cc:4277
#5  0x00007fd3135ed410 in get_schema_tables_result (join=0x7fd307c65270, executed_place=PROCESSED_BY_JOIN_EXEC) at /data/src/10.2/sql/sql_show.cc:8204
#6  0x00007fd31358c0b9 in JOIN::exec_inner (this=0x7fd307c65270) at /data/src/10.2/sql/sql_select.cc:3352
#7  0x00007fd31358b806 in JOIN::exec (this=0x7fd307c65270) at /data/src/10.2/sql/sql_select.cc:3199
#8  0x00007fd31358c96f in mysql_select (thd=0x7fd307c16070, tables=0x7fd307c64428, wild_num=1, fields=..., conds=0x0, og_num=0, order=0x0, group=0x0, having=0x0, proc_param=0x0, select_options=2684619520, result=0x7fd307c65250, unit=0x7fd307c19b48, select_lex=0x7fd307c1a278) at /data/src/10.2/sql/sql_select.cc:3584
#9  0x00007fd31358194f in handle_select (thd=0x7fd307c16070, lex=0x7fd307c19a80, result=0x7fd307c65250, setup_tables_done_option=0) at /data/src/10.2/sql/sql_select.cc:373
#10 0x00007fd31354decf in execute_sqlcom_select (thd=0x7fd307c16070, all_tables=0x7fd307c64428) at /data/src/10.2/sql/sql_parse.cc:6399
#11 0x00007fd313543ee9 in mysql_execute_command (thd=0x7fd307c16070) at /data/src/10.2/sql/sql_parse.cc:3429
#12 0x00007fd3135518a0 in mysql_parse (thd=0x7fd307c16070, rawbuf=0x7fd307c641d0 "SELECT * FROM INFORMATION_SCHEMA.INNODB_TEMP_TABLE_INFO", length=55, parser_state=0x7fd314670dd0, is_com_multi=false, is_next_command=false) at /data/src/10.2/sql/sql_parse.cc:7842
#13 0x00007fd31353f9ab in dispatch_command (command=COM_QUERY, thd=0x7fd307c16070, packet=0x7fd307c58071 "SELECT * FROM INFORMATION_SCHEMA.INNODB_TEMP_TABLE_INFO", packet_length=55, is_com_multi=false, is_next_command=false) at /data/src/10.2/sql/sql_parse.cc:1800
#14 0x00007fd31353e3a3 in do_command (thd=0x7fd307c16070) at /data/src/10.2/sql/sql_parse.cc:1360
#15 0x00007fd313686c48 in do_handle_one_connection (connect=0x7fd310071410) at /data/src/10.2/sql/sql_connect.cc:1354
#16 0x00007fd3136869d5 in handle_one_connection (arg=0x7fd310071410) at /data/src/10.2/sql/sql_connect.cc:1260
#17 0x00007fd3139c6f62 in pfs_spawn_thread (arg=0x7fd31000f9f0) at /data/src/10.2/storage/perfschema/pfs.cc:1862
#18 0x00007fd312b710a4 in start_thread (arg=0x7fd314672300) at pthread_create.c:309
#19 0x00007fd310b1e87d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:111



 Comments   
Comment by Marko Mäkelä [ 2017-01-16 ]

Do we need this INNODB_TEMP_TABLE_INFO at all? IMO it is rather useless and should be removed altogether.

Comment by Jan Lindström (Inactive) [ 2017-01-17 ]

Ok to push

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