[MDEV-15347] Valgrind or ASAN errors in mysql_make_view on query from information_schema Created: 2018-02-19  Updated: 2018-05-15  Resolved: 2018-05-15

Status: Closed
Project: MariaDB Server
Component/s: Admin statements, Views
Affects Version/s: 10.1, 10.2, 10.3
Fix Version/s: 10.1.34, 10.2.15, 10.3.7

Type: Bug Priority: Critical
Reporter: Elena Stepanova Assignee: Oleksandr Byelkin
Resolution: Fixed Votes: 0
Labels: affects-tests, regression

Issue Links:
Relates
relates to MDEV-14857 problem with 10.2.11 server crashing ... Closed

 Description   

CREATE VIEW v AS SELECT 1;
CREATE FUNCTION f() RETURNS INT RETURN 1;
SELECT * FROM INFORMATION_SCHEMA.TABLES JOIN INFORMATION_SCHEMA.PARAMETERS
UNION
SELECT * FROM INFORMATION_SCHEMA.TABLES JOIN INFORMATION_SCHEMA.PARAMETERS;

10.1 9ea3ad6d754103 valgrind

==15592== Thread 6:
==15592== Invalid read of size 4
==15592==    at 0x6C6FB7: mysql_make_view(THD*, TABLE_SHARE*, TABLE_LIST*, bool) (sql_view.cc:1344)
==15592==    by 0x573E94: open_table(THD*, TABLE_LIST*, Open_table_context*) (sql_base.cc:2467)
==15592==    by 0x576A4E: open_and_process_table(THD*, LEX*, TABLE_LIST*, unsigned int*, unsigned int, Prelocking_strategy*, bool, Open_table_context*) (sql_base.cc:4068)
==15592==    by 0x577AC9: open_tables(THD*, DDL_options_st const&, TABLE_LIST**, unsigned int*, unsigned int, Prelocking_strategy*) (sql_base.cc:4579)
==15592==    by 0x56F4C7: open_tables(THD*, TABLE_LIST**, unsigned int*, unsigned int, Prelocking_strategy*) (sql_base.h:252)
==15592==    by 0x579007: open_normal_and_derived_tables(THD*, TABLE_LIST*, unsigned int, unsigned int) (sql_base.cc:5322)
==15592==    by 0x67112A: fill_schema_table_by_open(THD*, bool, TABLE*, st_schema_table*, st_mysql_lex_string*, st_mysql_lex_string*, Open_tables_backup*, bool) (sql_show.cc:4232)
==15592==    by 0x672867: get_all_tables(THD*, TABLE_LIST*, Item*) (sql_show.cc:4870)
==15592==    by 0x6817AB: get_schema_tables_result(JOIN*, enum_schema_table_state) (sql_show.cc:8227)
==15592==    by 0x620A86: JOIN::exec_inner() (sql_select.cc:2691)
==15592==    by 0x620120: JOIN::exec() (sql_select.cc:2539)
==15592==    by 0x6B9F32: st_select_lex_unit::exec() (sql_union.cc:847)
==15592==    by 0x6B744F: mysql_union(THD*, LEX*, select_result*, st_select_lex_unit*, unsigned long) (sql_union.cc:39)
==15592==    by 0x618DBA: handle_select(THD*, LEX*, select_result*, unsigned long) (sql_select.cc:366)
==15592==    by 0x5E83F9: execute_sqlcom_select(THD*, TABLE_LIST*) (sql_parse.cc:5926)
==15592==    by 0x5DE8CD: mysql_execute_command(THD*) (sql_parse.cc:2976)
==15592==  Address 0xe7a83b0 is 3,440 bytes inside a block of size 5,752 free'd
==15592==    at 0x4C2CDDB: free (vg_replace_malloc.c:530)
==15592==    by 0xED7A4A: my_free (my_malloc.c:217)
==15592==    by 0xEC8C11: free_root (my_alloc.c:392)
==15592==    by 0x979849: sp_head::operator delete(void*, unsigned long) (sp_head.cc:589)
==15592==    by 0x97A7C8: sp_head::~sp_head() (sp_head.cc:852)
==15592==    by 0x67799E: store_schema_params(THD*, TABLE*, TABLE*, char const*, bool, char const*) (sql_show.cc:5868)
==15592==    by 0x678AF6: fill_schema_proc(THD*, TABLE_LIST*, Item*) (sql_show.cc:6065)
==15592==    by 0x6817AB: get_schema_tables_result(JOIN*, enum_schema_table_state) (sql_show.cc:8227)
==15592==    by 0x620A86: JOIN::exec_inner() (sql_select.cc:2691)
==15592==    by 0x620120: JOIN::exec() (sql_select.cc:2539)
==15592==    by 0x6B9F32: st_select_lex_unit::exec() (sql_union.cc:847)
==15592==    by 0x6B744F: mysql_union(THD*, LEX*, select_result*, st_select_lex_unit*, unsigned long) (sql_union.cc:39)
==15592==    by 0x618DBA: handle_select(THD*, LEX*, select_result*, unsigned long) (sql_select.cc:366)
==15592==    by 0x5E83F9: execute_sqlcom_select(THD*, TABLE_LIST*) (sql_parse.cc:5926)
==15592==    by 0x5DE8CD: mysql_execute_command(THD*) (sql_parse.cc:2976)
==15592==    by 0x5EBB4E: mysql_parse(THD*, char*, unsigned int, Parser_state*) (sql_parse.cc:7352)
==15592==  Block was alloc'd at
==15592==    at 0x4C2BBAF: malloc (vg_replace_malloc.c:299)
==15592==    by 0xED7563: my_malloc (my_malloc.c:101)
==15592==    by 0xEC84D7: alloc_root (my_alloc.c:188)
==15592==    by 0x518C98: Sql_alloc::operator new(unsigned long, st_mem_root*) (sql_list.h:43)
==15592==    by 0x97D7AE: sp_head::reset_lex(THD*) (sp_head.cc:2206)
==15592==    by 0x7B7CBD: MYSQLparse(THD*) (sql_yacc.yy:3683)
==15592==    by 0x5EFBC3: parse_sql(THD*, Parser_state*, Object_creation_ctx*, bool) (sql_parse.cc:9327)
==15592==    by 0x973599: sp_compile(THD*, String*, unsigned long long, Stored_program_creation_ctx*) (sp.cc:754)
==15592==    by 0x977BE8: sp_load_for_information_schema(THD*, TABLE*, String*, String*, unsigned long, stored_procedure_type, char const*, char const*, bool*) (sp.cc:2347)
==15592==    by 0x6770B8: store_schema_params(THD*, TABLE*, TABLE*, char const*, bool, char const*) (sql_show.cc:5780)
==15592==    by 0x678AF6: fill_schema_proc(THD*, TABLE_LIST*, Item*) (sql_show.cc:6065)
==15592==    by 0x6817AB: get_schema_tables_result(JOIN*, enum_schema_table_state) (sql_show.cc:8227)
==15592==    by 0x620A86: JOIN::exec_inner() (sql_select.cc:2691)
==15592==    by 0x620120: JOIN::exec() (sql_select.cc:2539)
==15592==    by 0x6B9F32: st_select_lex_unit::exec() (sql_union.cc:847)
==15592==    by 0x6B744F: mysql_union(THD*, LEX*, select_result*, st_select_lex_unit*, unsigned long) (sql_union.cc:39)
==15592== Invalid write of size 4
==15592==    at 0x6C6FC0: mysql_make_view(THD*, TABLE_SHARE*, TABLE_LIST*, bool) (sql_view.cc:1344)
==15592==    by 0x573E94: open_table(THD*, TABLE_LIST*, Open_table_context*) (sql_base.cc:2467)
==15592==    by 0x576A4E: open_and_process_table(THD*, LEX*, TABLE_LIST*, unsigned int*, unsigned int, Prelocking_strategy*, bool, Open_table_context*) (sql_base.cc:4068)
==15592==    by 0x577AC9: open_tables(THD*, DDL_options_st const&, TABLE_LIST**, unsigned int*, unsigned int, Prelocking_strategy*) (sql_base.cc:4579)
==15592==    by 0x56F4C7: open_tables(THD*, TABLE_LIST**, unsigned int*, unsigned int, Prelocking_strategy*) (sql_base.h:252)
==15592==    by 0x579007: open_normal_and_derived_tables(THD*, TABLE_LIST*, unsigned int, unsigned int) (sql_base.cc:5322)
==15592==    by 0x67112A: fill_schema_table_by_open(THD*, bool, TABLE*, st_schema_table*, st_mysql_lex_string*, st_mysql_lex_string*, Open_tables_backup*, bool) (sql_show.cc:4232)
==15592==    by 0x672867: get_all_tables(THD*, TABLE_LIST*, Item*) (sql_show.cc:4870)
==15592==    by 0x6817AB: get_schema_tables_result(JOIN*, enum_schema_table_state) (sql_show.cc:8227)
==15592==    by 0x620A86: JOIN::exec_inner() (sql_select.cc:2691)
==15592==    by 0x620120: JOIN::exec() (sql_select.cc:2539)
==15592==    by 0x6B9F32: st_select_lex_unit::exec() (sql_union.cc:847)
==15592==    by 0x6B744F: mysql_union(THD*, LEX*, select_result*, st_select_lex_unit*, unsigned long) (sql_union.cc:39)
==15592==    by 0x618DBA: handle_select(THD*, LEX*, select_result*, unsigned long) (sql_select.cc:366)
==15592==    by 0x5E83F9: execute_sqlcom_select(THD*, TABLE_LIST*) (sql_parse.cc:5926)
==15592==    by 0x5DE8CD: mysql_execute_command(THD*) (sql_parse.cc:2976)
==15592==  Address 0xe7a83b0 is 3,440 bytes inside a block of size 5,752 free'd
==15592==    at 0x4C2CDDB: free (vg_replace_malloc.c:530)
==15592==    by 0xED7A4A: my_free (my_malloc.c:217)
==15592==    by 0xEC8C11: free_root (my_alloc.c:392)
==15592==    by 0x979849: sp_head::operator delete(void*, unsigned long) (sp_head.cc:589)
==15592==    by 0x97A7C8: sp_head::~sp_head() (sp_head.cc:852)
==15592==    by 0x67799E: store_schema_params(THD*, TABLE*, TABLE*, char const*, bool, char const*) (sql_show.cc:5868)
==15592==    by 0x678AF6: fill_schema_proc(THD*, TABLE_LIST*, Item*) (sql_show.cc:6065)
==15592==    by 0x6817AB: get_schema_tables_result(JOIN*, enum_schema_table_state) (sql_show.cc:8227)
==15592==    by 0x620A86: JOIN::exec_inner() (sql_select.cc:2691)
==15592==    by 0x620120: JOIN::exec() (sql_select.cc:2539)
==15592==    by 0x6B9F32: st_select_lex_unit::exec() (sql_union.cc:847)
==15592==    by 0x6B744F: mysql_union(THD*, LEX*, select_result*, st_select_lex_unit*, unsigned long) (sql_union.cc:39)
==15592==    by 0x618DBA: handle_select(THD*, LEX*, select_result*, unsigned long) (sql_select.cc:366)
==15592==    by 0x5E83F9: execute_sqlcom_select(THD*, TABLE_LIST*) (sql_parse.cc:5926)
==15592==    by 0x5DE8CD: mysql_execute_command(THD*) (sql_parse.cc:2976)
==15592==    by 0x5EBB4E: mysql_parse(THD*, char*, unsigned int, Parser_state*) (sql_parse.cc:7352)
==15592==  Block was alloc'd at
==15592==    at 0x4C2BBAF: malloc (vg_replace_malloc.c:299)
==15592==    by 0xED7563: my_malloc (my_malloc.c:101)
==15592==    by 0xEC84D7: alloc_root (my_alloc.c:188)
==15592==    by 0x518C98: Sql_alloc::operator new(unsigned long, st_mem_root*) (sql_list.h:43)
==15592==    by 0x97D7AE: sp_head::reset_lex(THD*) (sp_head.cc:2206)
==15592==    by 0x7B7CBD: MYSQLparse(THD*) (sql_yacc.yy:3683)
==15592==    by 0x5EFBC3: parse_sql(THD*, Parser_state*, Object_creation_ctx*, bool) (sql_parse.cc:9327)
==15592==    by 0x973599: sp_compile(THD*, String*, unsigned long long, Stored_program_creation_ctx*) (sp.cc:754)
==15592==    by 0x977BE8: sp_load_for_information_schema(THD*, TABLE*, String*, String*, unsigned long, stored_procedure_type, char const*, char const*, bool*) (sp.cc:2347)
==15592==    by 0x6770B8: store_schema_params(THD*, TABLE*, TABLE*, char const*, bool, char const*) (sql_show.cc:5780)
==15592==    by 0x678AF6: fill_schema_proc(THD*, TABLE_LIST*, Item*) (sql_show.cc:6065)
==15592==    by 0x6817AB: get_schema_tables_result(JOIN*, enum_schema_table_state) (sql_show.cc:8227)
==15592==    by 0x620A86: JOIN::exec_inner() (sql_select.cc:2691)
==15592==    by 0x620120: JOIN::exec() (sql_select.cc:2539)
==15592==    by 0x6B9F32: st_select_lex_unit::exec() (sql_union.cc:847)
==15592==    by 0x6B744F: mysql_union(THD*, LEX*, select_result*, st_select_lex_unit*, unsigned long) (sql_union.cc:39)
==15592== Invalid read of size 4
==15592==    at 0x6C6FC6: mysql_make_view(THD*, TABLE_SHARE*, TABLE_LIST*, bool) (sql_view.cc:1344)
==15592==    by 0x573E94: open_table(THD*, TABLE_LIST*, Open_table_context*) (sql_base.cc:2467)
==15592==    by 0x576A4E: open_and_process_table(THD*, LEX*, TABLE_LIST*, unsigned int*, unsigned int, Prelocking_strategy*, bool, Open_table_context*) (sql_base.cc:4068)
==15592==    by 0x577AC9: open_tables(THD*, DDL_options_st const&, TABLE_LIST**, unsigned int*, unsigned int, Prelocking_strategy*) (sql_base.cc:4579)
==15592==    by 0x56F4C7: open_tables(THD*, TABLE_LIST**, unsigned int*, unsigned int, Prelocking_strategy*) (sql_base.h:252)
==15592==    by 0x579007: open_normal_and_derived_tables(THD*, TABLE_LIST*, unsigned int, unsigned int) (sql_base.cc:5322)
==15592==    by 0x67112A: fill_schema_table_by_open(THD*, bool, TABLE*, st_schema_table*, st_mysql_lex_string*, st_mysql_lex_string*, Open_tables_backup*, bool) (sql_show.cc:4232)
==15592==    by 0x672867: get_all_tables(THD*, TABLE_LIST*, Item*) (sql_show.cc:4870)
==15592==    by 0x6817AB: get_schema_tables_result(JOIN*, enum_schema_table_state) (sql_show.cc:8227)
==15592==    by 0x620A86: JOIN::exec_inner() (sql_select.cc:2691)
==15592==    by 0x620120: JOIN::exec() (sql_select.cc:2539)
==15592==    by 0x6B9F32: st_select_lex_unit::exec() (sql_union.cc:847)
==15592==    by 0x6B744F: mysql_union(THD*, LEX*, select_result*, st_select_lex_unit*, unsigned long) (sql_union.cc:39)
==15592==    by 0x618DBA: handle_select(THD*, LEX*, select_result*, unsigned long) (sql_select.cc:366)
==15592==    by 0x5E83F9: execute_sqlcom_select(THD*, TABLE_LIST*) (sql_parse.cc:5926)
==15592==    by 0x5DE8CD: mysql_execute_command(THD*) (sql_parse.cc:2976)
==15592==  Address 0xe7a83b0 is 3,440 bytes inside a block of size 5,752 free'd
==15592==    at 0x4C2CDDB: free (vg_replace_malloc.c:530)
==15592==    by 0xED7A4A: my_free (my_malloc.c:217)
==15592==    by 0xEC8C11: free_root (my_alloc.c:392)
==15592==    by 0x979849: sp_head::operator delete(void*, unsigned long) (sp_head.cc:589)
==15592==    by 0x97A7C8: sp_head::~sp_head() (sp_head.cc:852)
==15592==    by 0x67799E: store_schema_params(THD*, TABLE*, TABLE*, char const*, bool, char const*) (sql_show.cc:5868)
==15592==    by 0x678AF6: fill_schema_proc(THD*, TABLE_LIST*, Item*) (sql_show.cc:6065)
==15592==    by 0x6817AB: get_schema_tables_result(JOIN*, enum_schema_table_state) (sql_show.cc:8227)
==15592==    by 0x620A86: JOIN::exec_inner() (sql_select.cc:2691)
==15592==    by 0x620120: JOIN::exec() (sql_select.cc:2539)
==15592==    by 0x6B9F32: st_select_lex_unit::exec() (sql_union.cc:847)
==15592==    by 0x6B744F: mysql_union(THD*, LEX*, select_result*, st_select_lex_unit*, unsigned long) (sql_union.cc:39)
==15592==    by 0x618DBA: handle_select(THD*, LEX*, select_result*, unsigned long) (sql_select.cc:366)
==15592==    by 0x5E83F9: execute_sqlcom_select(THD*, TABLE_LIST*) (sql_parse.cc:5926)
==15592==    by 0x5DE8CD: mysql_execute_command(THD*) (sql_parse.cc:2976)
==15592==    by 0x5EBB4E: mysql_parse(THD*, char*, unsigned int, Parser_state*) (sql_parse.cc:7352)
==15592==  Block was alloc'd at
==15592==    at 0x4C2BBAF: malloc (vg_replace_malloc.c:299)
==15592==    by 0xED7563: my_malloc (my_malloc.c:101)
==15592==    by 0xEC84D7: alloc_root (my_alloc.c:188)
==15592==    by 0x518C98: Sql_alloc::operator new(unsigned long, st_mem_root*) (sql_list.h:43)
==15592==    by 0x97D7AE: sp_head::reset_lex(THD*) (sp_head.cc:2206)
==15592==    by 0x7B7CBD: MYSQLparse(THD*) (sql_yacc.yy:3683)
==15592==    by 0x5EFBC3: parse_sql(THD*, Parser_state*, Object_creation_ctx*, bool) (sql_parse.cc:9327)
==15592==    by 0x973599: sp_compile(THD*, String*, unsigned long long, Stored_program_creation_ctx*) (sp.cc:754)
==15592==    by 0x977BE8: sp_load_for_information_schema(THD*, TABLE*, String*, String*, unsigned long, stored_procedure_type, char const*, char const*, bool*) (sp.cc:2347)
==15592==    by 0x6770B8: store_schema_params(THD*, TABLE*, TABLE*, char const*, bool, char const*) (sql_show.cc:5780)
==15592==    by 0x678AF6: fill_schema_proc(THD*, TABLE_LIST*, Item*) (sql_show.cc:6065)
==15592==    by 0x6817AB: get_schema_tables_result(JOIN*, enum_schema_table_state) (sql_show.cc:8227)
==15592==    by 0x620A86: JOIN::exec_inner() (sql_select.cc:2691)
==15592==    by 0x620120: JOIN::exec() (sql_select.cc:2539)
==15592==    by 0x6B9F32: st_select_lex_unit::exec() (sql_union.cc:847)
==15592==    by 0x6B744F: mysql_union(THD*, LEX*, select_result*, st_select_lex_unit*, unsigned long) (sql_union.cc:39)

10.1 9ea3ad6d754 ASAN

==15760==ERROR: AddressSanitizer: heap-use-after-free on address 0x625000111648 at pc 0x564741ae41a8 bp 0x7fd07f2187b0 sp 0x7fd07f2187a8
READ of size 4 at 0x625000111648 thread T6
    #0 0x564741ae41a7 in mysql_make_view(THD*, TABLE_SHARE*, TABLE_LIST*, bool) /data/src/10.1/sql/sql_view.cc:1344
    #1 0x5647417dceed in open_table(THD*, TABLE_LIST*, Open_table_context*) /data/src/10.1/sql/sql_base.cc:2467
    #2 0x5647417e8f09 in open_and_process_table /data/src/10.1/sql/sql_base.cc:4068
    #3 0x5647417e8f09 in open_tables(THD*, DDL_options_st const&, TABLE_LIST**, unsigned int*, unsigned int, Prelocking_strategy*) /data/src/10.1/sql/sql_base.cc:4579
    #4 0x5647417eb6b8 in open_tables /data/src/10.1/sql/sql_base.h:252
    #5 0x5647417eb6b8 in open_normal_and_derived_tables(THD*, TABLE_LIST*, unsigned int, unsigned int) /data/src/10.1/sql/sql_base.cc:5322
    #6 0x5647419ffa85 in fill_schema_table_by_open /data/src/10.1/sql/sql_show.cc:4232
    #7 0x564741a3e914 in get_all_tables(THD*, TABLE_LIST*, Item*) /data/src/10.1/sql/sql_show.cc:4870
    #8 0x564741a42ee3 in get_schema_tables_result(JOIN*, enum_schema_table_state) /data/src/10.1/sql/sql_show.cc:8227
    #9 0x5647419e8ced in JOIN::exec_inner() /data/src/10.1/sql/sql_select.cc:2691
    #10 0x5647419f133e in JOIN::exec() /data/src/10.1/sql/sql_select.cc:2539
    #11 0x564741abf129 in st_select_lex_unit::exec() /data/src/10.1/sql/sql_union.cc:847
    #12 0x564741acb584 in mysql_union(THD*, LEX*, select_result*, st_select_lex_unit*, unsigned long) /data/src/10.1/sql/sql_union.cc:39
    #13 0x5647419e60fa in handle_select(THD*, LEX*, select_result*, unsigned long) /data/src/10.1/sql/sql_select.cc:366
    #14 0x5647418b7f1e in execute_sqlcom_select /data/src/10.1/sql/sql_parse.cc:5926
    #15 0x5647418d18f3 in mysql_execute_command(THD*) /data/src/10.1/sql/sql_parse.cc:2976
    #16 0x5647418e8e60 in mysql_parse(THD*, char*, unsigned int, Parser_state*) /data/src/10.1/sql/sql_parse.cc:7352
    #17 0x5647418ef661 in dispatch_command(enum_server_command, THD*, char*, unsigned int) /data/src/10.1/sql/sql_parse.cc:1477
    #18 0x5647418f5c14 in do_command(THD*) /data/src/10.1/sql/sql_parse.cc:1106
    #19 0x564741b994f0 in do_handle_one_connection(THD*) /data/src/10.1/sql/sql_connect.cc:1330
    #20 0x564741b99a01 in handle_one_connection /data/src/10.1/sql/sql_connect.cc:1242
    #21 0x5647424658ac in pfs_spawn_thread /data/src/10.1/storage/perfschema/pfs.cc:1861
    #22 0x7fd08b96b493 in start_thread (/lib/x86_64-linux-gnu/libpthread.so.0+0x7493)
    #23 0x7fd089d2493e in __clone (/lib/x86_64-linux-gnu/libc.so.6+0xe893e)

The problem appeared in 10.1 with this commit:

commit 80d3eee072025f34984e474ea160651eac9e11e5
Author: Oleksandr Byelkin
Date:   Fri Jan 26 16:59:53 2018 +0100
 
    MDEV-14857: problem with 10.2.11 server crashing when executing stored procedure



 Comments   
Comment by Elena Stepanova [ 2018-02-20 ]

Here are variations of apparently the same problem that I'm getting with concurrent tests utilizing similar workflow:

4  0x0000556d56bbc0c6 in Item_field::fix_fields (this=0x7ff73c073260, thd=0x7ff73c000b00, reference=0x7ff73c0733c0) at /data/src/10.3/sql/item.cc:6279
#5  0x0000556d56830ced in setup_fields (thd=0x7ff73c000b00, ref_pointer_array=..., fields=..., column_usage=MARK_COLUMNS_READ, sum_func_list=0x7ff73c0d12b0, pre_fix=0x7ff73c071440, allow_sum_func=true) at /data/src/10.3/sql/sql_base.cc:7283
#6  0x0000556d568ec5e6 in JOIN::prepare (this=0x7ff73c0d0f90, tables_init=0x7ff73c0737f8, wild_num=0, conds_init=0x0, og_num=0, order_init=0x0, skip_order_by=false, group_init=0x0, having_init=0x0, proc_param_init=0x0, select_lex_arg=0x7ff73c071300, unit_arg=0x7ff73c070b98) at /data/src/10.3/sql/sql_select.cc:1214
#7  0x0000556d5699ac9d in st_select_lex_unit::prepare_join (this=0x7ff73c070b98, thd_arg=0x7ff73c000b00, sl=0x7ff73c071300, tmp_result=0x7ff73c077d90, additional_options=0, is_union_select=false) at /data/src/10.3/sql/sql_union.cc:675
#8  0x0000556d5699c054 in st_select_lex_unit::prepare (this=0x7ff73c070b98, thd_arg=0x7ff73c000b00, sel_result=0x7ff73c077d90, additional_options=0) at /data/src/10.3/sql/sql_union.cc:947
#9  0x0000556d5686b68e in mysql_derived_prepare (thd=0x7ff73c000b00, lex=0x7ff7883b2a80, derived=0x7ff73c06ffc8) at /data/src/10.3/sql/sql_derived.cc:769
#10 0x0000556d5686a19d in mysql_handle_derived (lex=0x7ff7883b2a80, phases=35) at /data/src/10.3/sql/sql_derived.cc:121
#11 0x0000556d5682b1f8 in open_normal_and_derived_tables (thd=0x7ff73c000b00, tables=0x7ff73c06ffc8, flags=1090, dt_phases=35) at /data/src/10.3/sql/sql_base.cc:4943
#12 0x0000556d5682b3b8 in open_tables_only_view_structure (thd=0x7ff73c000b00, table_list=0x7ff73c06ffc8, can_deadlock=false) at /data/src/10.3/sql/sql_base.cc:4999
#13 0x0000556d5694ac6f in fill_schema_table_by_open (thd=0x7ff73c000b00, mem_root=0x7ff7883b4330, is_show_fields_or_keys=false, table=0x7ff73c082098, schema_table=0x556d57e1bd00 <schema_tables+2432>, orig_db_name=0x7ff73c0c8378, orig_table_name=0x7ff73c0c9ca0, open_tables_state_backup=0x7ff7883b4380, can_deadlock=false) at /data/src/10.3/sql/sql_show.cc:4568
#14 0x0000556d5694c96e in get_all_tables (thd=0x7ff73c000b00, tables=0x7ff73c02dae0, cond=0x7ff73c02f580) at /data/src/10.3/sql/sql_show.cc:5268
#15 0x0000556d5695c8ca in get_schema_tables_result (join=0x7ff73c0c04a8, executed_place=PROCESSED_BY_JOIN_EXEC) at /data/src/10.3/sql/sql_show.cc:8664
#16 0x0000556d568f6ba2 in JOIN::exec_inner (this=0x7ff73c0c04a8) at /data/src/10.3/sql/sql_select.cc:4036
#17 0x0000556d568f6246 in JOIN::exec (this=0x7ff73c0c04a8) at /data/src/10.3/sql/sql_select.cc:3867
#18 0x0000556d5699ddc4 in st_select_lex_unit::exec (this=0x7ff73c004898) at /data/src/10.3/sql/sql_union.cc:1427
#19 0x0000556d5699902a in mysql_union (thd=0x7ff73c000b00, lex=0x7ff73c0047d0, result=0x7ff73c08ccf0, unit=0x7ff73c004898, setup_tables_done_option=0) at /data/src/10.3/sql/sql_union.cc:41
#20 0x0000556d568e9101 in handle_select (thd=0x7ff73c000b00, lex=0x7ff73c0047d0, result=0x7ff73c08ccf0, setup_tables_done_option=0) at /data/src/10.3/sql/sql_select.cc:360
#21 0x0000556d568b3e3b in execute_sqlcom_select (thd=0x7ff73c000b00, all_tables=0x7ff73c02ada0) at /data/src/10.3/sql/sql_parse.cc:6523
#22 0x0000556d568aa53f in mysql_execute_command (thd=0x7ff73c000b00) at /data/src/10.3/sql/sql_parse.cc:3748
#23 0x0000556d568b7834 in mysql_parse (thd=0x7ff73c000b00, rawbuf=0x7ff73c029f98 "/* GenTest::Transform::ExecuteAsIntersect */ (  SELECT * FROM (INFORMATION_SCHEMA.`GEOMETRY_COLUMNS` AS table1 LEFT OUTER JOIN INFORMATION_SCHEMA.`PARAMETERS` AS table2 ON ( table2.`CHARACTER_MAXIMUM_"..., length=654, parser_state=0x7ff7883b6630, is_com_multi=false, is_next_command=false) at /data/src/10.3/sql/sql_parse.cc:7980
#24 0x0000556d568a4fe7 in dispatch_command (command=COM_QUERY, thd=0x7ff73c000b00, packet=0x7ff73c00b291 "/* GenTest::Transform::ExecuteAsIntersect */ (  SELECT * FROM (INFORMATION_SCHEMA.`GEOMETRY_COLUMNS` AS table1 LEFT OUTER JOIN INFORMATION_SCHEMA.`PARAMETERS` AS table2 ON ( table2.`CHARACTER_MAXIMUM_"..., packet_length=654, is_com_multi=false, is_next_command=false) at /data/src/10.3/sql/sql_parse.cc:1825
#25 0x0000556d568a3a26 in do_command (thd=0x7ff73c000b00) at /data/src/10.3/sql/sql_parse.cc:1370
#26 0x0000556d56a0c607 in do_handle_one_connection (connect=0x556d5a525cc0) at /data/src/10.3/sql/sql_connect.cc:1402
#27 0x0000556d56a0c394 in handle_one_connection (arg=0x556d5a525cc0) at /data/src/10.3/sql/sql_connect.cc:1308
#28 0x00007ff7b74a0494 in start_thread (arg=0x7ff7883b7700) at pthread_create.c:333
#29 0x00007ff7b588693f in clone () from /lib/x86_64-linux-gnu/libc.so.6

#3  <signal handler called>
#4  0x0000561ddf68d46d in Item_ident::get_depended_from (this=0x7f06f80aa1d0) at /home/elenst/git/10.3/sql/item.cc:10540
#5  0x0000561ddf6788f5 in Item_field::used_tables (this=0x7f06f80aa1d0) at /home/elenst/git/10.3/sql/item.cc:3536
#6  0x0000561ddf2f5159 in setup_fields (thd=0x7f06f8000b00, ref_pointer_array=..., fields=..., column_usage=MARK_COLUMNS_READ, sum_func_list=0x7f06f80b3b50, pre_fix=0x7f06f80a8930, allow_sum_func=tru
e) at /home/elenst/git/10.3/sql/sql_base.cc:7308
#7  0x0000561ddf3b0a64 in JOIN::prepare (this=0x7f06f80b3830, tables_init=0x7f06f80aacf8, wild_num=0, conds_init=0x0, og_num=0, order_init=0x0, skip_order_by=false, group_init=0x0, having_init=0x0, p
roc_param_init=0x0, select_lex_arg=0x7f06f80a87f0, unit_arg=0x7f06f80a8088) at /home/elenst/git/10.3/sql/sql_select.cc:1214
#8  0x0000561ddf45e7ff in st_select_lex_unit::prepare_join (this=0x7f06f80a8088, thd_arg=0x7f06f8000b00, sl=0x7f06f80a87f0, tmp_result=0x7f06f80af338, additional_options=0, is_union_select=false) at 
/home/elenst/git/10.3/sql/sql_union.cc:662
#9  0x0000561ddf45fbb4 in st_select_lex_unit::prepare (this=0x7f06f80a8088, thd_arg=0x7f06f8000b00, sel_result=0x7f06f80af338, additional_options=0) at /home/elenst/git/10.3/sql/sql_union.cc:947
#10 0x0000561ddf32fac0 in mysql_derived_prepare (thd=0x7f06f8000b00, lex=0x7f07629cd2a0, derived=0x7f06f80a74a8) at /home/elenst/git/10.3/sql/sql_derived.cc:769
#11 0x0000561ddf32e5dc in mysql_handle_derived (lex=0x7f07629cd2a0, phases=35) at /home/elenst/git/10.3/sql/sql_derived.cc:121
#12 0x0000561ddf2ef4bd in open_normal_and_derived_tables (thd=0x7f06f8000b00, tables=0x7f06f80a74a8, flags=1090, dt_phases=35) at /home/elenst/git/10.3/sql/sql_base.cc:4943
#13 0x0000561ddf2ef67b in open_tables_only_view_structure (thd=0x7f06f8000b00, table_list=0x7f06f80a74a8, can_deadlock=false) at /home/elenst/git/10.3/sql/sql_base.cc:4993
#14 0x0000561ddf40ea13 in fill_schema_table_by_open (thd=0x7f06f8000b00, mem_root=0x7f07629ceb50, is_show_fields_or_keys=false, table=0x7f06f8047af8, schema_table=0x561de08cd6a0 <schema_tables+2432>, orig_db_name=0x7f06f809ff50, orig_table_name=0x7f06f80a0008, open_tables_state_backup=0x7f07629ceba0, can_deadlock=false) at /home/elenst/git/10.3/sql/sql_show.cc:4568
#15 0x0000561ddf41073e in get_all_tables (thd=0x7f06f8000b00, tables=0x7f06f802dd30, cond=0x7f06f802f7d0) at /home/elenst/git/10.3/sql/sql_show.cc:5268
#16 0x0000561ddf420693 in get_schema_tables_result (join=0x7f06f8064e18, executed_place=PROCESSED_BY_JOIN_EXEC) at /home/elenst/git/10.3/sql/sql_show.cc:8664
#17 0x0000561ddf3bafbe in JOIN::exec_inner (this=0x7f06f8064e18) at /home/elenst/git/10.3/sql/sql_select.cc:4036
#18 0x0000561ddf3ba664 in JOIN::exec (this=0x7f06f8064e18) at /home/elenst/git/10.3/sql/sql_select.cc:3867
#19 0x0000561ddf46193d in st_select_lex_unit::exec (this=0x7f06f8004898) at /home/elenst/git/10.3/sql/sql_union.cc:1427
#20 0x0000561ddf45cb8c in mysql_union (thd=0x7f06f8000b00, lex=0x7f06f80047d0, result=0x7f06f8018230, unit=0x7f06f8004898, setup_tables_done_option=0) at /home/elenst/git/10.3/sql/sql_union.cc:41
#21 0x0000561ddf3ad58e in handle_select (thd=0x7f06f8000b00, lex=0x7f06f80047d0, result=0x7f06f8018230, setup_tables_done_option=0) at /home/elenst/git/10.3/sql/sql_select.cc:360
#22 0x0000561ddf37827b in execute_sqlcom_select (thd=0x7f06f8000b00, all_tables=0x7f06f802aff0) at /home/elenst/git/10.3/sql/sql_parse.cc:6523
#23 0x0000561ddf36e6aa in mysql_execute_command (thd=0x7f06f8000b00) at /home/elenst/git/10.3/sql/sql_parse.cc:3748
#24 0x0000561ddf37bc2a in mysql_parse (thd=0x7f06f8000b00, rawbuf=0x7f06f802a1e8 "/* GenTest::Transform::ExecuteAsIntersect */ (  SELECT * FROM (INFORMATION_SCHEMA.`GEOMETRY_COLUMNS` AS table1 LEFT OUTER JOIN INFORMATION_SCHEMA.`PARAMETERS` AS table2 ON ( table2.`CHARACTER_MAXIMUM_"..., length=654, parser_state=0x7f07629d0630, is_com_multi=false, is_next_command=false) at /home/elenst/git/10.3/sql/sql_parse.cc:7980
#25 0x0000561ddf369117 in dispatch_command (command=COM_QUERY, thd=0x7f06f8000b00, packet=0x7f06f800b291 "/* GenTest::Transform::ExecuteAsIntersect */ (  SELECT * FROM (INFORMATION_SCHEMA.`GEOMETRY_COLUMNS` AS table1 LEFT OUTER JOIN INFORMATION_SCHEMA.`PARAMETERS` AS table2 ON ( table2.`CHARACTER_MAXIMUM_"..., packet_length=654, is_com_multi=false, is_next_command=false) at /home/elenst/git/10.3/sql/sql_parse.cc:1825
#26 0x0000561ddf367b4f in do_command (thd=0x7f06f8000b00) at /home/elenst/git/10.3/sql/sql_parse.cc:1370
#27 0x0000561ddf4d023e in do_handle_one_connection (connect=0x561de3bdd010) at /home/elenst/git/10.3/sql/sql_connect.cc:1402
#28 0x0000561ddf4cffbe in handle_one_connection (arg=0x561de3bdd010) at /home/elenst/git/10.3/sql/sql_connect.cc:1308
#29 0x00007f077af476ba in start_thread () from /lib/x86_64-linux-gnu/libpthread.so.0
#30 0x00007f077a3dc82d in clone () from /lib/x86_64-linux-gnu/libc.so.6

Comment by Elena Stepanova [ 2018-03-31 ]

Yet another variation of a crash which I'm getting on 10.3 debug (and on 10.3 asan I'm getting the reported ASAN errors instead).
The test case here doesn't involve UNION, though.

10.3 556a9202cea

#3  <signal handler called>
#4  0x0000557e9000851e in find_field_in_tables (thd=0x7f227c000b00, item=0x7f227c0cd318, first_table=0x7f227c0cda, last_table=0xc800000000000000, ref=0x7f227c0cd480, report_error=IGNORE_EXCEPT_NON_UNIQUE, check_privileges=true, register_tree_change=true) at /data/src/10.3/sql/sql_base.cc:6110
#5  0x0000557e9039b4fd in Item_field::fix_fields (this=0x7f227c0cd318, thd=0x7f227c000b00, reference=0x7f227c0cd480) at /data/src/10.3/sql/item.cc:6183
#6  0x0000557e9000b3f7 in setup_fields (thd=0x7f227c000b00, ref_pointer_array=..., fields=..., column_usage=MARK_COLUMNS_READ, sum_func_list=0x7f227c0d6958, pre_fix=0x7f227c0cb690, allow_sum_func=true) at /data/src/10.3/sql/sql_base.cc:7311
#7  0x0000557e900cd66a in JOIN::prepare (this=0x7f227c0d6638, tables_init=0x7f227c0cdac8, wild_num=0, conds_init=0x0, og_num=0, order_init=0x0, skip_order_by=false, group_init=0x0, having_init=0x0, proc_param_init=0x0, select_lex_arg=0x7f227c0cb550, unit_arg=0x7f227c0cadd8) at /data/src/10.3/sql/sql_select.cc:1128
#8  0x0000557e9017c5df in st_select_lex_unit::prepare_join (this=0x7f227c0cadd8, thd_arg=0x7f227c000b00, sl=0x7f227c0cb550, tmp_result=0x7f227c0d6550, additional_options=0, is_union_select=false) at /data/src/10.3/sql/sql_union.cc:675
#9  0x0000557e9017d996 in st_select_lex_unit::prepare (this=0x7f227c0cadd8, thd_arg=0x7f227c000b00, sel_result=0x7f227c0d6550, additional_options=0) at /data/src/10.3/sql/sql_union.cc:947
#10 0x0000557e900456c8 in mysql_derived_prepare (thd=0x7f227c000b00, lex=0x7f22f8284660, derived=0x7f227c0ca1d8) at /data/src/10.3/sql/sql_derived.cc:769
#11 0x0000557e900441d7 in mysql_handle_derived (lex=0x7f22f8284660, phases=35) at /data/src/10.3/sql/sql_derived.cc:121
#12 0x0000557e90005902 in open_normal_and_derived_tables (thd=0x7f227c000b00, tables=0x7f227c0ca1d8, flags=1346, dt_phases=35) at /data/src/10.3/sql/sql_base.cc:4971
#13 0x0000557e90005ac2 in open_tables_only_view_structure (thd=0x7f227c000b00, table_list=0x7f227c0ca1d8, can_deadlock=true) at /data/src/10.3/sql/sql_base.cc:5027
#14 0x0000557e9012ba96 in fill_schema_table_by_open (thd=0x7f227c000b00, mem_root=0x7f22f8285f30, is_show_fields_or_keys=false, table=0x7f227c06a4e8, schema_table=0x557e915e2ec0 <schema_tables+2432>, orig_db_name=0x7f227c086318, orig_table_name=0x7f227c0863b0, open_tables_state_backup=0x7f22f8285f80, can_deadlock=true) at /data/src/10.3/sql/sql_show.cc:4583
#15 0x0000557e9012d795 in get_all_tables (thd=0x7f227c000b00, tables=0x7f227c032c38, cond=0x7f227c033288) at /data/src/10.3/sql/sql_show.cc:5283
#16 0x0000557e9013e587 in get_schema_tables_result (join=0x7f227c06c5b8, executed_place=PROCESSED_BY_JOIN_EXEC) at /data/src/10.3/sql/sql_show.cc:8872
#17 0x0000557e900d7c60 in JOIN::exec_inner (this=0x7f227c06c5b8) at /data/src/10.3/sql/sql_select.cc:3952
#18 0x0000557e900d7304 in JOIN::exec (this=0x7f227c06c5b8) at /data/src/10.3/sql/sql_select.cc:3783
#19 0x0000557e900d8545 in mysql_select (thd=0x7f227c000b00, tables=0x7f227c0325e8, wild_num=1, fields=..., conds=0x0, og_num=1, order=0x7f227c033bb8, group=0x0, having=0x0, proc_param=0x0, select_options=4026796800, result=0x7f227c03c250, unit=0x7f227c030650, select_lex=0x7f227c030dc8) at /data/src/10.3/sql/sql_select.cc:4188
#20 0x0000557e900ca7e9 in handle_select (thd=0x7f227c000b00, lex=0x7f227c030588, result=0x7f227c03c250, setup_tables_done_option=1073741824) at /data/src/10.3/sql/sql_select.cc:382
#21 0x0000557e9008f303 in mysql_execute_command (thd=0x7f227c000b00) at /data/src/10.3/sql/sql_parse.cc:4833
#22 0x0000557e8ffbcc04 in sp_instr_stmt::exec_core (this=0x7f227c033ca0, thd=0x7f227c000b00, nextp=0x7f22f8287afc) at /data/src/10.3/sql/sp_head.cc:3595
#23 0x0000557e8ffbc014 in sp_lex_keeper::reset_lex_and_exec_core (this=0x7f227c033cf0, thd=0x7f227c000b00, nextp=0x7f22f8287afc, open_tables=false, instr=0x7f227c033ca0) at /data/src/10.3/sql/sp_head.cc:3311
#24 0x0000557e8ffbc7bd in sp_instr_stmt::execute (this=0x7f227c033ca0, thd=0x7f227c000b00, nextp=0x7f22f8287afc) at /data/src/10.3/sql/sp_head.cc:3498
#25 0x0000557e8ffb6581 in sp_head::execute (this=0x7f227c0176e8, thd=0x7f227c000b00, merge_da_on_success=false) at /data/src/10.3/sql/sp_head.cc:1349
#26 0x0000557e8ffb76e1 in sp_head::execute_trigger (this=0x7f227c0176e8, thd=0x7f227c000b00, db_name=0x7f227c04e9f8, table_name=0x7f227c04ea08, grant_info=0x7f227c0174b0) at /data/src/10.3/sql/sp_head.cc:1757
#27 0x0000557e90176c25 in Table_triggers_list::process_triggers (this=0x7f227c016e28, thd=0x7f227c000b00, event=TRG_EVENT_INSERT, time_type=TRG_ACTION_BEFORE, old_row_is_record1=true) at /data/src/10.3/sql/sql_trigger.cc:2204
#28 0x0000557e9000e966 in fill_record_n_invoke_before_triggers (thd=0x7f227c000b00, table=0x7f227c050970, ptr=0x7f227c051d58, values=..., ignore_errors=false, event=TRG_EVENT_INSERT) at /data/src/10.3/sql/sql_base.cc:8513
#29 0x0000557e90050571 in mysql_insert (thd=0x7f227c000b00, table_list=0x7f227c02a170, fields=..., values_list=..., update_fields=..., update_values=..., duplic=DUP_ERROR, ignore=false) at /data/src/10.3/sql/sql_insert.cc:1011
#30 0x0000557e9008eb9b in mysql_execute_command (thd=0x7f227c000b00) at /data/src/10.3/sql/sql_parse.cc:4726
#31 0x0000557e90099390 in mysql_parse (thd=0x7f227c000b00, rawbuf=0x7f227c02a068 "INSERT INTO trigger182183 VALUES (1)", length=36, parser_state=0x7f22f82895d0, is_com_multi=false, is_next_command=false) at /data/src/10.3/sql/sql_parse.cc:8013
#32 0x0000557e90086a43 in dispatch_command (command=COM_QUERY, thd=0x7f227c000b00, packet=0x7f227c00b361 "INSERT INTO trigger182183 VALUES (1)", packet_length=36, is_com_multi=false, is_next_command=false) at /data/src/10.3/sql/sql_parse.cc:1842
#33 0x0000557e90085482 in do_command (thd=0x7f227c000b00) at /data/src/10.3/sql/sql_parse.cc:1387
#34 0x0000557e901e9d85 in do_handle_one_connection (connect=0x557e94a5d8a0) at /data/src/10.3/sql/sql_connect.cc:1402
#35 0x0000557e901e9b12 in handle_one_connection (arg=0x557e94a5d8a0) at /data/src/10.3/sql/sql_connect.cc:1308
#36 0x0000557e90670979 in pfs_spawn_thread (arg=0x557e94a43770) at /data/src/10.3/storage/perfschema/pfs.cc:1862
#37 0x00007f2303bf3494 in start_thread (arg=0x7f22f828a700) at pthread_create.c:333
#38 0x00007f2301fd993f in clone () from /lib/x86_64-linux-gnu/libc.so.6

