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

Conditional jump or move depends on uninitialised value in ib_push_warning / dict_create_foreign_constraints_low

    Details

      Description

      --source include/have_innodb.inc
       
      CREATE TABLE t1 (a INT) ENGINE=InnoDB;
      --error ER_CANT_CREATE_TABLE
      ALTER IGNORE TABLE t1 ADD FOREIGN KEY (a) REFERENCES t2 (b);
       
      DROP TABLE t1;
      

      10.2 40b4f9c9 Valgrind Debug

      ==488== Thread 27:
      ==488== Conditional jump or move depends on uninitialised value(s)
      ==488==    at 0x4C2EDA9: strlen (vg_replace_strmem.c:454)
      ==488==    by 0x69FAD77: vfprintf (vfprintf.c:1637)
      ==488==    by 0x6A1BACA: vsprintf (iovsprintf.c:42)
      ==488==    by 0xC93065: ib_push_warning(trx_t*, unsigned long, char const*, ...) (ha_innodb.cc:22417)
      ==488==    by 0xF4FEE4: dict_create_foreign_constraints_low(trx_t*, mem_block_info_t*, charset_info_st const*, char const*, char const*, unsigned long) (dict0dict.cc:4889)
      ==488==    by 0xF5107C: dict_create_foreign_constraints(trx_t*, char const*, unsigned long, char const*, unsigned long) (dict0dict.cc:5276)
      ==488==    by 0xC82648: create_table_info_t::create_table(bool) (ha_innodb.cc:12663)
      ==488==    by 0xC97571: ha_innobase::create(char const*, TABLE*, HA_CREATE_INFO*, bool, trx_t*) (ha_innodb.cc:12886)
      ==488==    by 0xC82D6C: ha_innobase::create(char const*, TABLE*, HA_CREATE_INFO*) (ha_innodb.cc:12939)
      ==488==    by 0x950517: handler::ha_create(char const*, TABLE*, HA_CREATE_INFO*) (handler.cc:4408)
      ==488==    by 0x951442: ha_create_table(THD*, char const*, char const*, char const*, HA_CREATE_INFO*, st_mysql_const_unsigned_lex_string*) (handler.cc:4780)
      ==488==    by 0x796531: mysql_alter_table(THD*, char*, char*, HA_CREATE_INFO*, TABLE_LIST*, Alter_info*, unsigned int, st_order*, bool) (sql_table.cc:9507)
      ==488==    by 0x815C42: Sql_cmd_alter_table::execute(THD*) (sql_alter.cc:329)
      ==488==    by 0x6C608B: mysql_execute_command(THD*) (sql_parse.cc:6231)
      ==488==    by 0x6CAEEC: mysql_parse(THD*, char*, unsigned int, Parser_state*, bool, bool) (sql_parse.cc:8018)
      ==488==    by 0x6B8824: dispatch_command(enum_server_command, THD*, char*, unsigned int, bool, bool) (sql_parse.cc:1829)
      ==488== Conditional jump or move depends on uninitialised value(s)
      ==488==    at 0x4C2EDB8: strlen (vg_replace_strmem.c:454)
      ==488==    by 0x69FAD77: vfprintf (vfprintf.c:1637)
      ==488==    by 0x6A1BACA: vsprintf (iovsprintf.c:42)
      ==488==    by 0xC93065: ib_push_warning(trx_t*, unsigned long, char const*, ...) (ha_innodb.cc:22417)
      ==488==    by 0xF4FEE4: dict_create_foreign_constraints_low(trx_t*, mem_block_info_t*, charset_info_st const*, char const*, char const*, unsigned long) (dict0dict.cc:4889)
      ==488==    by 0xF5107C: dict_create_foreign_constraints(trx_t*, char const*, unsigned long, char const*, unsigned long) (dict0dict.cc:5276)
      ==488==    by 0xC82648: create_table_info_t::create_table(bool) (ha_innodb.cc:12663)
      ==488==    by 0xC97571: ha_innobase::create(char const*, TABLE*, HA_CREATE_INFO*, bool, trx_t*) (ha_innodb.cc:12886)
      ==488==    by 0xC82D6C: ha_innobase::create(char const*, TABLE*, HA_CREATE_INFO*) (ha_innodb.cc:12939)
      ==488==    by 0x950517: handler::ha_create(char const*, TABLE*, HA_CREATE_INFO*) (handler.cc:4408)
      ==488==    by 0x951442: ha_create_table(THD*, char const*, char const*, char const*, HA_CREATE_INFO*, st_mysql_const_unsigned_lex_string*) (handler.cc:4780)
      ==488==    by 0x796531: mysql_alter_table(THD*, char*, char*, HA_CREATE_INFO*, TABLE_LIST*, Alter_info*, unsigned int, st_order*, bool) (sql_table.cc:9507)
      ==488==    by 0x815C42: Sql_cmd_alter_table::execute(THD*) (sql_alter.cc:329)
      ==488==    by 0x6C608B: mysql_execute_command(THD*) (sql_parse.cc:6231)
      ==488==    by 0x6CAEEC: mysql_parse(THD*, char*, unsigned int, Parser_state*, bool, bool) (sql_parse.cc:8018)
      ==488==    by 0x6B8824: dispatch_command(enum_server_command, THD*, char*, unsigned int, bool, bool) (sql_parse.cc:1829)
      ==488== Conditional jump or move depends on uninitialised value(s)
      ==488==    at 0x115BDCE: my_vsnprintf_ex (my_vsnprintf.c:564)
      ==488==    by 0x6904BA: push_warning_printf(THD*, Sql_condition::enum_warning_level, unsigned int, char const*, ...) (sql_error.cc:798)
      ==488==    by 0xC930AB: ib_push_warning(trx_t*, unsigned long, char const*, ...) (ha_innodb.cc:22421)
      ==488==    by 0xF4FEE4: dict_create_foreign_constraints_low(trx_t*, mem_block_info_t*, charset_info_st const*, char const*, char const*, unsigned long) (dict0dict.cc:4889)
      ==488==    by 0xF5107C: dict_create_foreign_constraints(trx_t*, char const*, unsigned long, char const*, unsigned long) (dict0dict.cc:5276)
      ==488==    by 0xC82648: create_table_info_t::create_table(bool) (ha_innodb.cc:12663)
      ==488==    by 0xC97571: ha_innobase::create(char const*, TABLE*, HA_CREATE_INFO*, bool, trx_t*) (ha_innodb.cc:12886)
      ==488==    by 0xC82D6C: ha_innobase::create(char const*, TABLE*, HA_CREATE_INFO*) (ha_innodb.cc:12939)
      ==488==    by 0x950517: handler::ha_create(char const*, TABLE*, HA_CREATE_INFO*) (handler.cc:4408)
      ==488==    by 0x951442: ha_create_table(THD*, char const*, char const*, char const*, HA_CREATE_INFO*, st_mysql_const_unsigned_lex_string*) (handler.cc:4780)
      ==488==    by 0x796531: mysql_alter_table(THD*, char*, char*, HA_CREATE_INFO*, TABLE_LIST*, Alter_info*, unsigned int, st_order*, bool) (sql_table.cc:9507)
      ==488==    by 0x815C42: Sql_cmd_alter_table::execute(THD*) (sql_alter.cc:329)
      ==488==    by 0x6C608B: mysql_execute_command(THD*) (sql_parse.cc:6231)
      ==488==    by 0x6CAEEC: mysql_parse(THD*, char*, unsigned int, Parser_state*, bool, bool) (sql_parse.cc:8018)
      ==488==    by 0x6B8824: dispatch_command(enum_server_command, THD*, char*, unsigned int, bool, bool) (sql_parse.cc:1829)
      ==488==    by 0x6B712F: do_command(THD*) (sql_parse.cc:1379)
      ==488== Conditional jump or move depends on uninitialised value(s)
      ==488==    at 0x115B438: my_vsnprintf_ex (my_vsnprintf.c:566)
      ==488==    by 0x6904BA: push_warning_printf(THD*, Sql_condition::enum_warning_level, unsigned int, char const*, ...) (sql_error.cc:798)
      ==488==    by 0xC930AB: ib_push_warning(trx_t*, unsigned long, char const*, ...) (ha_innodb.cc:22421)
      ==488==    by 0xF4FEE4: dict_create_foreign_constraints_low(trx_t*, mem_block_info_t*, charset_info_st const*, char const*, char const*, unsigned long) (dict0dict.cc:4889)
      ==488==    by 0xF5107C: dict_create_foreign_constraints(trx_t*, char const*, unsigned long, char const*, unsigned long) (dict0dict.cc:5276)
      ==488==    by 0xC82648: create_table_info_t::create_table(bool) (ha_innodb.cc:12663)
      ==488==    by 0xC97571: ha_innobase::create(char const*, TABLE*, HA_CREATE_INFO*, bool, trx_t*) (ha_innodb.cc:12886)
      ==488==    by 0xC82D6C: ha_innobase::create(char const*, TABLE*, HA_CREATE_INFO*) (ha_innodb.cc:12939)
      ==488==    by 0x950517: handler::ha_create(char const*, TABLE*, HA_CREATE_INFO*) (handler.cc:4408)
      ==488==    by 0x951442: ha_create_table(THD*, char const*, char const*, char const*, HA_CREATE_INFO*, st_mysql_const_unsigned_lex_string*) (handler.cc:4780)
      ==488==    by 0x796531: mysql_alter_table(THD*, char*, char*, HA_CREATE_INFO*, TABLE_LIST*, Alter_info*, unsigned int, st_order*, bool) (sql_table.cc:9507)
      ==488==    by 0x815C42: Sql_cmd_alter_table::execute(THD*) (sql_alter.cc:329)
      ==488==    by 0x6C608B: mysql_execute_command(THD*) (sql_parse.cc:6231)
      ==488==    by 0x6CAEEC: mysql_parse(THD*, char*, unsigned int, Parser_state*, bool, bool) (sql_parse.cc:8018)
      ==488==    by 0x6B8824: dispatch_command(enum_server_command, THD*, char*, unsigned int, bool, bool) (sql_parse.cc:1829)
      ==488==    by 0x6B712F: do_command(THD*) (sql_parse.cc:1379)
      ==488== Conditional jump or move depends on uninitialised value(s)
      ==488==    at 0x4C2EDB8: strlen (vg_replace_strmem.c:454)
      ==488==    by 0x10E2985: strdup_root (my_alloc.c:442)
      ==488==    by 0x68F158: Sql_condition::set_builtin_message_text(char const*) (sql_error.cc:298)
      ==488==    by 0x68F11E: Sql_condition::set(unsigned int, char const*, Sql_condition::enum_warning_level, char const*) (sql_error.cc:285)
      ==488==    by 0x690134: Warning_info::push_warning(THD*, unsigned int, char const*, Sql_condition::enum_warning_level, char const*) (sql_error.cc:712)
      ==488==    by 0x67FE28: Diagnostics_area::push_warning(THD*, unsigned int, char const*, Sql_condition::enum_warning_level, char const*) (sql_error.h:851)
      ==488==    by 0x66FD6C: THD::raise_condition(unsigned int, char const*, Sql_condition::enum_warning_level, char const*) (sql_class.cc:1062)
      ==488==    by 0x6902FD: push_warning(THD*, Sql_condition::enum_warning_level, unsigned int, char const*) (sql_error.cc:765)
      ==488==    by 0x6904DC: push_warning_printf(THD*, Sql_condition::enum_warning_level, unsigned int, char const*, ...) (sql_error.cc:800)
      ==488==    by 0xC930AB: ib_push_warning(trx_t*, unsigned long, char const*, ...) (ha_innodb.cc:22421)
      ==488==    by 0xF4FEE4: dict_create_foreign_constraints_low(trx_t*, mem_block_info_t*, charset_info_st const*, char const*, char const*, unsigned long) (dict0dict.cc:4889)
      ==488==    by 0xF5107C: dict_create_foreign_constraints(trx_t*, char const*, unsigned long, char const*, unsigned long) (dict0dict.cc:5276)
      ==488==    by 0xC82648: create_table_info_t::create_table(bool) (ha_innodb.cc:12663)
      ==488==    by 0xC97571: ha_innobase::create(char const*, TABLE*, HA_CREATE_INFO*, bool, trx_t*) (ha_innodb.cc:12886)
      ==488==    by 0xC82D6C: ha_innobase::create(char const*, TABLE*, HA_CREATE_INFO*) (ha_innodb.cc:12939)
      ==488==    by 0x950517: handler::ha_create(char const*, TABLE*, HA_CREATE_INFO*) (handler.cc:4408)
      ==488== Conditional jump or move depends on uninitialised value(s)
      ==488==    at 0x4C2EDB8: strlen (vg_replace_strmem.c:454)
      ==488==    by 0x68F172: Sql_condition::set_builtin_message_text(char const*) (sql_error.cc:299)
      ==488==    by 0x68F11E: Sql_condition::set(unsigned int, char const*, Sql_condition::enum_warning_level, char const*) (sql_error.cc:285)
      ==488==    by 0x690134: Warning_info::push_warning(THD*, unsigned int, char const*, Sql_condition::enum_warning_level, char const*) (sql_error.cc:712)
      ==488==    by 0x67FE28: Diagnostics_area::push_warning(THD*, unsigned int, char const*, Sql_condition::enum_warning_level, char const*) (sql_error.h:851)
      ==488==    by 0x66FD6C: THD::raise_condition(unsigned int, char const*, Sql_condition::enum_warning_level, char const*) (sql_class.cc:1062)
      ==488==    by 0x6902FD: push_warning(THD*, Sql_condition::enum_warning_level, unsigned int, char const*) (sql_error.cc:765)
      ==488==    by 0x6904DC: push_warning_printf(THD*, Sql_condition::enum_warning_level, unsigned int, char const*, ...) (sql_error.cc:800)
      ==488==    by 0xC930AB: ib_push_warning(trx_t*, unsigned long, char const*, ...) (ha_innodb.cc:22421)
      ==488==    by 0xF4FEE4: dict_create_foreign_constraints_low(trx_t*, mem_block_info_t*, charset_info_st const*, char const*, char const*, unsigned long) (dict0dict.cc:4889)
      ==488==    by 0xF5107C: dict_create_foreign_constraints(trx_t*, char const*, unsigned long, char const*, unsigned long) (dict0dict.cc:5276)
      ==488==    by 0xC82648: create_table_info_t::create_table(bool) (ha_innodb.cc:12663)
      ==488==    by 0xC97571: ha_innobase::create(char const*, TABLE*, HA_CREATE_INFO*, bool, trx_t*) (ha_innodb.cc:12886)
      ==488==    by 0xC82D6C: ha_innobase::create(char const*, TABLE*, HA_CREATE_INFO*) (ha_innodb.cc:12939)
      ==488==    by 0x950517: handler::ha_create(char const*, TABLE*, HA_CREATE_INFO*) (handler.cc:4408)
      ==488==    by 0x951442: ha_create_table(THD*, char const*, char const*, char const*, HA_CREATE_INFO*, st_mysql_const_unsigned_lex_string*) (handler.cc:4780)
      ==488== Conditional jump or move depends on uninitialised value(s)
      ==488==    at 0x4C2EDA9: strlen (vg_replace_strmem.c:454)
      ==488==    by 0x69FAD77: vfprintf (vfprintf.c:1637)
      ==488==    by 0x6A01156: fprintf (fprintf.c:32)
      ==488==    by 0xF4C8FE: dict_foreign_error_report_low(_IO_FILE*, char const*) (dict0dict.cc:3412)
      ==488==    by 0xF4FF31: dict_create_foreign_constraints_low(trx_t*, mem_block_info_t*, charset_info_st const*, char const*, char const*, unsigned long) (dict0dict.cc:4891)
      ==488==    by 0xF5107C: dict_create_foreign_constraints(trx_t*, char const*, unsigned long, char const*, unsigned long) (dict0dict.cc:5276)
      ==488==    by 0xC82648: create_table_info_t::create_table(bool) (ha_innodb.cc:12663)
      ==488==    by 0xC97571: ha_innobase::create(char const*, TABLE*, HA_CREATE_INFO*, bool, trx_t*) (ha_innodb.cc:12886)
      ==488==    by 0xC82D6C: ha_innobase::create(char const*, TABLE*, HA_CREATE_INFO*) (ha_innodb.cc:12939)
      ==488==    by 0x950517: handler::ha_create(char const*, TABLE*, HA_CREATE_INFO*) (handler.cc:4408)
      ==488==    by 0x951442: ha_create_table(THD*, char const*, char const*, char const*, HA_CREATE_INFO*, st_mysql_const_unsigned_lex_string*) (handler.cc:4780)
      ==488==    by 0x796531: mysql_alter_table(THD*, char*, char*, HA_CREATE_INFO*, TABLE_LIST*, Alter_info*, unsigned int, st_order*, bool) (sql_table.cc:9507)
      ==488==    by 0x815C42: Sql_cmd_alter_table::execute(THD*) (sql_alter.cc:329)
      ==488==    by 0x6C608B: mysql_execute_command(THD*) (sql_parse.cc:6231)
      ==488==    by 0x6CAEEC: mysql_parse(THD*, char*, unsigned int, Parser_state*, bool, bool) (sql_parse.cc:8018)
      ==488==    by 0x6B8824: dispatch_command(enum_server_command, THD*, char*, unsigned int, bool, bool) (sql_parse.cc:1829)
      ==488== Conditional jump or move depends on uninitialised value(s)
      ==488==    at 0x4C2EDB8: strlen (vg_replace_strmem.c:454)
      ==488==    by 0x69FAD77: vfprintf (vfprintf.c:1637)
      ==488==    by 0x6A01156: fprintf (fprintf.c:32)
      ==488==    by 0xF4C8FE: dict_foreign_error_report_low(_IO_FILE*, char const*) (dict0dict.cc:3412)
      ==488==    by 0xF4FF31: dict_create_foreign_constraints_low(trx_t*, mem_block_info_t*, charset_info_st const*, char const*, char const*, unsigned long) (dict0dict.cc:4891)
      ==488==    by 0xF5107C: dict_create_foreign_constraints(trx_t*, char const*, unsigned long, char const*, unsigned long) (dict0dict.cc:5276)
      ==488==    by 0xC82648: create_table_info_t::create_table(bool) (ha_innodb.cc:12663)
      ==488==    by 0xC97571: ha_innobase::create(char const*, TABLE*, HA_CREATE_INFO*, bool, trx_t*) (ha_innodb.cc:12886)
      ==488==    by 0xC82D6C: ha_innobase::create(char const*, TABLE*, HA_CREATE_INFO*) (ha_innodb.cc:12939)
      ==488==    by 0x950517: handler::ha_create(char const*, TABLE*, HA_CREATE_INFO*) (handler.cc:4408)
      ==488==    by 0x951442: ha_create_table(THD*, char const*, char const*, char const*, HA_CREATE_INFO*, st_mysql_const_unsigned_lex_string*) (handler.cc:4780)
      ==488==    by 0x796531: mysql_alter_table(THD*, char*, char*, HA_CREATE_INFO*, TABLE_LIST*, Alter_info*, unsigned int, st_order*, bool) (sql_table.cc:9507)
      ==488==    by 0x815C42: Sql_cmd_alter_table::execute(THD*) (sql_alter.cc:329)
      ==488==    by 0x6C608B: mysql_execute_command(THD*) (sql_parse.cc:6231)
      ==488==    by 0x6CAEEC: mysql_parse(THD*, char*, unsigned int, Parser_state*, bool, bool) (sql_parse.cc:8018)
      ==488==    by 0x6B8824: dispatch_command(enum_server_command, THD*, char*, unsigned int, bool, bool) (sql_parse.cc:1829)
      ==488== Conditional jump or move depends on uninitialised value(s)
      ==488==    at 0x4C2EDA9: strlen (vg_replace_strmem.c:454)
      ==488==    by 0x69FAD77: vfprintf (vfprintf.c:1637)
      ==488==    by 0x6A01156: fprintf (fprintf.c:32)
      ==488==    by 0xF4FF6E: dict_create_foreign_constraints_low(trx_t*, mem_block_info_t*, charset_info_st const*, char const*, char const*, unsigned long) (dict0dict.cc:4895)
      ==488==    by 0xF5107C: dict_create_foreign_constraints(trx_t*, char const*, unsigned long, char const*, unsigned long) (dict0dict.cc:5276)
      ==488==    by 0xC82648: create_table_info_t::create_table(bool) (ha_innodb.cc:12663)
      ==488==    by 0xC97571: ha_innobase::create(char const*, TABLE*, HA_CREATE_INFO*, bool, trx_t*) (ha_innodb.cc:12886)
      ==488==    by 0xC82D6C: ha_innobase::create(char const*, TABLE*, HA_CREATE_INFO*) (ha_innodb.cc:12939)
      ==488==    by 0x950517: handler::ha_create(char const*, TABLE*, HA_CREATE_INFO*) (handler.cc:4408)
      ==488==    by 0x951442: ha_create_table(THD*, char const*, char const*, char const*, HA_CREATE_INFO*, st_mysql_const_unsigned_lex_string*) (handler.cc:4780)
      ==488==    by 0x796531: mysql_alter_table(THD*, char*, char*, HA_CREATE_INFO*, TABLE_LIST*, Alter_info*, unsigned int, st_order*, bool) (sql_table.cc:9507)
      ==488==    by 0x815C42: Sql_cmd_alter_table::execute(THD*) (sql_alter.cc:329)
      ==488==    by 0x6C608B: mysql_execute_command(THD*) (sql_parse.cc:6231)
      ==488==    by 0x6CAEEC: mysql_parse(THD*, char*, unsigned int, Parser_state*, bool, bool) (sql_parse.cc:8018)
      ==488==    by 0x6B8824: dispatch_command(enum_server_command, THD*, char*, unsigned int, bool, bool) (sql_parse.cc:1829)
      ==488==    by 0x6B712F: do_command(THD*) (sql_parse.cc:1379)
      ==488== Conditional jump or move depends on uninitialised value(s)
      ==488==    at 0x4C2EDB8: strlen (vg_replace_strmem.c:454)
      ==488==    by 0x69FAD77: vfprintf (vfprintf.c:1637)
      ==488==    by 0x6A01156: fprintf (fprintf.c:32)
      ==488==    by 0xF4FF6E: dict_create_foreign_constraints_low(trx_t*, mem_block_info_t*, charset_info_st const*, char const*, char const*, unsigned long) (dict0dict.cc:4895)
      ==488==    by 0xF5107C: dict_create_foreign_constraints(trx_t*, char const*, unsigned long, char const*, unsigned long) (dict0dict.cc:5276)
      ==488==    by 0xC82648: create_table_info_t::create_table(bool) (ha_innodb.cc:12663)
      ==488==    by 0xC97571: ha_innobase::create(char const*, TABLE*, HA_CREATE_INFO*, bool, trx_t*) (ha_innodb.cc:12886)
      ==488==    by 0xC82D6C: ha_innobase::create(char const*, TABLE*, HA_CREATE_INFO*) (ha_innodb.cc:12939)
      ==488==    by 0x950517: handler::ha_create(char const*, TABLE*, HA_CREATE_INFO*) (handler.cc:4408)
      ==488==    by 0x951442: ha_create_table(THD*, char const*, char const*, char const*, HA_CREATE_INFO*, st_mysql_const_unsigned_lex_string*) (handler.cc:4780)
      ==488==    by 0x796531: mysql_alter_table(THD*, char*, char*, HA_CREATE_INFO*, TABLE_LIST*, Alter_info*, unsigned int, st_order*, bool) (sql_table.cc:9507)
      ==488==    by 0x815C42: Sql_cmd_alter_table::execute(THD*) (sql_alter.cc:329)
      ==488==    by 0x6C608B: mysql_execute_command(THD*) (sql_parse.cc:6231)
      ==488==    by 0x6CAEEC: mysql_parse(THD*, char*, unsigned int, Parser_state*, bool, bool) (sql_parse.cc:8018)
      ==488==    by 0x6B8824: dispatch_command(enum_server_command, THD*, char*, unsigned int, bool, bool) (sql_parse.cc:1829)
      ==488==    by 0x6B712F: do_command(THD*) (sql_parse.cc:1379)
      

        Attachments

          Activity

            People

            • Assignee:
              marko Marko Mäkelä
              Reporter:
              elenst Elena Stepanova
            • Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: