Uploaded image for project: 'MariaDB Server'
  1. MariaDB Server
  2. MDEV-27748

Split_materialized: Crash in best_access_path() while executing complex query

Details

    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.

      Attachments

        Issue Links

          Activity

            psergei Sergei Petrunia added a comment - - edited

            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}}

            psergei Sergei Petrunia added a comment - - edited 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}}

            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
            

            psergei Sergei Petrunia added a comment - 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

            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)
            

            psergei Sergei Petrunia added a comment - 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)

            Looks to be on you now.

            julien.fritsch Julien Fritsch added a comment - Looks to be on you now.

            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.

            valerii Valerii Kravchuk added a comment - 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.

            People

              psergei Sergei Petrunia
              valerii Valerii Kravchuk
              Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Git Integration

                  Error rendering 'com.xiplink.jira.git.jira_git_plugin:git-issue-webpanel'. Please contact your Jira administrators.