[MDEV-27748] Split_materialized: Crash in best_access_path() while executing complex query Created: 2022-02-04  Updated: 2022-11-28  Resolved: 2022-05-17

Status: Closed
Project: MariaDB Server
Component/s: Optimizer
Affects Version/s: 10.5.12
Fix Version/s: N/A

Type: Bug Priority: Major
Reporter: Valerii Kravchuk Assignee: Sergei Petrunia
Resolution: Cannot Reproduce Votes: 0
Labels: split_materialized

Issue Links:
Relates
relates to MDEV-29638 Subselect using index cause crashes Stalled
relates to MDEV-30081 Crash with splitting from constant me... Closed

 Description   

The following crash (see full backtrace of the crashing thread below) is repeatable on 10.5.12:

Thread 1 (Thread 0x7f8612a59700 (LWP 122787)):
#0  0x00007f8b30b78790 in ?? () from /lib/x86_64-linux-gnu/libgcc_s.so.1
No symbol table info available.
#1  0x00007f8b30b7a29b in _Unwind_Backtrace () from /lib/x86_64-linux-gnu/libgcc_s.so.1
No symbol table info available.
#2  0x00007f8b30ebdee2 in __GI___backtrace (array=array@entry=0x7f8612a54fa0, size=size@entry=128) at backtrace.c:116
        arg = {array = 0x7f8612a54fa0, cfa = 140213815170176, cnt = 3, size = 128}
        once = 2
#3  0x0000559d5d76ea6e in my_print_stacktrace (stack_bottom=0x7f8612a58d58 "\370\246\032D\205\177", thread_stack=524288, silent=silent@entry=0 '\000') at ./mysys/stacktrace.c:212
        addrs = {0x559d5d76ea6e <my_print_stacktrace+46>, 0x559d5d1ca305 <handle_fatal_signal(int)+1157>, 0x7f8b312a5140 <__restore_rt>, 0x7f8612a552ff, 0x7f8612a550d0, 0x559d5d7c87fe <my_vsnprintf_ex+990>, 0x0, 0x559d5d7c85e5 <my_vsnprintf_ex+453>, 0x7f8612a55040, 0xb7d94100, 0x7f8612a550f0, 0x559d5df876e0 <my_charset_latin1>, 0x7f8612a55100, 0x559d5df876e0 <my_charset_latin1>, 0x7f8612a55040, 0x0, 0x7f8612a55060, 0x7f8612a552b0, 0x7f8544278520, 0x7f854427ca58, 0x7f85441aa6f8, 0x559d5d763395 <free_root+101>, 0x0, 0x559d5d96f3f1, 0x7f8612a57340, 0x559d5d3195e6 <SQL_SELECT::test_quick_select(THD*, Bitmap<64u>, unsigned long long, unsigned long long, bool, bool, bool, bool)+3014>, 0x7f854427cbe8, 0x559d5d319a68 <SQL_SELECT::test_quick_select(THD*, Bitmap<64u>, unsigned long long, unsigned long long, bool, bool, bool, bool)+4168>, 0x0, 0x1843debb7d94100, 0x0, 0x1843debb7d94100, 0x7f85440cc1f8, 0x7f8b312a4004 <__libc_write+100>, 0x559d5df611f0 <dflt_key_cache>, 0x9f, 0x7f8612a55100, 0x9f, 0x7f8612a553d0, 0x559d5d76e967 <my_safe_printf_stderr+199>, 0x7f8612a553d8, 0x3000000010, 0x7f8612a553e0, 0x7f8612a55310, 0x6974706d65747441, 0x746b63616220676e, 0x6f59202e65636172, 0x7375206e61632075, 0x6f66206568742065, 0x20676e69776f6c6c, 0x74616d726f666e69, 0x66206f74206e6f69, 0xa74756f20646e69, 0x796d206572656877, 0x65696420646c7173, 0x6f79206649202e64, 0x6f6e206565732075, 0x6567617373656d20, 0x2072657466612073, 0x6f73202c73696874, 0x20676e696874656d, 0x7265740a746e6577, 0x727720796c626972, 0xa2e2e2e676e6f, 0x616d207369687420, 0xa2e6c6961662079, 0x61206e616320000a, 0x63206562206f736c, 0x7962206465737561, 0x636e75666c616d20, 0x20676e696e6f6974, 0x6572617764726168, 0x412c24b9000a0a2e, 0x0, 0x0, 0x559d5ddf6848 <vtable for Json_writer_object>, 0x0, 0x0, 0x559d5dfe0f10 <end_of_list>, 0x7f8612a55210, 0x0, 0x62313265342d6301, 0x559d5ddf6878 <vtable for Json_writer_array+16>, 0x0, 0x0, 0x559d5d0f3601 <parse_engine_table_options(THD*, handlerton*, TABLE_SHARE*)+65>, 0x559d5ddf6858 <vtable for Json_writer_object+16>, 0x0, 0x0, 0x0, 0xf00, 0x4, 0x559d5d099af0 <sql_alloc_error_handler()>, 0x12, 0x559d5ddf6878 <vtable for Json_writer_array+16>, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x20, 0xfd9, 0x4, 0x559d5d099af0 <sql_alloc_error_handler()>, 0x700000012, 0x7f85441aa6f8, 0x1843debb7d94100, 0x0, 0x1843debb7d94100, 0x2, 0x559d5d960588, 0x1f, 0x7f8b312a3fef <__libc_write+79>, 0x0, 0x0, 0x7f850000000a, 0x7f8612a553b0, 0x7f8612a55400, 0x1, 0x100000000, 0x7f8600000018, 0x7f8612a553c0, 0x7f8612a55380, 0xb, 0x0, 0x7f85441774c0, 0x559d5d81047b}
        strings = 0x0
        n = <optimized out>
#4  0x0000559d5d1ca305 in handle_fatal_signal (sig=11) at ./sql/signal_handler.cc:222
        curr_time = 1643967920
        tm = {tm_sec = 20, tm_min = 45, tm_hour = 10, tm_mday = 4, tm_mon = 1, tm_year = 122, tm_wday = 5, tm_yday = 34, tm_isdst = 0, tm_gmtoff = 3600, tm_zone = 0x559d5f409f20 "CET"}
        thd = 0x7f85441aa6f8
        print_invalid_query_pointer = false
#5  <signal handler called>
No locals.
#6  0x0000000000000100 in ?? ()
No symbol table info available.
#7  0x0000559d5cff34ce in best_access_path (join=0x7f85441774c0, s=0x7f85440cb5c0, remaining_tables=<optimized out>, join_positions=0x7f85440cbb70, idx=0, disable_jbuf=true, record_count=1, pos=0x7f85440cbb70, loose_scan_pos=0x7f8612a55cc0) at ./sql/sql_select.cc:8079
        cmp_time = <optimized out>
        rnd_records = 49114
        best_filter_cmp_gain = <optimized out>
        thd = 0x7f85441aa6f8
        use_cond_selectivity = 4
        best_key = 0x7f85440cc1a0
        best_max_key_part = <optimized out>
        found_constraint = <optimized out>
        best = 41316.679470552343
        best_time = 49568.679470552343
        records = 41260
        best_ref_depends_map = 0
        best_filter = 0x0
        tmp = 1.7976931348623153e+308
        rec = <optimized out>
        best_uses_jbuf = false
        eq_join_set = 0x7f858c01cf78
        hj_start_key = <optimized out>
        spl_plan = 0x0
        filter = 0x0
        cause = 0x0
        best_type = JT_REF
        type = <optimized out>
        loose_scan_opt = {try_loosescan = <optimized out>, bound_sj_equalities = 0, handled_sj_equalities = <optimized out>, loose_scan_keyparts = <optimized out>, max_loose_keypart = <optimized out>, part1_conds_met = <optimized out>, quick_uses_applicable_index = <optimized out>, quick_max_loose_keypart = <optimized out>, best_loose_scan_key = <optimized out>, best_loose_scan_cost = <optimized out>, best_loose_scan_records = <optimized out>, best_loose_scan_start_key = <optimized out>, best_max_loose_keypart = <optimized out>, best_ref_depend_map = <optimized out>}
        trace_wrapper = {<Json_writer_struct> = {_vptr.Json_writer_struct = <optimized out>, my_writer = <optimized out>, context = {writer = <optimized out>}, closed = false}, <No data fields>}
        trace_paths = {<Json_writer_struct> = {_vptr.Json_writer_struct = 0x559d5ddf6878 <vtable for Json_writer_array+16>, my_writer = 0x0, context = {writer = 0x0}, closed = false}, <No data fields>}
        trace_access_scan = {<Json_writer_struct> = {_vptr.Json_writer_struct = <optimized out>, my_writer = <optimized out>, context = {writer = <optimized out>}, closed = false}, <No data fields>}
#8  0x0000559d5cff57c5 in best_extension_by_limited_search (join=0x7f85441774c0, remaining_tables=1, idx=0, record_count=1, read_time=0, search_depth=62, prune_level=1, use_cond_selectivity=4) at ./sql/sql_select.cc:9679
        trace_one_table = {<Json_writer_struct> = {_vptr.Json_writer_struct = <optimized out>, my_writer = <optimized out>, context = {writer = <optimized out>}, closed = <optimized out>}, <No data fields>}
        filter_cmp_gain = <optimized out>
        pushdown_cond_selectivity = <optimized out>
        current_record_count = 6.9274829148961644e-310
        current_read_time = 4.6508552942347573e-310
        position = 0x7f85440cbb70
        loose_scan_pos = {table = 0x0, records_read = 0, cond_selectivity = 0, read_time = 0, prefix_record_count = 0, key = 0x0, spl_plan = 0x0, range_rowid_filter_info = 0x0, ref_depend_map = 0, dups_producing_tables = 0, inner_tables_handled_with_other_sjs = 0, dups_weedout_picker = {<Semi_join_strategy_picker> = {_vptr.Semi_join_strategy_picker = 0x559d5de0dae8 <vtable for Duplicate_weedout_picker+16>}, first_dupsweedout_table = 61, dupsweedout_tables = 0, is_used = false}, firstmatch_picker = {<Semi_join_strategy_picker> = {_vptr.Semi_join_strategy_picker = 0x559d5de0daa8 <vtable for Firstmatch_picker+16>}, first_firstmatch_table = 61, first_firstmatch_rtbl = 140213815173776, firstmatch_need_tables = 140213815173584, is_used = false}, loosescan_picker = {<Semi_join_strategy_picker> = {_vptr.Semi_join_strategy_picker = 0x559d5de0da68 <vtable for LooseScan_picker+16>}, first_loosescan_table = 61, loosescan_need_tables = 94134368406464, loosescan_key = 30, loosescan_parts = 0, is_used = false}, sjmat_picker = {<Semi_join_strategy_picker> = {_vptr.Semi_join_strategy_picker = 0x559d5de0da28 <vtable for Sj_materialization_picker+16>}, is_used = false, sjm_scan_last_inner = 0, sjm_scan_need_tables = 0}, prefix_cost = {io_count = 0, avg_io_cost = 1, idx_io_count = 0, idx_avg_io_cost = 1, cpu_cost = 0, idx_cpu_cost = 0, import_cost = 0, mem_cost = 0, static IO_COEFF = 1, static CPU_COEFF = 1, static MEM_COEFF = 1, static IMPORT_COEFF = 1}, sj_strategy = SJ_OPT_NONE, n_sj_tables = 0, use_join_buffer = false}
        partial_join_cardinality = <optimized out>
        real_table_bit = 1
        pos = 0x7f85440cbb50
        thd = 0x7f85441aa6f8
        s = 0x7f85440cb5c0
        best_record_count = 1.7976931348623157e+308
        best_read_time = 1.7976931348623157e+308
        disable_jbuf = <optimized out>
        allowed_tables = 18446744073709551615
#9  0x0000559d5cff64c9 in greedy_search (use_cond_selectivity=4, prune_level=<optimized out>, search_depth=62, remaining_tables=1, join=0x7f85441774c0) at ./sql/sql_select.cc:8855
        is_interleave_error = <optimized out>
        pos = <optimized out>
        idx = 0
        best_idx = <optimized out>
        n_tables = 1
        record_count = 1
        read_time = 0
        size_remain = 1
        best_pos = {table = 0x0, records_read = 0, cond_selectivity = 0, read_time = 0, prefix_record_count = 0, key = 0x0, spl_plan = 0x0, range_rowid_filter_info = 0x0, ref_depend_map = 0, dups_producing_tables = 0, inner_tables_handled_with_other_sjs = 0, dups_weedout_picker = {<Semi_join_strategy_picker> = {_vptr.Semi_join_strategy_picker = 0x559d5de0dae8 <vtable for Duplicate_weedout_picker+16>}, first_dupsweedout_table = 61, dupsweedout_tables = 0, is_used = false}, firstmatch_picker = {<Semi_join_strategy_picker> = {_vptr.Semi_join_strategy_picker = 0x559d5de0daa8 <vtable for Firstmatch_picker+16>}, first_firstmatch_table = 61, first_firstmatch_rtbl = 140210348482240, firstmatch_need_tables = 140213815173032, is_used = false}, loosescan_picker = {<Semi_join_strategy_picker> = {_vptr.Semi_join_strategy_picker = 0x559d5de0da68 <vtable for LooseScan_picker+16>}, first_loosescan_table = 61, loosescan_need_tables = 477, loosescan_key = 7, loosescan_parts = 0, is_used = false}, sjmat_picker = {<Semi_join_strategy_picker> = {_vptr.Semi_join_strategy_picker = 0x559d5de0da28 <vtable for Sj_materialization_picker+16>}, is_used = false, sjm_scan_last_inner = 0, sjm_scan_need_tables = 0}, prefix_cost = {io_count = 0, avg_io_cost = 1, idx_io_count = 0, idx_avg_io_cost = 1, cpu_cost = 0, idx_cpu_cost = 0, import_cost = 0, mem_cost = 0, static IO_COEFF = 1, static CPU_COEFF = 1, static MEM_COEFF = 1, static IMPORT_COEFF = 1}, sj_strategy = SJ_OPT_NONE, n_sj_tables = 0, use_join_buffer = false}
        best_table = <optimized out>
        record_count = <optimized out>
        read_time = <optimized out>
        idx = <optimized out>
        best_idx = <optimized out>
        size_remain = <optimized out>
        best_pos = {table = <optimized out>, records_read = <optimized out>, cond_selectivity = <optimized out>, read_time = <optimized out>, prefix_record_count = <optimized out>, key = <optimized out>, spl_plan = <optimized out>, range_rowid_filter_info = <optimized out>, ref_depend_map = <optimized out>, dups_producing_tables = <optimized out>, inner_tables_handled_with_other_sjs = <optimized out>, dups_weedout_picker = {<Semi_join_strategy_picker> = {_vptr.Semi_join_strategy_picker = <optimized out>}, first_dupsweedout_table = <optimized out>, dupsweedout_tables = <optimized out>, is_used = <optimized out>}, firstmatch_picker = {<Semi_join_strategy_picker> = {_vptr.Semi_join_strategy_picker = <optimized out>}, first_firstmatch_table = <optimized out>, first_firstmatch_rtbl = <optimized out>, firstmatch_need_tables = <optimized out>, is_used = <optimized out>}, loosescan_picker = {<Semi_join_strategy_picker> = {_vptr.Semi_join_strategy_picker = <optimized out>}, first_loosescan_table = <optimized out>, loosescan_need_tables = <optimized out>, loosescan_key = <optimized out>, loosescan_parts = <optimized out>, is_used = <optimized out>}, sjmat_picker = {<Semi_join_strategy_picker> = {_vptr.Semi_join_strategy_picker = <optimized out>}, is_used = <optimized out>, sjm_scan_last_inner = <optimized out>, sjm_scan_need_tables = <optimized out>}, prefix_cost = {io_count = <optimized out>, avg_io_cost = <optimized out>, idx_io_count = <optimized out>, idx_avg_io_cost = <optimized out>, cpu_cost = <optimized out>, idx_cpu_cost = <optimized out>, import_cost = <optimized out>, mem_cost = <optimized out>, static IO_COEFF = 1, static CPU_COEFF = 1, static MEM_COEFF = 1, static IMPORT_COEFF = 1}, sj_strategy = <optimized out>, n_sj_tables = <optimized out>, use_join_buffer = <optimized out>}
        best_table = <optimized out>
        n_tables = <optimized out>
        is_interleave_error = <optimized out>
        pos = <optimized out>
        dummy = <optimized out>
#10 choose_plan (join=join@entry=0x7f85441774c0, join_tables=<optimized out>) at ./sql/sql_select.cc:8420
        search_depth = 62
        prune_level = <optimized out>
        use_cond_selectivity = 4
        straight_join = <optimized out>
        thd = <optimized out>
        jtab_sort_func = <optimized out>
        wrapper = {<Json_writer_struct> = {_vptr.Json_writer_struct = <optimized out>, my_writer = <optimized out>, context = {writer = <optimized out>}, closed = false}, <No data fields>}
        trace_plan = {<Json_writer_struct> = {_vptr.Json_writer_struct = 0x559d5ddf6878 <vtable for Json_writer_array+16>, my_writer = 0x0, context = {writer = 0x0}, closed = false}, <No data fields>}
#11 0x0000559d5d14fb4b in st_join_table::choose_best_splitting (this=this@entry=0x7f8544271798, record_count=record_count@entry=85698.312369741907, remaining_tables=remaining_tables@entry=16322) at ./sql/opt_split.cc:970
        all_table_map = <optimized out>
        first_non_const_pos = <optimized out>
        spl_keys = {static BITS_PER_ELEMENT = 64, static ARRAY_ELEMENTS = 1, static ALL_BITS_SET = 18446744073709551615, buffer = {<optimized out>}}
        table = <optimized out>
        rec_len = <optimized out>
        split_card = <optimized out>
        oper_cost = <optimized out>
        spl_opt_info = 0x7f85440cc990
        join = 0x7f85441774c0
        thd = 0x7f85441aa6f8
        tables_usable_for_splitting = 1
        keyuse_ext = 0x7f8544130dc8
        best_key_keyuse_ext_start = 0x7f8544130cf8
        best_table = 0x7f858c01cdc8
        best_rec_per_key = 8
        spl_plan = 0x0
        best_key = 1
        best_key_parts = 1
#12 0x0000559d5cff22bb in best_access_path (join=0x7f85441b46a0, s=0x7f8544271798, remaining_tables=16322, join_positions=0x7f8544273818, idx=5, disable_jbuf=false, record_count=85698.312369741907, pos=0x7f8544273e08, loose_scan_pos=0x7f8612a56450) at ./sql/sql_select.cc:7470
        thd = 0x7f85441aa6f8
        use_cond_selectivity = 4
        best_key = 0x0
        best_max_key_part = 0
        found_constraint = 0 '\000'
        best = 1.7976931348623157e+308
        best_time = 1.7976931348623157e+308
        records = 1.7976931348623157e+308
        best_ref_depends_map = 0
        best_filter = 0x0
        tmp = <optimized out>
        rec = <optimized out>
        best_uses_jbuf = false
        eq_join_set = 0x7f85440072c0
        hj_start_key = 0x0
        spl_plan = 0x0
        filter = 0x0
        cause = 0x0
        best_type = JT_UNKNOWN
        type = JT_UNKNOWN
        loose_scan_opt = {try_loosescan = <optimized out>, bound_sj_equalities = 0, handled_sj_equalities = <optimized out>, loose_scan_keyparts = <optimized out>, max_loose_keypart = <optimized out>, part1_conds_met = <optimized out>, quick_uses_applicable_index = <optimized out>, quick_max_loose_keypart = <optimized out>, best_loose_scan_key = <optimized out>, best_loose_scan_cost = <optimized out>, best_loose_scan_records = <optimized out>, best_loose_scan_start_key = <optimized out>, best_max_loose_keypart = <optimized out>, best_ref_depend_map = <optimized out>}
        trace_wrapper = {<Json_writer_struct> = {_vptr.Json_writer_struct = <optimized out>, my_writer = <optimized out>, context = {writer = <optimized out>}, closed = false}, <No data fields>}
        trace_paths = {<Json_writer_struct> = {_vptr.Json_writer_struct = 0x559d5ddf6878 <vtable for Json_writer_array+16>, my_writer = 0x0, context = {writer = 0x0}, closed = false}, <No data fields>}
        trace_access_scan = {<Json_writer_struct> = {_vptr.Json_writer_struct = <optimized out>, my_writer = <optimized out>, context = {writer = <optimized out>}, closed = <optimized out>}, <No data fields>}
#13 0x0000559d5cff57c5 in best_extension_by_limited_search (join=0x7f85441b46a0, remaining_tables=16322, idx=5, record_count=85698.312369741907, read_time=697868.54968738055, search_depth=57, prune_level=1, use_cond_selectivity=4) at ./sql/sql_select.cc:9679
        trace_one_table = {<Json_writer_struct> = {_vptr.Json_writer_struct = <optimized out>, my_writer = <optimized out>, context = {writer = <optimized out>}, closed = <optimized out>}, <No data fields>}
        filter_cmp_gain = <optimized out>
        pushdown_cond_selectivity = <optimized out>
        current_record_count = 0
        current_read_time = 0
        position = 0x7f8544273e08
        loose_scan_pos = {table = 0x0, records_read = 0, cond_selectivity = 0, read_time = 0, prefix_record_count = 0, key = 0x0, spl_plan = 0x0, range_rowid_filter_info = 0x0, ref_depend_map = 0, dups_producing_tables = 0, inner_tables_handled_with_other_sjs = 0, dups_weedout_picker = {<Semi_join_strategy_picker> = {_vptr.Semi_join_strategy_picker = 0x559d5de0dae8 <vtable for Duplicate_weedout_picker+16>}, first_dupsweedout_table = 61, dupsweedout_tables = 0, is_used = false}, firstmatch_picker = {<Semi_join_strategy_picker> = {_vptr.Semi_join_strategy_picker = 0x559d5de0daa8 <vtable for Firstmatch_picker+16>}, first_firstmatch_table = 61, first_firstmatch_rtbl = 312829568, firstmatch_need_tables = 140211425187912, is_used = false}, loosescan_picker = {<Semi_join_strategy_picker> = {_vptr.Semi_join_strategy_picker = 0x559d5de0da68 <vtable for LooseScan_picker+16>}, first_loosescan_table = 61, loosescan_need_tables = 140210350800088, loosescan_key = 0, loosescan_parts = 0, is_used = false}, sjmat_picker = {<Semi_join_strategy_picker> = {_vptr.Semi_join_strategy_picker = 0x559d5de0da28 <vtable for Sj_materialization_picker+16>}, is_used = false, sjm_scan_last_inner = 0, sjm_scan_need_tables = 0}, prefix_cost = {io_count = 0, avg_io_cost = 1, idx_io_count = 0, idx_avg_io_cost = 1, cpu_cost = 0, idx_cpu_cost = 0, import_cost = 0, mem_cost = 0, static IO_COEFF = 1, static CPU_COEFF = 1, static MEM_COEFF = 1, static IMPORT_COEFF = 1}, sj_strategy = SJ_OPT_NONE, n_sj_tables = 0, use_join_buffer = false}
        partial_join_cardinality = <optimized out>
        real_table_bit = 64
        pos = 0x7f85442736e8
        thd = 0x7f85441aa6f8
        s = 0x7f8544271798
        best_record_count = 1.7976931348623157e+308
        best_read_time = 1.7976931348623157e+308
        disable_jbuf = <optimized out>
        allowed_tables = 18446744073709551615
#14 0x0000559d5cff5ef3 in best_extension_by_limited_search (join=0x7f85441b46a0, remaining_tables=16354, idx=4, record_count=85698.312369741907, read_time=595030.57484369026, search_depth=58, prune_level=1, use_cond_selectivity=4) at ./sql/sql_select.cc:9766
        trace_rest = {<Json_writer_struct> = {_vptr.Json_writer_struct = 0x559d5ddf6878 <vtable for Json_writer_array+16>, my_writer = 0x0, context = {writer = 0x0}, closed = false}, <No data fields>}
        trace_one_table = {<Json_writer_struct> = {_vptr.Json_writer_struct = <optimized out>, my_writer = <optimized out>, context = {writer = <optimized out>}, closed = <optimized out>}, <No data fields>}
        filter_cmp_gain = <optimized out>
        pushdown_cond_selectivity = <optimized out>
        current_record_count = 85698.312369741907
        current_read_time = 697868.54968738055
        position = <optimized out>
        loose_scan_pos = {table = 0x0, records_read = 0, cond_selectivity = 0, read_time = 1.7976931348623157e+308, prefix_record_count = 0, key = 0x0, spl_plan = 0x0, range_rowid_filter_info = 0x0, ref_depend_map = 0, dups_producing_tables = 0, inner_tables_handled_with_other_sjs = 0, dups_weedout_picker = {<Semi_join_strategy_picker> = {_vptr.Semi_join_strategy_picker = 0x559d5de0dae8 <vtable for Duplicate_weedout_picker+16>}, first_dupsweedout_table = 61, dupsweedout_tables = 0, is_used = false}, firstmatch_picker = {<Semi_join_strategy_picker> = {_vptr.Semi_join_strategy_picker = 0x559d5de0daa8 <vtable for Firstmatch_picker+16>}, first_firstmatch_table = 61, first_firstmatch_rtbl = 312830128, firstmatch_need_tables = 140213770514760, is_used = false}, loosescan_picker = {<Semi_join_strategy_picker> = {_vptr.Semi_join_strategy_picker = 0x559d5de0da68 <vtable for LooseScan_picker+16>}, first_loosescan_table = 61, loosescan_need_tables = 140210350799784, loosescan_key = 0, loosescan_parts = 0, is_used = false}, sjmat_picker = {<Semi_join_strategy_picker> = {_vptr.Semi_join_strategy_picker = 0x559d5de0da28 <vtable for Sj_materialization_picker+16>}, is_used = false, sjm_scan_last_inner = 0, sjm_scan_need_tables = 0}, prefix_cost = {io_count = 0, avg_io_cost = 1, idx_io_count = 0, idx_avg_io_cost = 1, cpu_cost = 0, idx_cpu_cost = 0, import_cost = 0, mem_cost = 0, static IO_COEFF = 1, static CPU_COEFF = 1, static MEM_COEFF = 1, static IMPORT_COEFF = 1}, sj_strategy = SJ_OPT_NONE, n_sj_tables = 0, use_join_buffer = false}
        partial_join_cardinality = 85698.312369741907
        real_table_bit = <optimized out>
        pos = 0x7f85442736e0
        thd = 0x7f85441aa6f8
        s = 0x7f85442713f0
        best_record_count = 85698.312369741907
        best_read_time = 697868.54968738055
        disable_jbuf = <optimized out>
        allowed_tables = 18446744073709551615
#15 0x0000559d5cff5ef3 in best_extension_by_limited_search (join=0x7f85441b46a0, remaining_tables=16370, idx=3, record_count=85698.312369741907, read_time=492192.60000000003, search_depth=59, prune_level=1, use_cond_selectivity=4) at ./sql/sql_select.cc:9766
        trace_rest = {<Json_writer_struct> = {_vptr.Json_writer_struct = 0x559d5ddf6878 <vtable for Json_writer_array+16>, my_writer = 0x0, context = {writer = 0x0}, closed = false}, <No data fields>}
        trace_one_table = {<Json_writer_struct> = {_vptr.Json_writer_struct = <optimized out>, my_writer = <optimized out>, context = {writer = <optimized out>}, closed = <optimized out>}, <No data fields>}
        filter_cmp_gain = <optimized out>
        pushdown_cond_selectivity = <optimized out>
        current_record_count = 85698.312369741907
        current_read_time = 595030.57484369026
        position = <optimized out>
        loose_scan_pos = {table = 0x0, records_read = 0, cond_selectivity = 0, read_time = 1.7976931348623157e+308, prefix_record_count = 0, key = 0x0, spl_plan = 0x0, range_rowid_filter_info = 0x0, ref_depend_map = 0, dups_producing_tables = 0, inner_tables_handled_with_other_sjs = 0, dups_weedout_picker = {<Semi_join_strategy_picker> = {_vptr.Semi_join_strategy_picker = 0x559d5de0dae8 <vtable for Duplicate_weedout_picker+16>}, first_dupsweedout_table = 61, dupsweedout_tables = 0, is_used = false}, firstmatch_picker = {<Semi_join_strategy_picker> = {_vptr.Semi_join_strategy_picker = 0x559d5de0daa8 <vtable for Firstmatch_picker+16>}, first_firstmatch_table = 61, first_firstmatch_rtbl = 312830688, firstmatch_need_tables = 140203436170728, is_used = false}, loosescan_picker = {<Semi_join_strategy_picker> = {_vptr.Semi_join_strategy_picker = 0x559d5de0da68 <vtable for LooseScan_picker+16>}, first_loosescan_table = 61, loosescan_need_tables = 140210350799480, loosescan_key = 0, loosescan_parts = 0, is_used = false}, sjmat_picker = {<Semi_join_strategy_picker> = {_vptr.Semi_join_strategy_picker = 0x559d5de0da28 <vtable for Sj_materialization_picker+16>}, is_used = false, sjm_scan_last_inner = 0, sjm_scan_need_tables = 0}, prefix_cost = {io_count = 0, avg_io_cost = 1, idx_io_count = 0, idx_avg_io_cost = 1, cpu_cost = 0, idx_cpu_cost = 0, import_cost = 0, mem_cost = 0, static IO_COEFF = 1, static CPU_COEFF = 1, static MEM_COEFF = 1, static IMPORT_COEFF = 1}, sj_strategy = SJ_OPT_NONE, n_sj_tables = 0, use_join_buffer = false}
        partial_join_cardinality = 85698.312369741907
        real_table_bit = <optimized out>
        pos = 0x7f85442736d8
        thd = 0x7f85441aa6f8
        s = 0x7f8544271048
        best_record_count = 85698.312369741907
        best_read_time = 595030.57484369026
        disable_jbuf = <optimized out>
        allowed_tables = 18446744073709551615
#16 0x0000559d5cff5ef3 in best_extension_by_limited_search (join=0x7f85441b46a0, remaining_tables=16371, idx=2, record_count=188651, read_time=265811.40000000002, search_depth=60, prune_level=1, use_cond_selectivity=4) at ./sql/sql_select.cc:9766
        trace_rest = {<Json_writer_struct> = {_vptr.Json_writer_struct = 0x559d5ddf6878 <vtable for Json_writer_array+16>, my_writer = 0x0, context = {writer = 0x0}, closed = false}, <No data fields>}
        trace_one_table = {<Json_writer_struct> = {_vptr.Json_writer_struct = <optimized out>, my_writer = <optimized out>, context = {writer = <optimized out>}, closed = <optimized out>}, <No data fields>}
        filter_cmp_gain = <optimized out>
        pushdown_cond_selectivity = <optimized out>
        current_record_count = 188651
        current_read_time = 492192.60000000003
        position = <optimized out>
        loose_scan_pos = {table = 0x0, records_read = 0, cond_selectivity = 0, read_time = 1.7976931348623157e+308, prefix_record_count = 0, key = 0x0, spl_plan = 0x0, range_rowid_filter_info = 0x0, ref_depend_map = 0, dups_producing_tables = 0, inner_tables_handled_with_other_sjs = 0, dups_weedout_picker = {<Semi_join_strategy_picker> = {_vptr.Semi_join_strategy_picker = 0x559d5de0dae8 <vtable for Duplicate_weedout_picker+16>}, first_dupsweedout_table = 61, dupsweedout_tables = 0, is_used = false}, firstmatch_picker = {<Semi_join_strategy_picker> = {_vptr.Semi_join_strategy_picker = 0x559d5de0daa8 <vtable for Firstmatch_picker+16>}, first_firstmatch_table = 61, first_firstmatch_rtbl = 312831248, firstmatch_need_tables = 140208537558856, is_used = false}, loosescan_picker = {<Semi_join_strategy_picker> = {_vptr.Semi_join_strategy_picker = 0x559d5de0da68 <vtable for LooseScan_picker+16>}, first_loosescan_table = 61, loosescan_need_tables = 140210350799176, loosescan_key = 0, loosescan_parts = 0, is_used = false}, sjmat_picker = {<Semi_join_strategy_picker> = {_vptr.Semi_join_strategy_picker = 0x559d5de0da28 <vtable for Sj_materialization_picker+16>}, is_used = false, sjm_scan_last_inner = 0, sjm_scan_need_tables = 0}, prefix_cost = {io_count = 0, avg_io_cost = 1, idx_io_count = 0, idx_avg_io_cost = 1, cpu_cost = 0, idx_cpu_cost = 0, import_cost = 0, mem_cost = 0, static IO_COEFF = 1, static CPU_COEFF = 1, static MEM_COEFF = 1, static IMPORT_COEFF = 1}, sj_strategy = SJ_OPT_NONE, n_sj_tables = 0, use_join_buffer = false}
        partial_join_cardinality = 85698.312369741907
        real_table_bit = <optimized out>
        pos = 0x7f85442736d0
        thd = 0x7f85441aa6f8
        s = 0x7f85442701a8
        best_record_count = 188651
        best_read_time = 492192.60000000003
        disable_jbuf = <optimized out>
        allowed_tables = 18446744073709551615
#17 0x0000559d5cff5ef3 in best_extension_by_limited_search (join=0x7f85441b46a0, remaining_tables=16379, idx=1, record_count=188651, read_time=39430.199999999997, search_depth=61, prune_level=1, use_cond_selectivity=4) at ./sql/sql_select.cc:9766
        trace_rest = {<Json_writer_struct> = {_vptr.Json_writer_struct = 0x559d5ddf6878 <vtable for Json_writer_array+16>, my_writer = 0x0, context = {writer = 0x0}, closed = false}, <No data fields>}
        trace_one_table = {<Json_writer_struct> = {_vptr.Json_writer_struct = <optimized out>, my_writer = <optimized out>, context = {writer = <optimized out>}, closed = <optimized out>}, <No data fields>}
        filter_cmp_gain = <optimized out>
        pushdown_cond_selectivity = <optimized out>
        current_record_count = 188651
        current_read_time = 265811.40000000002
        position = <optimized out>
        loose_scan_pos = {table = 0x0, records_read = 0, cond_selectivity = 0, read_time = 1.7976931348623157e+308, prefix_record_count = 0, key = 0x0, spl_plan = 0x0, range_rowid_filter_info = 0x0, ref_depend_map = 0, dups_producing_tables = 0, inner_tables_handled_with_other_sjs = 0, dups_weedout_picker = {<Semi_join_strategy_picker> = {_vptr.Semi_join_strategy_picker = 0x559d5de0dae8 <vtable for Duplicate_weedout_picker+16>}, first_dupsweedout_table = 61, dupsweedout_tables = 0, is_used = false}, firstmatch_picker = {<Semi_join_strategy_picker> = {_vptr.Semi_join_strategy_picker = 0x559d5de0daa8 <vtable for Firstmatch_picker+16>}, first_firstmatch_table = 61, first_firstmatch_rtbl = 140213815177024, firstmatch_need_tables = 0, is_used = false}, loosescan_picker = {<Semi_join_strategy_picker> = {_vptr.Semi_join_strategy_picker = 0x559d5de0da68 <vtable for LooseScan_picker+16>}, first_loosescan_table = 61, loosescan_need_tables = 140210350798872, loosescan_key = 0, loosescan_parts = 0, is_used = false}, sjmat_picker = {<Semi_join_strategy_picker> = {_vptr.Semi_join_strategy_picker = 0x559d5de0da28 <vtable for Sj_materialization_picker+16>}, is_used = false, sjm_scan_last_inner = 0, sjm_scan_need_tables = 0}, prefix_cost = {io_count = 0, avg_io_cost = 1, idx_io_count = 0, idx_avg_io_cost = 1, cpu_cost = 0, idx_cpu_cost = 0, import_cost = 0, mem_cost = 0, static IO_COEFF = 1, static CPU_COEFF = 1, static MEM_COEFF = 1, static IMPORT_COEFF = 1}, sj_strategy = SJ_OPT_NONE, n_sj_tables = 0, use_join_buffer = false}
        partial_join_cardinality = 188651
        real_table_bit = <optimized out>
        pos = 0x7f85442736c8
        thd = 0x7f85441aa6f8
        s = 0x7f8544270ca0
        best_record_count = 188651
        best_read_time = 265811.40000000002
        disable_jbuf = <optimized out>
        allowed_tables = 18446744073709551615
#18 0x0000559d5cff5ef3 in best_extension_by_limited_search (join=0x7f85441b46a0, remaining_tables=16383, idx=0, record_count=1, read_time=0, search_depth=62, prune_level=1, use_cond_selectivity=4) at ./sql/sql_select.cc:9766
        trace_rest = {<Json_writer_struct> = {_vptr.Json_writer_struct = 0x559d5ddf6878 <vtable for Json_writer_array+16>, my_writer = 0x0, context = {writer = 0x0}, closed = false}, <No data fields>}
        trace_one_table = {<Json_writer_struct> = {_vptr.Json_writer_struct = <optimized out>, my_writer = <optimized out>, context = {writer = <optimized out>}, closed = <optimized out>}, <No data fields>}
        filter_cmp_gain = <optimized out>
        pushdown_cond_selectivity = <optimized out>
        current_record_count = 188651
        current_read_time = 39430.199999999997
        position = <optimized out>
        loose_scan_pos = {table = 0x0, records_read = 0, cond_selectivity = 0, read_time = 1.7976931348623157e+308, prefix_record_count = 0, key = 0x0, spl_plan = 0x0, range_rowid_filter_info = 0x0, ref_depend_map = 0, dups_producing_tables = 0, inner_tables_handled_with_other_sjs = 0, dups_weedout_picker = {<Semi_join_strategy_picker> = {_vptr.Semi_join_strategy_picker = 0x559d5de0dae8 <vtable for Duplicate_weedout_picker+16>}, first_dupsweedout_table = 61, dupsweedout_tables = 0, is_used = false}, firstmatch_picker = {<Semi_join_strategy_picker> = {_vptr.Semi_join_strategy_picker = 0x559d5de0daa8 <vtable for Firstmatch_picker+16>}, first_firstmatch_table = 61, first_firstmatch_rtbl = 140213815177696, firstmatch_need_tables = 140213815177759, is_used = false}, loosescan_picker = {<Semi_join_strategy_picker> = {_vptr.Semi_join_strategy_picker = 0x559d5de0da68 <vtable for LooseScan_picker+16>}, first_loosescan_table = 61, loosescan_need_tables = 0, loosescan_key = 0, loosescan_parts = 0, is_used = false}, sjmat_picker = {<Semi_join_strategy_picker> = {_vptr.Semi_join_strategy_picker = 0x559d5de0da28 <vtable for Sj_materialization_picker+16>}, is_used = false, sjm_scan_last_inner = 0, sjm_scan_need_tables = 0}, prefix_cost = {io_count = 0, avg_io_cost = 1, idx_io_count = 0, idx_avg_io_cost = 1, cpu_cost = 0, idx_cpu_cost = 0, import_cost = 0, mem_cost = 0, static IO_COEFF = 1, static CPU_COEFF = 1, static MEM_COEFF = 1, static IMPORT_COEFF = 1}, sj_strategy = SJ_OPT_NONE, n_sj_tables = 0, use_join_buffer = false}
        partial_join_cardinality = 188651
        real_table_bit = <optimized out>
        pos = 0x7f85442736c0
        thd = 0x7f85441aa6f8
        s = 0x7f85442708f8
        best_record_count = 1.7976931348623157e+308
        best_read_time = 1.7976931348623157e+308
        disable_jbuf = <optimized out>
        allowed_tables = 18446744073709551615
#19 0x0000559d5cff64c9 in greedy_search (use_cond_selectivity=4, prune_level=<optimized out>, search_depth=62, remaining_tables=16383, join=0x7f85441b46a0) at ./sql/sql_select.cc:8855
        is_interleave_error = <optimized out>
        pos = <optimized out>
        idx = 0
        best_idx = <optimized out>
        n_tables = 14
        record_count = 1
        read_time = 0
        size_remain = 14
        best_pos = {table = 0x0, records_read = 0, cond_selectivity = 0, read_time = 0, prefix_record_count = 0, key = 0x0, spl_plan = 0x0, range_rowid_filter_info = 0x0, ref_depend_map = 0, dups_producing_tables = 0, inner_tables_handled_with_other_sjs = 0, dups_weedout_picker = {<Semi_join_strategy_picker> = {_vptr.Semi_join_strategy_picker = 0x559d5de0dae8 <vtable for Duplicate_weedout_picker+16>}, first_dupsweedout_table = 61, dupsweedout_tables = 0, is_used = false}, firstmatch_picker = {<Semi_join_strategy_picker> = {_vptr.Semi_join_strategy_picker = 0x559d5de0daa8 <vtable for Firstmatch_picker+16>}, first_firstmatch_table = 61, first_firstmatch_rtbl = 109280373574811904, firstmatch_need_tables = 65536, is_used = false}, loosescan_picker = {<Semi_join_strategy_picker> = {_vptr.Semi_join_strategy_picker = 0x559d5de0da68 <vtable for LooseScan_picker+16>}, first_loosescan_table = 61, loosescan_need_tables = 0, loosescan_key = 0, loosescan_parts = 0, is_used = false}, sjmat_picker = {<Semi_join_strategy_picker> = {_vptr.Semi_join_strategy_picker = 0x559d5de0da28 <vtable for Sj_materialization_picker+16>}, is_used = false, sjm_scan_last_inner = 0, sjm_scan_need_tables = 0}, prefix_cost = {io_count = 0, avg_io_cost = 1, idx_io_count = 0, idx_avg_io_cost = 1, cpu_cost = 0, idx_cpu_cost = 0, import_cost = 0, mem_cost = 0, static IO_COEFF = 1, static CPU_COEFF = 1, static MEM_COEFF = 1, static IMPORT_COEFF = 1}, sj_strategy = SJ_OPT_NONE, n_sj_tables = 0, use_join_buffer = false}
        best_table = <optimized out>
        record_count = <optimized out>
        read_time = <optimized out>
        idx = <optimized out>
        best_idx = <optimized out>
        size_remain = <optimized out>
        best_pos = {table = <optimized out>, records_read = <optimized out>, cond_selectivity = <optimized out>, read_time = <optimized out>, prefix_record_count = <optimized out>, key = <optimized out>, spl_plan = <optimized out>, range_rowid_filter_info = <optimized out>, ref_depend_map = <optimized out>, dups_producing_tables = <optimized out>, inner_tables_handled_with_other_sjs = <optimized out>, dups_weedout_picker = {<Semi_join_strategy_picker> = {_vptr.Semi_join_strategy_picker = <optimized out>}, first_dupsweedout_table = <optimized out>, dupsweedout_tables = <optimized out>, is_used = <optimized out>}, firstmatch_picker = {<Semi_join_strategy_picker> = {_vptr.Semi_join_strategy_picker = <optimized out>}, first_firstmatch_table = <optimized out>, first_firstmatch_rtbl = <optimized out>, firstmatch_need_tables = <optimized out>, is_used = <optimized out>}, loosescan_picker = {<Semi_join_strategy_picker> = {_vptr.Semi_join_strategy_picker = <optimized out>}, first_loosescan_table = <optimized out>, loosescan_need_tables = <optimized out>, loosescan_key = <optimized out>, loosescan_parts = <optimized out>, is_used = <optimized out>}, sjmat_picker = {<Semi_join_strategy_picker> = {_vptr.Semi_join_strategy_picker = <optimized out>}, is_used = <optimized out>, sjm_scan_last_inner = <optimized out>, sjm_scan_need_tables = <optimized out>}, prefix_cost = {io_count = <optimized out>, avg_io_cost = <optimized out>, idx_io_count = <optimized out>, idx_avg_io_cost = <optimized out>, cpu_cost = <optimized out>, idx_cpu_cost = <optimized out>, import_cost = <optimized out>, mem_cost = <optimized out>, static IO_COEFF = 1, static CPU_COEFF = 1, static MEM_COEFF = 1, static IMPORT_COEFF = 1}, sj_strategy = <optimized out>, n_sj_tables = <optimized out>, use_join_buffer = <optimized out>}
        best_table = <optimized out>
        n_tables = <optimized out>
        is_interleave_error = <optimized out>
        pos = <optimized out>
        dummy = <optimized out>
#20 choose_plan (join=0x7f85441b46a0, join_tables=<optimized out>) at ./sql/sql_select.cc:8420
        search_depth = 62
        prune_level = <optimized out>
        use_cond_selectivity = 4
        straight_join = <optimized out>
        thd = <optimized out>
        jtab_sort_func = <optimized out>
        wrapper = {<Json_writer_struct> = {_vptr.Json_writer_struct = <optimized out>, my_writer = <optimized out>, context = {writer = <optimized out>}, closed = false}, <No data fields>}
        trace_plan = {<Json_writer_struct> = {_vptr.Json_writer_struct = 0x559d5ddf6878 <vtable for Json_writer_array+16>, my_writer = 0x0, context = {writer = 0x0}, closed = false}, <No data fields>}
#21 0x0000559d5d01f27d in make_join_statistics (join=0x7f85441b46a0, tables_list=..., keyuse_array=0x7f85441b4990) at ./sql/sql_select.cc:5660
        records = 1
        unit = 0x7f854403fdc8
        error = <optimized out>
        error = 0
        table = <optimized out>
        i = <optimized out>
        table_count = <optimized out>
        const_count = 0
        key = <optimized out>
        found_const_table_map = 0
        all_table_map = <optimized out>
        const_ref = {static BITS_PER_ELEMENT = 64, static ARRAY_ELEMENTS = 1, static ALL_BITS_SET = 18446744073709551615, buffer = {<optimized out>}}
        eq_part = {static BITS_PER_ELEMENT = 64, static ARRAY_ELEMENTS = 1, static ALL_BITS_SET = 18446744073709551615, buffer = {<optimized out>}}
        has_expensive_keyparts = <optimized out>
        table_vector = 0x7f8544273738
        stat = 0x7f85442701a8
        stat_end = 0x7f85442734d8
        s = <optimized out>
        stat_ref = 0x7f85442734d8
        stat_vector = 0x7f85442736c0
        keyuse = <optimized out>
        start_keyuse = <optimized out>
        outer_join = <optimized out>
        no_rows_const_tables = <optimized out>
        sargables = 0x7f8544277388
        ti = {<base_list_iterator> = {list = 0x7f854420a7b8, el = <optimized out>, prev = <optimized out>, current = <optimized out>}, <No data fields>}
        tables = <optimized out>
        thd = <optimized out>
        ref_changed = 0