Comment by Elena Stepanova [ 2018-03-31 ]

Here is a test case which causes the same ASAN error as initially reported, but without UNION

CREATE VIEW v AS SELECT 1;
CREATE FUNCTION f() RETURNS INT RETURN 1;
 
SELECT * FROM INFORMATION_SCHEMA.PARAMETERS INNER JOIN INFORMATION_SCHEMA.VIEWS;
 
# Cleanup
DROP VIEW v;
DROP FUNCTION f;

10.1 1bec0c4595468

READ of size 4 at 0x6250000df648 thread T6
    #0 0x555a75fd0391 in mysql_make_view(THD*, TABLE_SHARE*, TABLE_LIST*, bool) /data/src/10.1/sql/sql_view.cc:1344
    #1 0x555a75cc918d in open_table(THD*, TABLE_LIST*, Open_table_context*) /data/src/10.1/sql/sql_base.cc:2467
    #2 0x555a75cd51a9 in open_and_process_table /data/src/10.1/sql/sql_base.cc:4068
    #3 0x555a75cd51a9 in open_tables(THD*, DDL_options_st const&, TABLE_LIST**, unsigned int*, unsigned int, Prelocking_strategy*) /data/src/10.1/sql/sql_base.cc:4579
    #4 0x555a75cd7958 in open_tables /data/src/10.1/sql/sql_base.h:252
    #5 0x555a75cd7958 in open_normal_and_derived_tables(THD*, TABLE_LIST*, unsigned int, unsigned int) /data/src/10.1/sql/sql_base.cc:5322
    #6 0x555a75eebc25 in fill_schema_table_by_open /data/src/10.1/sql/sql_show.cc:4232
    #7 0x555a75f2aab4 in get_all_tables(THD*, TABLE_LIST*, Item*) /data/src/10.1/sql/sql_show.cc:4870
    #8 0x555a75f2f083 in get_schema_tables_result(JOIN*, enum_schema_table_state) /data/src/10.1/sql/sql_show.cc:8227
    #9 0x555a75ed4e8d in JOIN::exec_inner() /data/src/10.1/sql/sql_select.cc:2691
    #10 0x555a75edd4de in JOIN::exec() /data/src/10.1/sql/sql_select.cc:2539
    #11 0x555a75ed1d31 in mysql_select(THD*, Item***, TABLE_LIST*, unsigned int, List<Item>&, Item*, unsigned int, st_order*, st_order*, Item*, st_order*, unsigned long long, select_result*, st_select_lex_unit*, st_select_lex*) /data/src/10.1/sql/sql_select.cc:3476
    #12 0x555a75ed251f in handle_select(THD*, LEX*, select_result*, unsigned long) /data/src/10.1/sql/sql_select.cc:388
    #13 0x555a75dc02d6 in mysql_execute_command(THD*) /data/src/10.1/sql/sql_parse.cc:3440
    #14 0x555a75dd5100 in mysql_parse(THD*, char*, unsigned int, Parser_state*) /data/src/10.1/sql/sql_parse.cc:7352
    #15 0x555a75ddb739 in dispatch_command(enum_server_command, THD*, char*, unsigned int) /data/src/10.1/sql/sql_parse.cc:1477
    #16 0x555a75de1cec in do_command(THD*) /data/src/10.1/sql/sql_parse.cc:1106
    #17 0x555a760856e2 in do_handle_one_connection(THD*) /data/src/10.1/sql/sql_connect.cc:1330
    #18 0x555a76085bf3 in handle_one_connection /data/src/10.1/sql/sql_connect.cc:1242

Comment by Oleksandr Byelkin [ 2018-05-04 ]

Problem is in incorrect restoring thd->stmt_lex

Comment by Oleksandr Byelkin [ 2018-05-07 ]

revision-id: 85e6bba1d6fb5cb2487c760d9e73812d4fb17f32 (mariadb-10.1.32-81-g85e6bba1d6f)
parent(s): 0db66ab18ffef6d8920e2e6ff66e99516a458a4d
author: Oleksandr Byelkin
committer: Oleksandr Byelkin
timestamp: 2018-05-07 19:14:02 +0200
message:

MDEV-15347: Valgrind or ASAN errors in mysql_make_view on query from information_schema

Make each lex pointing to statement lex instead of global pointer in THD (no
need store and restoire the global pointer and put it on SP stack).

Comment by Igor Babaev [ 2018-05-15 ]

Ok to push after fixing a misspelled word in the patch comment

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