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

MSAN / Valgrind errors in compare_cost upon JOIN with sequence

    XMLWordPrintable

Details

    • Bug
    • Status: Open (View Workflow)
    • Major
    • Resolution: Unresolved
    • 11.0, 11.1, 11.2
    • 11.1
    • Optimizer, Sequences
    • None

    Description

      CREATE SEQUENCE s;
      CREATE TABLE t (a INT);
      INSERT INTO t VALUES (1),(2); # Optional, fails either way
      SELECT * FROM t STRAIGHT_JOIN s;
       
      # Cleanup
      DROP TABLE t;
      DROP SEQUENCE s;
      

      11.0 5e2d08b5 Valgrind

      ==2877770== Thread 6:
      ==2877770== Conditional jump or move depends on uninitialised value(s)
      ==2877770==    at 0xBEE307: compare_cost(double, double) (sql_select.cc:112)
      ==2877770==    by 0xBB5BE9: st_join_table::estimate_scan_time() (sql_select.cc:15923)
      ==2877770==    by 0xB99365: make_join_statistics(JOIN*, List<TABLE_LIST>&, st_dynamic_array*) (sql_select.cc:5958)
      ==2877770==    by 0xB8CF42: JOIN::optimize_inner() (sql_select.cc:2609)
      ==2877770==    by 0xB8A662: JOIN::optimize() (sql_select.cc:1935)
      ==2877770==    by 0xB967AD: mysql_select(THD*, TABLE_LIST*, List<Item>&, Item*, unsigned int, st_order*, st_order*, Item*, st_order*, unsigned long long, select_result*, st_select_lex_unit*, st_select_lex*) (sql_select.cc:5176)
      ==2877770==    by 0xB84DE7: handle_select(THD*, LEX*, select_result*, unsigned long long) (sql_select.cc:626)
      ==2877770==    by 0xB2842C: execute_sqlcom_select(THD*, TABLE_LIST*) (sql_parse.cc:6288)
      ==2877770==    by 0xB1F2C1: mysql_execute_command(THD*, bool) (sql_parse.cc:3959)
      ==2877770==    by 0xB2D311: mysql_parse(THD*, char*, unsigned int, Parser_state*) (sql_parse.cc:8030)
      ==2877770==    by 0xB18D9E: dispatch_command(enum_server_command, THD*, char*, unsigned int, bool) (sql_parse.cc:1894)
      ==2877770==    by 0xB176F7: do_command(THD*, bool) (sql_parse.cc:1407)
      ==2877770==    by 0xD1448F: do_handle_one_connection(CONNECT*, bool) (sql_connect.cc:1416)
      ==2877770==    by 0xD14204: handle_one_connection (sql_connect.cc:1318)
      ==2877770==    by 0x124ADED: pfs_spawn_thread (pfs.cc:2201)
      ==2877770==    by 0x522EFD3: start_thread (pthread_create.c:442)
      ==2877770== 
      ==2877770== Conditional jump or move depends on uninitialised value(s)
      ==2877770==    at 0xBEE31E: compare_cost(double, double) (sql_select.cc:112)
      ==2877770==    by 0xBB5BE9: st_join_table::estimate_scan_time() (sql_select.cc:15923)
      ==2877770==    by 0xB99365: make_join_statistics(JOIN*, List<TABLE_LIST>&, st_dynamic_array*) (sql_select.cc:5958)
      ==2877770==    by 0xB8CF42: JOIN::optimize_inner() (sql_select.cc:2609)
      ==2877770==    by 0xB8A662: JOIN::optimize() (sql_select.cc:1935)
      ==2877770==    by 0xB967AD: mysql_select(THD*, TABLE_LIST*, List<Item>&, Item*, unsigned int, st_order*, st_order*, Item*, st_order*, unsigned long long, select_result*, st_select_lex_unit*, st_select_lex*) (sql_select.cc:5176)
      ==2877770==    by 0xB84DE7: handle_select(THD*, LEX*, select_result*, unsigned long long) (sql_select.cc:626)
      ==2877770==    by 0xB2842C: execute_sqlcom_select(THD*, TABLE_LIST*) (sql_parse.cc:6288)
      ==2877770==    by 0xB1F2C1: mysql_execute_command(THD*, bool) (sql_parse.cc:3959)
      ==2877770==    by 0xB2D311: mysql_parse(THD*, char*, unsigned int, Parser_state*) (sql_parse.cc:8030)
      ==2877770==    by 0xB18D9E: dispatch_command(enum_server_command, THD*, char*, unsigned int, bool) (sql_parse.cc:1894)
      ==2877770==    by 0xB176F7: do_command(THD*, bool) (sql_parse.cc:1407)
      ==2877770==    by 0xD1448F: do_handle_one_connection(CONNECT*, bool) (sql_connect.cc:1416)
      ==2877770==    by 0xD14204: handle_one_connection (sql_connect.cc:1318)
      ==2877770==    by 0x124ADED: pfs_spawn_thread (pfs.cc:2201)
      ==2877770==    by 0x522EFD3: start_thread (pthread_create.c:442)
      ==2877770== 
      ==2877770== Conditional jump or move depends on uninitialised value(s)
      ==2877770==    at 0xBEE3D7: compare_cost(double, double) (sql_select.cc:113)
      ==2877770==    by 0xBB5BE9: st_join_table::estimate_scan_time() (sql_select.cc:15923)
      ==2877770==    by 0xB99365: make_join_statistics(JOIN*, List<TABLE_LIST>&, st_dynamic_array*) (sql_select.cc:5958)
      ==2877770==    by 0xB8CF42: JOIN::optimize_inner() (sql_select.cc:2609)
      ==2877770==    by 0xB8A662: JOIN::optimize() (sql_select.cc:1935)
      ==2877770==    by 0xB967AD: mysql_select(THD*, TABLE_LIST*, List<Item>&, Item*, unsigned int, st_order*, st_order*, Item*, st_order*, unsigned long long, select_result*, st_select_lex_unit*, st_select_lex*) (sql_select.cc:5176)
      ==2877770==    by 0xB84DE7: handle_select(THD*, LEX*, select_result*, unsigned long long) (sql_select.cc:626)
      ==2877770==    by 0xB2842C: execute_sqlcom_select(THD*, TABLE_LIST*) (sql_parse.cc:6288)
      ==2877770==    by 0xB1F2C1: mysql_execute_command(THD*, bool) (sql_parse.cc:3959)
      ==2877770==    by 0xB2D311: mysql_parse(THD*, char*, unsigned int, Parser_state*) (sql_parse.cc:8030)
      ==2877770==    by 0xB18D9E: dispatch_command(enum_server_command, THD*, char*, unsigned int, bool) (sql_parse.cc:1894)
      ==2877770==    by 0xB176F7: do_command(THD*, bool) (sql_parse.cc:1407)
      ==2877770==    by 0xD1448F: do_handle_one_connection(CONNECT*, bool) (sql_connect.cc:1416)
      ==2877770==    by 0xD14204: handle_one_connection (sql_connect.cc:1318)
      ==2877770==    by 0x124ADED: pfs_spawn_thread (pfs.cc:2201)
      ==2877770==    by 0x522EFD3: start_thread (pthread_create.c:442)
      ==2877770== 
      ==2877770== Conditional jump or move depends on uninitialised value(s)
      ==2877770==    at 0xBEE3F4: compare_cost(double, double) (sql_select.cc:113)
      ==2877770==    by 0xBB5BE9: st_join_table::estimate_scan_time() (sql_select.cc:15923)
      ==2877770==    by 0xB99365: make_join_statistics(JOIN*, List<TABLE_LIST>&, st_dynamic_array*) (sql_select.cc:5958)
      ==2877770==    by 0xB8CF42: JOIN::optimize_inner() (sql_select.cc:2609)
      ==2877770==    by 0xB8A662: JOIN::optimize() (sql_select.cc:1935)
      ==2877770==    by 0xB967AD: mysql_select(THD*, TABLE_LIST*, List<Item>&, Item*, unsigned int, st_order*, st_order*, Item*, st_order*, unsigned long long, select_result*, st_select_lex_unit*, st_select_lex*) (sql_select.cc:5176)
      ==2877770==    by 0xB84DE7: handle_select(THD*, LEX*, select_result*, unsigned long long) (sql_select.cc:626)
      ==2877770==    by 0xB2842C: execute_sqlcom_select(THD*, TABLE_LIST*) (sql_parse.cc:6288)
      ==2877770==    by 0xB1F2C1: mysql_execute_command(THD*, bool) (sql_parse.cc:3959)
      ==2877770==    by 0xB2D311: mysql_parse(THD*, char*, unsigned int, Parser_state*) (sql_parse.cc:8030)
      ==2877770==    by 0xB18D9E: dispatch_command(enum_server_command, THD*, char*, unsigned int, bool) (sql_parse.cc:1894)
      ==2877770==    by 0xB176F7: do_command(THD*, bool) (sql_parse.cc:1407)
      ==2877770==    by 0xD1448F: do_handle_one_connection(CONNECT*, bool) (sql_connect.cc:1416)
      ==2877770==    by 0xD14204: handle_one_connection (sql_connect.cc:1318)
      ==2877770==    by 0x124ADED: pfs_spawn_thread (pfs.cc:2201)
      ==2877770==    by 0x522EFD3: start_thread (pthread_create.c:442)
      ==2877770== 
      ==2877770== Conditional jump or move depends on uninitialised value(s)
      ==2877770==    at 0xB83A5B: COST_ADD(double, double) (optimizer_costs.h:132)
      ==2877770==    by 0xBA48C9: best_access_path(JOIN*, st_join_table*, unsigned long long, POSITION const*, unsigned int, bool, double, POSITION*, POSITION*) (sql_select.cc:9527)
      ==2877770==    by 0xBA8B4B: get_costs_for_tables(JOIN*, unsigned long long, unsigned int, double, Json_writer_object*, st_join_table**, SORT_POSITION**, unsigned long long*, bool) (sql_select.cc:11128)
      ==2877770==    by 0xBA944C: best_extension_by_limited_search(JOIN*, unsigned long long, unsigned int, double, double, unsigned int, unsigned int, unsigned long long*) (sql_select.cc:11385)
      ==2877770==    by 0xBAA208: best_extension_by_limited_search(JOIN*, unsigned long long, unsigned int, double, double, unsigned int, unsigned int, unsigned long long*) (sql_select.cc:11611)
      ==2877770==    by 0xBA6ACC: greedy_search(JOIN*, unsigned long long, unsigned int, unsigned int) (sql_select.cc:10356)
      ==2877770==    by 0xBA5ADB: choose_plan(JOIN*, unsigned long long, TABLE_LIST*) (sql_select.cc:9875)
      ==2877770==    by 0xB9A1BA: make_join_statistics(JOIN*, List<TABLE_LIST>&, st_dynamic_array*) (sql_select.cc:6127)
      ==2877770==    by 0xB8CF42: JOIN::optimize_inner() (sql_select.cc:2609)
      ==2877770==    by 0xB8A662: JOIN::optimize() (sql_select.cc:1935)
      ==2877770==    by 0xB967AD: mysql_select(THD*, TABLE_LIST*, List<Item>&, Item*, unsigned int, st_order*, st_order*, Item*, st_order*, unsigned long long, select_result*, st_select_lex_unit*, st_select_lex*) (sql_select.cc:5176)
      ==2877770==    by 0xB84DE7: handle_select(THD*, LEX*, select_result*, unsigned long long) (sql_select.cc:626)
      ==2877770==    by 0xB2842C: execute_sqlcom_select(THD*, TABLE_LIST*) (sql_parse.cc:6288)
      ==2877770==    by 0xB1F2C1: mysql_execute_command(THD*, bool) (sql_parse.cc:3959)
      ==2877770==    by 0xB2D311: mysql_parse(THD*, char*, unsigned int, Parser_state*) (sql_parse.cc:8030)
      ==2877770==    by 0xB18D9E: dispatch_command(enum_server_command, THD*, char*, unsigned int, bool) (sql_parse.cc:1894)
      ==2877770== 
      ==2877770== Conditional jump or move depends on uninitialised value(s)
      ==2877770==    at 0xB83B64: COST_ADD(double, double) (optimizer_costs.h:134)
      ==2877770==    by 0xBA48C9: best_access_path(JOIN*, st_join_table*, unsigned long long, POSITION const*, unsigned int, bool, double, POSITION*, POSITION*) (sql_select.cc:9527)
      ==2877770==    by 0xBA8B4B: get_costs_for_tables(JOIN*, unsigned long long, unsigned int, double, Json_writer_object*, st_join_table**, SORT_POSITION**, unsigned long long*, bool) (sql_select.cc:11128)
      ==2877770==    by 0xBA944C: best_extension_by_limited_search(JOIN*, unsigned long long, unsigned int, double, double, unsigned int, unsigned int, unsigned long long*) (sql_select.cc:11385)
      ==2877770==    by 0xBAA208: best_extension_by_limited_search(JOIN*, unsigned long long, unsigned int, double, double, unsigned int, unsigned int, unsigned long long*) (sql_select.cc:11611)
      ==2877770==    by 0xBA6ACC: greedy_search(JOIN*, unsigned long long, unsigned int, unsigned int) (sql_select.cc:10356)
      ==2877770==    by 0xBA5ADB: choose_plan(JOIN*, unsigned long long, TABLE_LIST*) (sql_select.cc:9875)
      ==2877770==    by 0xB9A1BA: make_join_statistics(JOIN*, List<TABLE_LIST>&, st_dynamic_array*) (sql_select.cc:6127)
      ==2877770==    by 0xB8CF42: JOIN::optimize_inner() (sql_select.cc:2609)
      ==2877770==    by 0xB8A662: JOIN::optimize() (sql_select.cc:1935)
      ==2877770==    by 0xB967AD: mysql_select(THD*, TABLE_LIST*, List<Item>&, Item*, unsigned int, st_order*, st_order*, Item*, st_order*, unsigned long long, select_result*, st_select_lex_unit*, st_select_lex*) (sql_select.cc:5176)
      ==2877770==    by 0xB84DE7: handle_select(THD*, LEX*, select_result*, unsigned long long) (sql_select.cc:626)
      ==2877770==    by 0xB2842C: execute_sqlcom_select(THD*, TABLE_LIST*) (sql_parse.cc:6288)
      ==2877770==    by 0xB1F2C1: mysql_execute_command(THD*, bool) (sql_parse.cc:3959)
      ==2877770==    by 0xB2D311: mysql_parse(THD*, char*, unsigned int, Parser_state*) (sql_parse.cc:8030)
      ==2877770==    by 0xB18D9E: dispatch_command(enum_server_command, THD*, char*, unsigned int, bool) (sql_parse.cc:1894)
      ==2877770== 
      ==2877770== Conditional jump or move depends on uninitialised value(s)
      ==2877770==    at 0xBA4B0D: best_access_path(JOIN*, st_join_table*, unsigned long long, POSITION const*, unsigned int, bool, double, POSITION*, POSITION*) (sql_select.cc:9560)
      ==2877770==    by 0xBA8B4B: get_costs_for_tables(JOIN*, unsigned long long, unsigned int, double, Json_writer_object*, st_join_table**, SORT_POSITION**, unsigned long long*, bool) (sql_select.cc:11128)
      ==2877770==    by 0xBA944C: best_extension_by_limited_search(JOIN*, unsigned long long, unsigned int, double, double, unsigned int, unsigned int, unsigned long long*) (sql_select.cc:11385)
      ==2877770==    by 0xBAA208: best_extension_by_limited_search(JOIN*, unsigned long long, unsigned int, double, double, unsigned int, unsigned int, unsigned long long*) (sql_select.cc:11611)
      ==2877770==    by 0xBA6ACC: greedy_search(JOIN*, unsigned long long, unsigned int, unsigned int) (sql_select.cc:10356)
      ==2877770==    by 0xBA5ADB: choose_plan(JOIN*, unsigned long long, TABLE_LIST*) (sql_select.cc:9875)
      ==2877770==    by 0xB9A1BA: make_join_statistics(JOIN*, List<TABLE_LIST>&, st_dynamic_array*) (sql_select.cc:6127)
      ==2877770==    by 0xB8CF42: JOIN::optimize_inner() (sql_select.cc:2609)
      ==2877770==    by 0xB8A662: JOIN::optimize() (sql_select.cc:1935)
      ==2877770==    by 0xB967AD: mysql_select(THD*, TABLE_LIST*, List<Item>&, Item*, unsigned int, st_order*, st_order*, Item*, st_order*, unsigned long long, select_result*, st_select_lex_unit*, st_select_lex*) (sql_select.cc:5176)
      ==2877770==    by 0xB84DE7: handle_select(THD*, LEX*, select_result*, unsigned long long) (sql_select.cc:626)
      ==2877770==    by 0xB2842C: execute_sqlcom_select(THD*, TABLE_LIST*) (sql_parse.cc:6288)
      ==2877770==    by 0xB1F2C1: mysql_execute_command(THD*, bool) (sql_parse.cc:3959)
      ==2877770==    by 0xB2D311: mysql_parse(THD*, char*, unsigned int, Parser_state*) (sql_parse.cc:8030)
      ==2877770==    by 0xB18D9E: dispatch_command(enum_server_command, THD*, char*, unsigned int, bool) (sql_parse.cc:1894)
      ==2877770==    by 0xB176F7: do_command(THD*, bool) (sql_parse.cc:1407)
      ==2877770== 
      ==2877770== Conditional jump or move depends on uninitialised value(s)
      ==2877770==    at 0xB83AE7: COST_ADD(double, double) (optimizer_costs.h:133)
      ==2877770==    by 0xBA9825: best_extension_by_limited_search(JOIN*, unsigned long long, unsigned int, double, double, unsigned int, unsigned int, unsigned long long*) (sql_select.cc:11434)
      ==2877770==    by 0xBAA208: best_extension_by_limited_search(JOIN*, unsigned long long, unsigned int, double, double, unsigned int, unsigned int, unsigned long long*) (sql_select.cc:11611)
      ==2877770==    by 0xBA6ACC: greedy_search(JOIN*, unsigned long long, unsigned int, unsigned int) (sql_select.cc:10356)
      ==2877770==    by 0xBA5ADB: choose_plan(JOIN*, unsigned long long, TABLE_LIST*) (sql_select.cc:9875)
      ==2877770==    by 0xB9A1BA: make_join_statistics(JOIN*, List<TABLE_LIST>&, st_dynamic_array*) (sql_select.cc:6127)
      ==2877770==    by 0xB8CF42: JOIN::optimize_inner() (sql_select.cc:2609)
      ==2877770==    by 0xB8A662: JOIN::optimize() (sql_select.cc:1935)
      ==2877770==    by 0xB967AD: mysql_select(THD*, TABLE_LIST*, List<Item>&, Item*, unsigned int, st_order*, st_order*, Item*, st_order*, unsigned long long, select_result*, st_select_lex_unit*, st_select_lex*) (sql_select.cc:5176)
      ==2877770==    by 0xB84DE7: handle_select(THD*, LEX*, select_result*, unsigned long long) (sql_select.cc:626)
      ==2877770==    by 0xB2842C: execute_sqlcom_select(THD*, TABLE_LIST*) (sql_parse.cc:6288)
      ==2877770==    by 0xB1F2C1: mysql_execute_command(THD*, bool) (sql_parse.cc:3959)
      ==2877770==    by 0xB2D311: mysql_parse(THD*, char*, unsigned int, Parser_state*) (sql_parse.cc:8030)
      ==2877770==    by 0xB18D9E: dispatch_command(enum_server_command, THD*, char*, unsigned int, bool) (sql_parse.cc:1894)
      ==2877770==    by 0xB176F7: do_command(THD*, bool) (sql_parse.cc:1407)
      ==2877770==    by 0xD1448F: do_handle_one_connection(CONNECT*, bool) (sql_connect.cc:1416)
      ==2877770== 
      ==2877770== Conditional jump or move depends on uninitialised value(s)
      ==2877770==    at 0xB83B64: COST_ADD(double, double) (optimizer_costs.h:134)
      ==2877770==    by 0xBA9825: best_extension_by_limited_search(JOIN*, unsigned long long, unsigned int, double, double, unsigned int, unsigned int, unsigned long long*) (sql_select.cc:11434)
      ==2877770==    by 0xBAA208: best_extension_by_limited_search(JOIN*, unsigned long long, unsigned int, double, double, unsigned int, unsigned int, unsigned long long*) (sql_select.cc:11611)
      ==2877770==    by 0xBA6ACC: greedy_search(JOIN*, unsigned long long, unsigned int, unsigned int) (sql_select.cc:10356)
      ==2877770==    by 0xBA5ADB: choose_plan(JOIN*, unsigned long long, TABLE_LIST*) (sql_select.cc:9875)
      ==2877770==    by 0xB9A1BA: make_join_statistics(JOIN*, List<TABLE_LIST>&, st_dynamic_array*) (sql_select.cc:6127)
      ==2877770==    by 0xB8CF42: JOIN::optimize_inner() (sql_select.cc:2609)
      ==2877770==    by 0xB8A662: JOIN::optimize() (sql_select.cc:1935)
      ==2877770==    by 0xB967AD: mysql_select(THD*, TABLE_LIST*, List<Item>&, Item*, unsigned int, st_order*, st_order*, Item*, st_order*, unsigned long long, select_result*, st_select_lex_unit*, st_select_lex*) (sql_select.cc:5176)
      ==2877770==    by 0xB84DE7: handle_select(THD*, LEX*, select_result*, unsigned long long) (sql_select.cc:626)
      ==2877770==    by 0xB2842C: execute_sqlcom_select(THD*, TABLE_LIST*) (sql_parse.cc:6288)
      ==2877770==    by 0xB1F2C1: mysql_execute_command(THD*, bool) (sql_parse.cc:3959)
      ==2877770==    by 0xB2D311: mysql_parse(THD*, char*, unsigned int, Parser_state*) (sql_parse.cc:8030)
      ==2877770==    by 0xB18D9E: dispatch_command(enum_server_command, THD*, char*, unsigned int, bool) (sql_parse.cc:1894)
      ==2877770==    by 0xB176F7: do_command(THD*, bool) (sql_parse.cc:1407)
      ==2877770==    by 0xD1448F: do_handle_one_connection(CONNECT*, bool) (sql_connect.cc:1416)
      ==2877770== 
      ==2877770== Conditional jump or move depends on uninitialised value(s)
      ==2877770==    at 0xBA9A03: best_extension_by_limited_search(JOIN*, unsigned long long, unsigned int, double, double, unsigned int, unsigned int, unsigned long long*) (sql_select.cc:11461)
      ==2877770==    by 0xBAA208: best_extension_by_limited_search(JOIN*, unsigned long long, unsigned int, double, double, unsigned int, unsigned int, unsigned long long*) (sql_select.cc:11611)
      ==2877770==    by 0xBA6ACC: greedy_search(JOIN*, unsigned long long, unsigned int, unsigned int) (sql_select.cc:10356)
      ==2877770==    by 0xBA5ADB: choose_plan(JOIN*, unsigned long long, TABLE_LIST*) (sql_select.cc:9875)
      ==2877770==    by 0xB9A1BA: make_join_statistics(JOIN*, List<TABLE_LIST>&, st_dynamic_array*) (sql_select.cc:6127)
      ==2877770==    by 0xB8CF42: JOIN::optimize_inner() (sql_select.cc:2609)
      ==2877770==    by 0xB8A662: JOIN::optimize() (sql_select.cc:1935)
      ==2877770==    by 0xB967AD: mysql_select(THD*, TABLE_LIST*, List<Item>&, Item*, unsigned int, st_order*, st_order*, Item*, st_order*, unsigned long long, select_result*, st_select_lex_unit*, st_select_lex*) (sql_select.cc:5176)
      ==2877770==    by 0xB84DE7: handle_select(THD*, LEX*, select_result*, unsigned long long) (sql_select.cc:626)
      ==2877770==    by 0xB2842C: execute_sqlcom_select(THD*, TABLE_LIST*) (sql_parse.cc:6288)
      ==2877770==    by 0xB1F2C1: mysql_execute_command(THD*, bool) (sql_parse.cc:3959)
      ==2877770==    by 0xB2D311: mysql_parse(THD*, char*, unsigned int, Parser_state*) (sql_parse.cc:8030)
      ==2877770==    by 0xB18D9E: dispatch_command(enum_server_command, THD*, char*, unsigned int, bool) (sql_parse.cc:1894)
      ==2877770==    by 0xB176F7: do_command(THD*, bool) (sql_parse.cc:1407)
      ==2877770==    by 0xD1448F: do_handle_one_connection(CONNECT*, bool) (sql_connect.cc:1416)
      ==2877770==    by 0xD14204: handle_one_connection (sql_connect.cc:1318)
      ==2877770== 
      ==2877770== Conditional jump or move depends on uninitialised value(s)
      ==2877770==    at 0xBA9BC8: best_extension_by_limited_search(JOIN*, unsigned long long, unsigned int, double, double, unsigned int, unsigned int, unsigned long long*) (sql_select.cc:11499)
      ==2877770==    by 0xBAA208: best_extension_by_limited_search(JOIN*, unsigned long long, unsigned int, double, double, unsigned int, unsigned int, unsigned long long*) (sql_select.cc:11611)
      ==2877770==    by 0xBA6ACC: greedy_search(JOIN*, unsigned long long, unsigned int, unsigned int) (sql_select.cc:10356)
      ==2877770==    by 0xBA5ADB: choose_plan(JOIN*, unsigned long long, TABLE_LIST*) (sql_select.cc:9875)
      ==2877770==    by 0xB9A1BA: make_join_statistics(JOIN*, List<TABLE_LIST>&, st_dynamic_array*) (sql_select.cc:6127)
      ==2877770==    by 0xB8CF42: JOIN::optimize_inner() (sql_select.cc:2609)
      ==2877770==    by 0xB8A662: JOIN::optimize() (sql_select.cc:1935)
      ==2877770==    by 0xB967AD: mysql_select(THD*, TABLE_LIST*, List<Item>&, Item*, unsigned int, st_order*, st_order*, Item*, st_order*, unsigned long long, select_result*, st_select_lex_unit*, st_select_lex*) (sql_select.cc:5176)
      ==2877770==    by 0xB84DE7: handle_select(THD*, LEX*, select_result*, unsigned long long) (sql_select.cc:626)
      ==2877770==    by 0xB2842C: execute_sqlcom_select(THD*, TABLE_LIST*) (sql_parse.cc:6288)
      ==2877770==    by 0xB1F2C1: mysql_execute_command(THD*, bool) (sql_parse.cc:3959)
      ==2877770==    by 0xB2D311: mysql_parse(THD*, char*, unsigned int, Parser_state*) (sql_parse.cc:8030)
      ==2877770==    by 0xB18D9E: dispatch_command(enum_server_command, THD*, char*, unsigned int, bool) (sql_parse.cc:1894)
      ==2877770==    by 0xB176F7: do_command(THD*, bool) (sql_parse.cc:1407)
      ==2877770==    by 0xD1448F: do_handle_one_connection(CONNECT*, bool) (sql_connect.cc:1416)
      ==2877770==    by 0xD14204: handle_one_connection (sql_connect.cc:1318)
      ==2877770== 
      ==2877770== Conditional jump or move depends on uninitialised value(s)
      ==2877770==    at 0xBA9C7F: best_extension_by_limited_search(JOIN*, unsigned long long, unsigned int, double, double, unsigned int, unsigned int, unsigned long long*) (sql_select.cc:11520)
      ==2877770==    by 0xBAA208: best_extension_by_limited_search(JOIN*, unsigned long long, unsigned int, double, double, unsigned int, unsigned int, unsigned long long*) (sql_select.cc:11611)
      ==2877770==    by 0xBA6ACC: greedy_search(JOIN*, unsigned long long, unsigned int, unsigned int) (sql_select.cc:10356)
      ==2877770==    by 0xBA5ADB: choose_plan(JOIN*, unsigned long long, TABLE_LIST*) (sql_select.cc:9875)
      ==2877770==    by 0xB9A1BA: make_join_statistics(JOIN*, List<TABLE_LIST>&, st_dynamic_array*) (sql_select.cc:6127)
      ==2877770==    by 0xB8CF42: JOIN::optimize_inner() (sql_select.cc:2609)
      ==2877770==    by 0xB8A662: JOIN::optimize() (sql_select.cc:1935)
      ==2877770==    by 0xB967AD: mysql_select(THD*, TABLE_LIST*, List<Item>&, Item*, unsigned int, st_order*, st_order*, Item*, st_order*, unsigned long long, select_result*, st_select_lex_unit*, st_select_lex*) (sql_select.cc:5176)
      ==2877770==    by 0xB84DE7: handle_select(THD*, LEX*, select_result*, unsigned long long) (sql_select.cc:626)
      ==2877770==    by 0xB2842C: execute_sqlcom_select(THD*, TABLE_LIST*) (sql_parse.cc:6288)
      ==2877770==    by 0xB1F2C1: mysql_execute_command(THD*, bool) (sql_parse.cc:3959)
      ==2877770==    by 0xB2D311: mysql_parse(THD*, char*, unsigned int, Parser_state*) (sql_parse.cc:8030)
      ==2877770==    by 0xB18D9E: dispatch_command(enum_server_command, THD*, char*, unsigned int, bool) (sql_parse.cc:1894)
      ==2877770==    by 0xB176F7: do_command(THD*, bool) (sql_parse.cc:1407)
      ==2877770==    by 0xD1448F: do_handle_one_connection(CONNECT*, bool) (sql_connect.cc:1416)
      ==2877770==    by 0xD14204: handle_one_connection (sql_connect.cc:1318)
      ==2877770== 
      ==2877770== Conditional jump or move depends on uninitialised value(s)
      ==2877770==    at 0xBAA45A: best_extension_by_limited_search(JOIN*, unsigned long long, unsigned int, double, double, unsigned int, unsigned int, unsigned long long*) (sql_select.cc:11658)
      ==2877770==    by 0xBAA208: best_extension_by_limited_search(JOIN*, unsigned long long, unsigned int, double, double, unsigned int, unsigned int, unsigned long long*) (sql_select.cc:11611)
      ==2877770==    by 0xBA6ACC: greedy_search(JOIN*, unsigned long long, unsigned int, unsigned int) (sql_select.cc:10356)
      ==2877770==    by 0xBA5ADB: choose_plan(JOIN*, unsigned long long, TABLE_LIST*) (sql_select.cc:9875)
      ==2877770==    by 0xB9A1BA: make_join_statistics(JOIN*, List<TABLE_LIST>&, st_dynamic_array*) (sql_select.cc:6127)
      ==2877770==    by 0xB8CF42: JOIN::optimize_inner() (sql_select.cc:2609)
      ==2877770==    by 0xB8A662: JOIN::optimize() (sql_select.cc:1935)
      ==2877770==    by 0xB967AD: mysql_select(THD*, TABLE_LIST*, List<Item>&, Item*, unsigned int, st_order*, st_order*, Item*, st_order*, unsigned long long, select_result*, st_select_lex_unit*, st_select_lex*) (sql_select.cc:5176)
      ==2877770==    by 0xB84DE7: handle_select(THD*, LEX*, select_result*, unsigned long long) (sql_select.cc:626)
      ==2877770==    by 0xB2842C: execute_sqlcom_select(THD*, TABLE_LIST*) (sql_parse.cc:6288)
      ==2877770==    by 0xB1F2C1: mysql_execute_command(THD*, bool) (sql_parse.cc:3959)
      ==2877770==    by 0xB2D311: mysql_parse(THD*, char*, unsigned int, Parser_state*) (sql_parse.cc:8030)
      ==2877770==    by 0xB18D9E: dispatch_command(enum_server_command, THD*, char*, unsigned int, bool) (sql_parse.cc:1894)
      ==2877770==    by 0xB176F7: do_command(THD*, bool) (sql_parse.cc:1407)
      ==2877770==    by 0xD1448F: do_handle_one_connection(CONNECT*, bool) (sql_connect.cc:1416)
      ==2877770==    by 0xD14204: handle_one_connection (sql_connect.cc:1318)
      ==2877770== 
      ==2877770== Conditional jump or move depends on uninitialised value(s)
      ==2877770==    at 0xBA6B17: greedy_search(JOIN*, unsigned long long, unsigned int, unsigned int) (sql_select.cc:10367)
      ==2877770==    by 0xBA5ADB: choose_plan(JOIN*, unsigned long long, TABLE_LIST*) (sql_select.cc:9875)
      ==2877770==    by 0xB9A1BA: make_join_statistics(JOIN*, List<TABLE_LIST>&, st_dynamic_array*) (sql_select.cc:6127)
      ==2877770==    by 0xB8CF42: JOIN::optimize_inner() (sql_select.cc:2609)
      ==2877770==    by 0xB8A662: JOIN::optimize() (sql_select.cc:1935)
      ==2877770==    by 0xB967AD: mysql_select(THD*, TABLE_LIST*, List<Item>&, Item*, unsigned int, st_order*, st_order*, Item*, st_order*, unsigned long long, select_result*, st_select_lex_unit*, st_select_lex*) (sql_select.cc:5176)
      ==2877770==    by 0xB84DE7: handle_select(THD*, LEX*, select_result*, unsigned long long) (sql_select.cc:626)
      ==2877770==    by 0xB2842C: execute_sqlcom_select(THD*, TABLE_LIST*) (sql_parse.cc:6288)
      ==2877770==    by 0xB1F2C1: mysql_execute_command(THD*, bool) (sql_parse.cc:3959)
      ==2877770==    by 0xB2D311: mysql_parse(THD*, char*, unsigned int, Parser_state*) (sql_parse.cc:8030)
      ==2877770==    by 0xB18D9E: dispatch_command(enum_server_command, THD*, char*, unsigned int, bool) (sql_parse.cc:1894)
      ==2877770==    by 0xB176F7: do_command(THD*, bool) (sql_parse.cc:1407)
      ==2877770==    by 0xD1448F: do_handle_one_connection(CONNECT*, bool) (sql_connect.cc:1416)
      ==2877770==    by 0xD14204: handle_one_connection (sql_connect.cc:1318)
      ==2877770==    by 0x124ADED: pfs_spawn_thread (pfs.cc:2201)
      ==2877770==    by 0x522EFD3: start_thread (pthread_create.c:442)
      ==2877770== 
      

      11.2 872ed5342d8f1ec02f8f8a7a25a606e4ff512234 MSAN

      ==2878803==WARNING: MemorySanitizer: use-of-uninitialized-value
          #0 0x559ec1b88718 in compare_cost(double, double) /data/src/11.2-msan/sql/sql_select.cc:113:3
          #1 0x559ec1b88718 in st_join_table::estimate_scan_time() /data/src/11.2-msan/sql/sql_select.cc:15988:3
          #2 0x559ec1adf674 in make_join_statistics(JOIN*, List<TABLE_LIST>&, st_dynamic_array*) /data/src/11.2-msan/sql/sql_select.cc:6019:10
          #3 0x559ec1ac7c9d in JOIN::optimize_inner() /data/src/11.2-msan/sql/sql_select.cc:2620:7
          #4 0x559ec1aaac08 in JOIN::optimize() /data/src/11.2-msan/sql/sql_select.cc:1944:10
          #5 0x559ec1a8b659 in mysql_select(THD*, TABLE_LIST*, List<Item>&, Item*, unsigned int, st_order*, st_order*, Item*, st_order*, unsigned long long, select_result*, st_select_lex_unit*, st_select_lex*) /data/src/11.2-msan/sql/sql_select.cc:5237:19
          #6 0x559ec1a8a2d6 in handle_select(THD*, LEX*, select_result*, unsigned long long) /data/src/11.2-msan/sql/sql_select.cc:628:10
          #7 0x559ec19601bd in execute_sqlcom_select(THD*, TABLE_LIST*) /data/src/11.2-msan/sql/sql_parse.cc:6064:12
          #8 0x559ec193ea6a in mysql_execute_command(THD*, bool) /data/src/11.2-msan/sql/sql_parse.cc:3955:12
          #9 0x559ec192578a in mysql_parse(THD*, char*, unsigned int, Parser_state*) /data/src/11.2-msan/sql/sql_parse.cc:7810:18
          #10 0x559ec1919cd7 in dispatch_command(enum_server_command, THD*, char*, unsigned int, bool) /data/src/11.2-msan/sql/sql_parse.cc:1893:7
          #11 0x559ec1927b80 in do_command(THD*, bool) /data/src/11.2-msan/sql/sql_parse.cc:1406:17
          #12 0x559ec1fdfadf in do_handle_one_connection(CONNECT*, bool) /data/src/11.2-msan/sql/sql_connect.cc:1445:11
          #13 0x559ec1fdf0b5 in handle_one_connection /data/src/11.2-msan/sql/sql_connect.cc:1347:5
          #14 0x559ec33efaba in pfs_spawn_thread /data/src/11.2-msan/storage/perfschema/pfs.cc:2201:3
          #15 0x7fa38fad8fd3 in start_thread nptl/./nptl/pthread_create.c:442:8
          #16 0x7fa38fb595bb in clone3 misc/../sysdeps/unix/sysv/linux/x86_64/clone3.S:81
       
        Memory was marked as uninitialized
          #0 0x559ec130d9ce in __msan_allocated_memory (/mnt8t/src/11.2-msan/sql/mariadbd+0x7c49ce)
          #1 0x559ec276f0b2 in handler::ha_open(TABLE*, char const*, int, unsigned int, st_mem_root*, List<String>*) /data/src/11.2-msan/sql/handler.cc:3550:20
       
      SUMMARY: MemorySanitizer: use-of-uninitialized-value /data/src/11.2-msan/sql/sql_select.cc:113:3 in compare_cost(double, double)
      

      Reproducible with at least InnoDB, MyISAM, Aria.

      Attachments

        Activity

          People

            monty Michael Widenius
            elenst Elena Stepanova
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated:

              Git Integration

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