#22 0x0000559d5d023af5 in JOIN::optimize_inner (this=0x7f85441b46a0) at ./sql/sql_select.cc:2296
        trace_wrapper = {<Json_writer_struct> = {_vptr.Json_writer_struct = <optimized out>, my_writer = <optimized out>, context = {writer = <optimized out>}, closed = false}, <No data fields>}
        trace_prepare = {<Json_writer_struct> = {_vptr.Json_writer_struct = <optimized out>, my_writer = <optimized out>, context = {writer = <optimized out>}, closed = false}, <No data fields>}
        trace_steps = {<Json_writer_struct> = {_vptr.Json_writer_struct = 0x559d5ddf6878 <vtable for Json_writer_array+16>, my_writer = 0x0, context = {writer = 0x0}, closed = false}, <No data fields>}
        sel = <optimized out>
        eq_list = {<base_list> = {<Sql_alloc> = {<No data fields>}, first = 0x559d5dfe0f10 <end_of_list>, last = 0x7f8612a57680, elements = 0}, <No data fields>}
        ignore_on_expr = <optimized out>
#23 0x0000559d5d024073 in JOIN::optimize (this=this@entry=0x7f85441b46a0) at ./sql/sql_select.cc:1668
        res = 0
        init_state = <optimized out>
#24 0x0000559d5cf73224 in mysql_derived_optimize (thd=0x7f85441aa6f8, lex=0x7f85441ae618, derived=0x7f8544176060) at ./sql/sql_derived.cc:1048
        join = 0x7f85441b46a0
        unit = 0x7f854403fdc8
        first_select = <optimized out>
        save_current_select = 0x7f8544209fa0
        res = false
#25 0x0000559d5cf72aba in mysql_handle_single_derived (lex=lex@entry=0x7f85441ae618, derived=derived@entry=0x7f8544176060, phases=phases@entry=4) at ./sql/sql_derived.cc:200
        phase_flag = 4
        phase = 2
        res = false
        allowed_phases = <optimized out>
#26 0x0000559d5d09655e in TABLE_LIST::handle_derived (this=this@entry=0x7f8544176060, lex=lex@entry=0x7f85441ae618, phases=phases@entry=4) at ./sql/table.cc:9167
        unit = <optimized out>
#27 0x0000559d5cf90a17 in LEX::handle_list_of_derived (phases=4, table_list=<optimized out>, this=0x7f85441ae618) at ./sql/sql_lex.h:4440
        tl = 0x7f8544176060
#28 st_select_lex::handle_derived (this=<optimized out>, lex=0x7f85441ae618, phases=phases@entry=4) at ./sql/sql_lex.cc:4932
No locals.
#29 0x0000559d5d0238ba in JOIN::optimize_inner (this=0x7f8544176f48) at ./sql/sql_select.cc:2136
        trace_wrapper = {<Json_writer_struct> = {_vptr.Json_writer_struct = <optimized out>, my_writer = <optimized out>, context = {writer = <optimized out>}, closed = false}, <No data fields>}
        trace_prepare = {<Json_writer_struct> = {_vptr.Json_writer_struct = <optimized out>, my_writer = <optimized out>, context = {writer = <optimized out>}, closed = false}, <No data fields>}
        trace_steps = {<Json_writer_struct> = {_vptr.Json_writer_struct = 0x559d5ddf6878 <vtable for Json_writer_array+16>, my_writer = 0x0, context = {writer = 0x0}, closed = false}, <No data fields>}
        sel = 0x7f8544209fa0
        eq_list = {<base_list> = {<Sql_alloc> = {<No data fields>}, first = 0x559d5dfe0f10 <end_of_list>, last = 0x7f8612a57840, elements = 0}, <No data fields>}
        ignore_on_expr = <optimized out>
#30 0x0000559d5d024073 in JOIN::optimize (this=this@entry=0x7f8544176f48) at ./sql/sql_select.cc:1668
        res = 0
        init_state = <optimized out>
#31 0x0000559d5d024143 in mysql_select (thd=0x7f85441aa6f8, tables=0x7f8544176060, fields=..., conds=0x0, og_num=0, order=0x0, group=0x0, having=0x0, proc_param=0x0, select_options=<optimized out>, result=0x7f85440407e0, unit=0x7f85441ae6e0, select_lex=0x7f8544209fa0) at ./sql/sql_select.cc:4759
        err = <optimized out>
        free_join = true
        join = 0x7f8544176f48
#32 0x0000559d5d024b7f in handle_select (thd=thd@entry=0x7f85441aa6f8, lex=lex@entry=0x7f85441ae618, result=result@entry=0x7f85440407e0, setup_tables_done_option=setup_tables_done_option@entry=0) at ./sql/sql_select.cc:444
        unit = 0x7f85441ae6e0
        res = <optimized out>
        select_lex = 0x7f8544209fa0
#33 0x0000559d5cfac291 in execute_sqlcom_select (thd=0x7f85441aa6f8, all_tables=0x7f8544176060) at ./sql/sql_parse.cc:6314
        save_protocol = 0x0
        lex = 0x7f85441ae618
        result = 0x7f85440407e0
        res = <optimized out>
#34 0x0000559d5cfbb298 in mysql_execute_command (thd=0x7f85441aa6f8) at ./sql/sql_parse.cc:4005
        privileges_requested = <optimized out>
        multi_delete_error = <optimized out>
        wsrep_error_label = <optimized out>
        error = <optimized out>
        res = 0
        up_result = 0
        lex = 0x7f85441ae618
        select_lex = <optimized out>
        first_table = 0x7f8544176060
        all_tables = 0x7f8544176060
        unit = 0x7f85441ae6e0
        have_table_map_for_update = <optimized out>
        rpl_filter = <optimized out>
        ots = {ctx = 0x7f85441ae2c8, traceable = false}
        trace_command = {<Json_writer_struct> = {_vptr.Json_writer_struct = <optimized out>, my_writer = <optimized out>, context = {writer = <optimized out>}, closed = false}, <No data fields>}
        trace_command_steps = {<Json_writer_struct> = {_vptr.Json_writer_struct = 0x559d5ddf6878 <vtable for Json_writer_array+16>, my_writer = 0x0, context = {writer = 0x0}, closed = false}, <No data fields>}
        orig_binlog_format = BINLOG_FORMAT_ROW
        orig_current_stmt_binlog_format = BINLOG_FORMAT_ROW
#35 0x0000559d5cfbcaaf in mysql_parse (thd=thd@entry=0x7f85441aa6f8, rawbuf=rawbuf@entry=0x7f8544208770 "SELECT * FROM (       select", ' ' <repeats 11 times>, "anid as A1 ,aV as VKStatus  ,ma.B as M ,mo.B1 as M1 ,IF(sa.b is "..., length=length@entry=3018, parser_state=parser_state@entry=0x7f8612a58420, is_com_multi=is_com_multi@entry=false, is_next_command=is_next_command@entry=false) at ./sql/sql_parse.cc:8100
        found_semicolon = <optimized out>
        error = <optimized out>
        lex = 0x7f85441ae618
        err = <optimized out>
#36 0x0000559d5cfbd3c9 in wsrep_mysql_parse (thd=0x7f85441aa6f8, rawbuf=0x7f8544208770 "SELECT * FROM (       select", ' ' <repeats 11 times>, "anid as A1 ,aV as VKStatus  ,ma.B as M ,mo.B1 as M1 ,IF(sa.b is "..., length=3018, parser_state=0x7f8612a58420, is_com_multi=<optimized out>, is_next_command=<optimized out>) at ./sql/sql_parse.cc:7903
        is_autocommit = true
        retry_autocommit = false
#37 0x0000559d5cfc0a2b in dispatch_command (command=COM_QUERY, thd=0x7f85441aa6f8, packet=<optimized out>, packet_length=<optimized out>, is_com_multi=<optimized out>, is_next_command=<optimized out>) at ./sql/sql_class.h:232
        packet_end = 0x7f854420933a ""
        parser_state = {m_lip = {lookahead_token = -1, lookahead_yylval = 0x0, m_thd = 0x7f85441aa6f8, m_ptr = 0x7f854420933b "\b", m_tok_start = 0x7f854420933b "\b", m_tok_end = 0x7f854420933b "\b", m_end_of_query = 0x7f854420933a "", m_tok_start_prev = 0x7f854420933a "", m_buf = 0x7f8544208770 "SELECT * FROM (       select", ' ' <repeats 11 times>, "anid as A1 ,aV as VKStatus  ,ma.B as M ,mo.B1 as M1 ,IF(sa.b is "..., m_buf_length = 3018, m_echo = true, m_echo_saved = false, m_cpp_buf = 0x7f85442093d0 "SELECT * FROM (       select", ' ' <repeats 11 times>, "anid as A1 ,aV as VKStatus  ,ma.B as M ,mo.B1 as M1 ,IF(sa.b is "..., m_cpp_ptr = 0x7f8544209f9a "", m_cpp_tok_start = 0x7f8544209f9a "", m_cpp_tok_start_prev = 0x7f8544209f9a "", m_cpp_tok_end = 0x7f8544209f9a "", m_body_utf8 = 0x0, m_body_utf8_ptr = 0x0, m_cpp_utf8_processed_ptr = 0x0, next_state = MY_LEX_END, found_semicolon = 0x0, ignore_space = false, stmt_prepare_mode = false, multi_statements = true, yylineno = 1, m_digest = 0x0, in_comment = NO_COMMENT, in_comment_saved = NO_COMMENT, m_cpp_text_start = 0x7f8544209f8c "M')     ) DATA", m_cpp_text_end = 0x7f8544209f8d "')     ) DATA", m_underscore_cs = 0x0}, m_yacc = {yacc_yyss = 0x0, yacc_yyvs = 0x0, m_set_signal_info = {m_item = {0x0 <repeats 12 times>}}, m_lock_type = TL_READ_DEFAULT, m_mdl_type = MDL_SHARED_READ}, m_digest_psi = 0x7f85441ae058}
        net = 0x7f85441aa978
        error = false
        do_end_of_statement = true
        drop_more_results = false
        __FUNCTION__ = "dispatch_command"
        res = <optimized out>
#38 0x0000559d5cfc1ae9 in do_command (thd=0x7f85441aa6f8) at ./sql/sql_parse.cc:1370
        out = <optimized out>
        return_value = <optimized out>
        packet = 0x7f85440f5388 "\003SELECT * FROM (       select", ' ' <repeats 11 times>, "anid as A1 ,aV as VKStatus  ,ma.B as M ,mo.B1 as M1 ,IF(sa.b is "...
        packet_length = <optimized out>
        net = 0x7f85441aa978
        command = <optimized out>
        __FUNCTION__ = "do_command"
#39 0x0000559d5d0c28b1 in do_handle_one_connection (connect=<optimized out>, connect@entry=0x559d7471eeb8, put_in_cache=put_in_cache@entry=true) at ./sql/sql_connect.cc:1418
        create_user = true
        thr_create_utime = <optimized out>
        thd = 0x7f85441aa6f8
#40 0x0000559d5d0c2d2d in handle_one_connection (arg=arg@entry=0x559d7471eeb8) at ./sql/sql_connect.cc:1312
        connect = 0x559d7471eeb8
#41 0x0000559d5d421ac2 in pfs_spawn_thread (arg=0x559d7477a0b8) at ./storage/perfschema/pfs.cc:2201
        typed_arg = 0x559d7477a0b8
        user_arg = 0x559d7471eeb8
        user_start_routine = 0x559d5d0c2cd0 <handle_one_connection(void*)>
        pfs = <optimized out>
        klass = <optimized out>
#42 0x00007f8b31299ea7 in start_thread (arg=<optimized out>) at pthread_create.c:477
        ret = <optimized out>
        pd = <optimized out>
        unwind_buf = {cancel_jmp_buf = {{jmp_buf = {140213815187200, 7875509563542567016, 140722139829038, 140722139829039, 140213815185152, 536576, -7906267659964680088, -7900144513530759064}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}}
        not_first_call = 0
#43 0x00007f8b30eb0def in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95
No locals.

There is a full backtrace and other details in the related issue.



 Comments   
Comment by Sergei Petrunia [ 2022-02-10 ]

Printing just the function names from the above stacktrace:

#0  0x00007f8b30b78790 in ?? () from /lib/x86_64-linux-gnu/libgcc_s.so.1
#1  0x00007f8b30b7a29b in _Unwind_Backtrace () from /lib/x86_64-linux-gnu/libgcc_s.so.1
#2  0x00007f8b30ebdee2 in __GI___backtrace (array=array@entry=0x7f8612a54fa0, size=size@entry=128) at backtrace.c:116
#3  0x0000559d5d76ea6e in my_print_stacktrace (stack_bottom=0x7f8612a58d58 "\370\246\032D\205\177", thread_stack=524288, silent=silent@entry=0 '\000') at ./mysys/stacktrace.c:212
#4  0x0000559d5d1ca305 in handle_fatal_signal (sig=11) at ./sql/signal_handler.cc:222
#5  <signal handler called>
#6  0x0000000000000100 in ?? ()
#7  0x0000559d5cff34ce in best_access_path (join=0x7f85441774c0, s=0x7f85440cb5c0, remaining_tables=<optimized out>, join_positions=0x7f85440cbb70, idx=0, disable_jbuf=true, record_count=1, pos=0x7f85440cbb70, loose_scan_pos=0x7f8612a55cc0) at ./sql/sql_select.cc:8079
#8  0x0000559d5cff57c5 in best_extension_by_limited_search (join=0x7f85441774c0, remaining_tables=1, idx=0, record_count=1, read_time=0, search_depth=62, prune_level=1, use_cond_selectivity=4) at ./sql/sql_select.cc:9679
#9  0x0000559d5cff64c9 in greedy_search (use_cond_selectivity=4, prune_level=<optimized out>, search_depth=62, remaining_tables=1, join=0x7f85441774c0) at ./sql/sql_select.cc:8855
#10 choose_plan (join=join@entry=0x7f85441774c0, join_tables=<optimized out>) at ./sql/sql_select.cc:8420
#11 0x0000559d5d14fb4b in st_join_table::choose_best_splitting (this=this@entry=0x7f8544271798, record_count=record_count@entry=85698.312369741907, remaining_tables=remaining_tables@entry=16322) at ./sql/opt_split.cc:970
#12 0x0000559d5cff22bb in best_access_path (join=0x7f85441b46a0, s=0x7f8544271798, remaining_tables=16322, join_positions=0x7f8544273818, idx=5, disable_jbuf=false, record_count=85698.312369741907, pos=0x7f8544273e08, loose_scan_pos=0x7f8612a56450) at ./sql/sql_select.cc:7470
#13 0x0000559d5cff57c5 in best_extension_by_limited_search (join=0x7f85441b46a0, remaining_tables=16322, idx=5, record_count=85698.312369741907, read_time=697868.54968738055, search_depth=57, prune_level=1, use_cond_selectivity=4) at ./sql/sql_select.cc:9679
#14 0x0000559d5cff5ef3 in best_extension_by_limited_search (join=0x7f85441b46a0, remaining_tables=16354, idx=4, record_count=85698.312369741907, read_time=595030.57484369026, search_depth=58, prune_level=1, use_cond_selectivity=4) at ./sql/sql_select.cc:9766
#15 0x0000559d5cff5ef3 in best_extension_by_limited_search (join=0x7f85441b46a0, remaining_tables=16370, idx=3, record_count=85698.312369741907, read_time=492192.60000000003, search_depth=59, prune_level=1, use_cond_selectivity=4) at ./sql/sql_select.cc:9766
#16 0x0000559d5cff5ef3 in best_extension_by_limited_search (join=0x7f85441b46a0, remaining_tables=16371, idx=2, record_count=188651, read_time=265811.40000000002, search_depth=60, prune_level=1, use_cond_selectivity=4) at ./sql/sql_select.cc:9766
#17 0x0000559d5cff5ef3 in best_extension_by_limited_search (join=0x7f85441b46a0, remaining_tables=16379, idx=1, record_count=188651, read_time=39430.199999999997, search_depth=61, prune_level=1, use_cond_selectivity=4) at ./sql/sql_select.cc:9766
#18 0x0000559d5cff5ef3 in best_extension_by_limited_search (join=0x7f85441b46a0, remaining_tables=16383, idx=0, record_count=1, read_time=0, search_depth=62, prune_level=1, use_cond_selectivity=4) at ./sql/sql_select.cc:9766
#19 0x0000559d5cff64c9 in greedy_search (use_cond_selectivity=4, prune_level=<optimized out>, search_depth=62, remaining_tables=16383, join=0x7f85441b46a0) at ./sql/sql_select.cc:8855
#20 choose_plan (join=0x7f85441b46a0, join_tables=<optimized out>) at ./sql/sql_select.cc:8420
#21 0x0000559d5d01f27d in make_join_statistics (join=0x7f85441b46a0, tables_list=..., keyuse_array=0x7f85441b4990) at ./sql/sql_select.cc:5660
#22 0x0000559d5d023af5 in JOIN::optimize_inner (this=0x7f85441b46a0) at ./sql/sql_select.cc:2296
#23 0x0000559d5d024073 in JOIN::optimize (this=this@entry=0x7f85441b46a0) at ./sql/sql_select.cc:1668
#24 0x0000559d5cf73224 in mysql_derived_optimize (thd=0x7f85441aa6f8, lex=0x7f85441ae618, derived=0x7f8544176060) at ./sql/sql_derived.cc:1048
#25 0x0000559d5cf72aba in mysql_handle_single_derived (lex=lex@entry=0x7f85441ae618, derived=derived@entry=0x7f8544176060, phases=phases@entry=4) at ./sql/sql_derived.cc:200
#26 0x0000559d5d09655e in TABLE_LIST::handle_derived (this=this@entry=0x7f8544176060, lex=lex@entry=0x7f85441ae618, phases=phases@entry=4) at ./sql/table.cc:9167
#27 0x0000559d5cf90a17 in LEX::handle_list_of_derived (phases=4, table_list=<optimized out>, this=0x7f85441ae618) at ./sql/sql_lex.h:4440
#28 st_select_lex::handle_derived (this=<optimized out>, lex=0x7f85441ae618, phases=phases@entry=4) at ./sql/sql_lex.cc:4932
#29 0x0000559d5d0238ba in JOIN::optimize_inner (this=0x7f8544176f48) at ./sql/sql_select.cc:2136
#30 0x0000559d5d024073 in JOIN::optimize (this=this@entry=0x7f8544176f48) at ./sql/sql_select.cc:1668
#31 0x0000559d5d024143 in mysql_select (thd=0x7f85441aa6f8, tables=0x7f8544176060, fields=..., conds=0x0, og_num=0, order=0x0, group=0x0, having=0x0, proc_param=0x0, select_options=<optimized out>, result=0x7f85440407e0, unit=0x7f85441ae6e0, select_lex=0x7f8544209fa0) at ./sql/sql_select.cc:4759
#32 0x0000559d5d024b7f in handle_select (thd=thd@entry=0x7f85441aa6f8, lex=lex@entry=0x7f85441ae618, result=result@entry=0x7f85440407e0, setup_tables_done_option=setup_tables_done_option@entry=0) at ./sql/sql_select.cc:444
#33 0x0000559d5cfac291 in execute_sqlcom_select (thd=0x7f85441aa6f8, all_tables=0x7f8544176060) at ./sql/sql_parse.cc:6314
#34 0x0000559d5cfbb298 in mysql_execute_command (thd=0x7f85441aa6f8) at ./sql/sql_parse.cc:4005
#35 0x0000559d5cfbcaaf in mysql_parse (thd=thd@entry=0x7f85441aa6f8, rawbuf=rawbuf@entry=0x7f8544208770 "SELECT * FROM (       select", ' ' <repeats 11 times>, "anid as A1 ,aV as VKStatus  ,ma.B as M ,mo.B1 as M1 ,IF(sa.b is "..., length=length@entry=3018, parser_state=parser_state@entry=0x7f8612a58420, is_com_multi=is_com_multi@entry=false, is_next_command=is_next_command@entry=false) at ./sql/sql_parse.cc:8100
#36 0x0000559d5cfbd3c9 in wsrep_mysql_parse (thd=0x7f85441aa6f8, rawbuf=0x7f8544208770 "SELECT * FROM (       select", ' ' <repeats 11 times>, "anid as A1 ,aV as VKStatus  ,ma.B as M ,mo.B1 as M1 ,IF(sa.b is "..., length=3018, parser_state=0x7f8612a58420, is_com_multi=<optimized out>, is_next_command=<optimized out>) at ./sql/sql_parse.cc:7903
#37 0x0000559d5cfc0a2b in dispatch_command (command=COM_QUERY, thd=0x7f85441aa6f8, packet=<optimized out>, packet_length=<optimized out>, is_com_multi=<optimized out>, is_next_command=<optimized out>) at ./sql/sql_class.h:232
#38 0x0000559d5cfc1ae9 in do_command (thd=0x7f85441aa6f8) at ./sql/sql_parse.cc:1370

Note the st_join_table::choose_best_splitting.
valerii, is the crash repeatable if one sets optimizer_switch='split_materialized=off' ?

Comment by Sergei Petrunia [ 2022-02-10 ]

It is crashing at sql_select.cc:8079, here:

  8063      if (s->quick)
  8064      {
  8065        /*
  8066          For each record we:
  8067          - read record range through 'quick'
  8068          - skip rows which does not satisfy WHERE constraints
  8069          TODO: 
  8070          We take into account possible use of join cache for ALL/index
  8071          access (see first else-branch below), but we don't take it into 
  8072          account here for range/index_merge access. Find out why this is so.
  8073        */
  8074        double cmp_time= (s->found_records - rnd_records)/TIME_FOR_COMPARE;
  8075        tmp= COST_MULT(record_count,
  8076                       COST_ADD(s->quick->read_time, cmp_time));
  8077  
  8078        if ( s->quick->get_type() == QUICK_SELECT_I::QS_TYPE_RANGE)
  8079        {

The next stack frame is

#6  0x0000000000000100 in ?? ()

Does this mean s->quick==NULL? (but we've got into "if (s->quick)" somehow)

Comment by Sergei Petrunia [ 2022-02-11 ]

Ok, I don't think we're able to get anything more from just stack trace.
valerii
1. Need a test with optimizer_switch='split_materialized=off', as mentioned above.
2. Do I get it correctly that EXPLAIN also crashes? Is the customer open to doing this:

  • set optimizer_trace=1
  • run the crashing select
  • catch the crash in gdb
  • run several gdb commands to print the contents of the optimizer trace so far.
    ?
Comment by Valerii Kravchuk [ 2022-02-11 ]

No crash with optimizer_switch='split_materialized=off'. If there are some gdb commands to try when the crash happens, please, list them.

Comment by Sergei Petrunia [ 2022-02-14 ]

Hi valerii:

It's hard to provide an automatic script. I can describe the steps for a human:

== Step 1: Get gdb to look at the crash ==

Option #1: Run the server under debugger and crash it
Option #2: Run the server with arguments so it produces a core file, crash it, load the core file into gdb.

(I saw the customer was able to do option #2, right?)

In both cases, the optimizer trace should be enabled when running the crashing query:

set optimizer_trace=1;
<crashing select>;

== Step 2: Find the thread that caused the crash ==

For example in this MDEV it was "Thread 1":

Thread 1 (Thread 0x7f8612a59700 (LWP 122787)):
#0 0x00007f8b30b78790 in ?? () from /lib/x86_64-linux-gnu/libgcc_s.so.1
No symbol table info available.
#1 0x00007f8b30b7a29b in _Unwind_Backtrace () from /lib/x86_64-linux-gnu/libgcc_s.so.1
No symbol table info available.
#2 0x00007f8b30ebdee2 in _GI__backtrace (array=array@entry=0x7f8612a54fa0, size=size@entry=128) at backtrace.c:116
arg =

{array = 0x7f8612a54fa0, cfa = 140213815170176, cnt = 3, size = 128}

once = 2

See "Thread 1".
Give gdb command to select that thread:

(gdb) thread 1

== Step 3: Find the frame that has JOIN or THD as an argument ===

For example, in the above stack trace it was:

#7 0x0000559d5cff34ce in best_access_path (join=0x7f85441774c0, s=0x7f85440cb5c0, remaining_tables=<optimized out>, join_positions=0x7f85440cbb70, idx=0, disable_jbuf=true, record_count=1, pos=0x7f85440cbb70, loose_scan_pos=0x7f8612a55cc0) at ./sql/sql_select.cc:8079
cmp_time = <optimized out>
rnd_records = 49114
best_filter_cmp_gain = <optimized out>
thd = 0x7f85441aa6f8

The frame number is listed at the start of the line (#7). Give gdb command to go that stack trace:

(gdb) frame 7

== Step 4: print the trace ==

The trace will be large, so let's redirect it to a file:

(gdb) set log file /tmp/trace.txt
(gdb) set logging on
(gdb) printf "%s\n", join->thd->opt_trace->current_trace->current_json->output.str.Ptr
(gdb) set logging off

Get us the contents of /tmp/trace.txt

Comment by Sergei Petrunia [ 2022-02-27 ]

(gdb) printf "%s\n",join->thd->opt_trace->current_trace->current_json->output.str.Ptr
No symbol "join" in current context.

valerii, I'm not sure how this could happen. best_access_path does have a "join" argument, and it is used.
Do we know if the customer has debuginfo packages installed? Or, do we know which exact binary they are using (If yes, I could try to check the commands on my side).

Comment by Sergei Petrunia [ 2022-03-07 ]

Ok, I've figured it out.

I get this kind of stack trace when debug info is not installed:

(gdb) where
#0  0x000055d0091b9bc4 in best_access_path(JOIN*, st_join_table*, unsigned long long, POSITION const*, unsigned int, bool, double, POSITION*, POSITION*) ()
#1  0x000055d0091bd2ca in ?? ()
#2  0x000055d0091be03b in choose_plan(JOIN*, unsigned long long) ()
#3  0x000055d0091e756d in ?? ()
#4  0x000055d0091eb944 in JOIN::optimize_inner() ()
#5  0x000055d0091ebf13 in JOIN::optimize() ()

A quick way to check that you indeed do NOT have the debug info:

(gdb) file  /usr/sbin/mariadbd  
Reading symbols from /usr/sbin/mariadbd...
(No debugging symbols found in /usr/sbin/mariadbd)
(gdb) 

Let's install debug info now:

root@fhm04t9ugeuomsabbjuo:/home/psergey# dpkg-query -S   /usr/sbin/mariadbd
mariadb-server-core-10.5: /usr/sbin/mariadbd

 sudo apt install mariadb-server-core-10.5-dbgsym 

(gdb) file /usr/sbin/mariadbd
Reading symbols from /usr/sbin/mariadbd...
Reading symbols from /usr/lib/debug/.build-id/b6/a8b251f643ccfcb8f4c2096b90c6636e5b7816.debug...
(gdb) q

and the stack trace looks like this:

(gdb) where 10
#0  best_access_path (join=0x7f979c014908, s=0x7f979c015238, remaining_tables=1, join_positions=0x7f979c0157e8, idx=0, disable_jbuf=false, record_count=1, pos=0x7f979c0157e8, loose_scan_pos=0x7f981c0e20a0)
    at ./sql/sql_select.cc:7469
#1  0x000055dcf340f2ca in best_extension_by_limited_search (join=0x7f979c014908, remaining_tables=1, idx=0, record_count=1, read_time=0, search_depth=62, prune_level=1, use_cond_selectivity=4) at ./sql/sql_select.cc:9711
#2  0x000055dcf341003b in greedy_search (use_cond_selectivity=4, prune_level=1, search_depth=62, remaining_tables=1, join=0x7f979c014908) at ./sql/sql_select.cc:8887
#3  choose_plan (join=0x7f979c014908, join_tables=<optimized out>) at ./sql/sql_select.cc:8452

note the {{ best_access_path (join=0x7f979c014908}}

Comment by Sergei Petrunia [ 2022-03-07 ]

Wait but above you mention that they DO have debug info:

ii  mariadb-server-core-10.5-dbgsym      1:10.5.13+maria~bullseye       amd64        debug symbols for mariadb-server-core-10.5

Comment by Sergei Petrunia [ 2022-03-07 ]

However, the attached file trace_unfinished.txt , lines 17 and 18 show:

Reading symbols from /usr/sbin/mariadbd...
(No debugging symbols found in /usr/sbin/mariadbd)

Comment by Julien Fritsch [ 2022-03-16 ]

Looks to be on you now.

Comment by Valerii Kravchuk [ 2022-03-30 ]

If you do not have enough details in the issues to work on this, keep it "Open" (maybe with decreased priority if that matters) and wait for further comments from community users, new customers or older issues re-opened (then they will be re-associated). I have no repeatable test case to share at the moment.

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