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

Valgrind warnings (Conditional jump or move depends on uninitialised value) in err_conv with dynamic columns

    XMLWordPrintable

Details

    • Bug
    • Status: Closed (View Workflow)
    • Minor
    • Resolution: Cannot Reproduce
    • 10.0.4
    • N/A
    • Dynamic Columns
    • None

    Description

      CREATE TABLE t1 (dyncol TINYBLOB NOT NULL) ENGINE=MyISAM;
      INSERT INTO t1 SET dyncol = COLUMN_CREATE( 4, 3, 3, REPEAT('a',290) );
      SELECT COLUMN_GET( dyncol, 3 AS DATE ) FROM t1;

      ==9945== Conditional jump or move depends on uninitialised value(s)
      ==9945==    at 0x5F928B: err_conv(char*, unsigned int, char const*, unsigned int, charset_info_st const*) (sql_error.cc:775)
      ==9945==    by 0x5848F8: ErrConvString::ptr() const (sql_error.h:548)
      ==9945==    by 0x706E80: make_truncated_value_warning(THD*, MYSQL_ERROR::enum_warning_level, ErrConv const*, enum_mysql_timestamp_type, char const*) (sql_time.cc:853)
      ==9945==    by 0x705236: make_truncated_value_warning(THD*, MYSQL_ERROR::enum_warning_level, char const*, unsigned int, enum_mysql_timestamp_type, char const*) (sql_time.h:64)
      ==9945==    by 0x705C9F: str_to_datetime_with_warn(charset_info_st const*, char const*, unsigned int, st_mysql_time*, unsigned long long) (sql_time.cc:320)
      ==9945==    by 0x88F93F: Item_dyncol_get::get_date(st_mysql_time*, unsigned long long) (item_strfunc.cc:4729)
      ==9945==    by 0x8BD48A: Item_func::get_arg0_date(st_mysql_time*, unsigned long long) (item_func.h:157)
      ==9945==    by 0x8BB125: Item_date_typecast::get_date(st_mysql_time*, unsigned long long) (item_timefunc.cc:2432)
      ==9945==    by 0x81DB26: Item::send(Protocol*, String*) (item.cc:6394)
      ==9945==    by 0x579F8D: Protocol::send_result_set_row(List<Item>*) (protocol.cc:900)
      ==9945==    by 0x5E3BA4: select_send::send_data(List<Item>&) (sql_class.cc:2364)
      ==9945==    by 0x67E9DA: end_send(JOIN*, st_join_table*, bool) (sql_select.cc:17946)
      ==9945==    by 0x67B811: do_select(JOIN*, List<Item>*, TABLE*, Procedure*) (sql_select.cc:16464)
      ==9945==    by 0x65A775: JOIN::exec_inner() (sql_select.cc:2997)
      ==9945==    by 0x657A44: JOIN::exec() (sql_select.cc:2296)
      ==9945==    by 0x65B026: mysql_select(THD*, Item***, TABLE_LIST*, unsigned int, List<Item>&, Item*, unsigned int, st_order*, st_order*, Item*, st_order*, unsigned long long, select_result*, st_select_lex_unit*, st_select_lex*) (sql_select.cc:3225)
      ==9945== Use of uninitialised value of size 8
      ==9945==    at 0xD75CD9: int2str (int2str.c:104)
      ==9945==    by 0xD7702B: process_int_arg (my_vsnprintf.c:287)
      ==9945==    by 0xD78C53: my_vsnprintf_ex (my_vsnprintf.c:655)
      ==9945==    by 0xD78FAE: my_vsnprintf (my_vsnprintf.c:706)
      ==9945==    by 0xD7905A: my_snprintf (my_vsnprintf.c:715)
      ==9945==    by 0x5F92EA: err_conv(char*, unsigned int, char const*, unsigned int, charset_info_st const*) (sql_error.cc:788)
      ==9945==    by 0x5848F8: ErrConvString::ptr() const (sql_error.h:548)
      ==9945==    by 0x706E80: make_truncated_value_warning(THD*, MYSQL_ERROR::enum_warning_level, ErrConv const*, enum_mysql_timestamp_type, char const*) (sql_time.cc:853)
      ==9945==    by 0x705236: make_truncated_value_warning(THD*, MYSQL_ERROR::enum_warning_level, char const*, unsigned int, enum_mysql_timestamp_type, char const*) (sql_time.h:64)
      ==9945==    by 0x705C9F: str_to_datetime_with_warn(charset_info_st const*, char const*, unsigned int, st_mysql_time*, unsigned long long) (sql_time.cc:320)
      ==9945==    by 0x88F93F: Item_dyncol_get::get_date(st_mysql_time*, unsigned long long) (item_strfunc.cc:4729)
      ==9945==    by 0x8BD48A: Item_func::get_arg0_date(st_mysql_time*, unsigned long long) (item_func.h:157)
      ==9945==    by 0x8BB125: Item_date_typecast::get_date(st_mysql_time*, unsigned long long) (item_timefunc.cc:2432)
      ==9945==    by 0x81DB26: Item::send(Protocol*, String*) (item.cc:6394)
      ==9945==    by 0x579F8D: Protocol::send_result_set_row(List<Item>*) (protocol.cc:900)
      ==9945==    by 0x5E3BA4: select_send::send_data(List<Item>&) (sql_class.cc:2364)
      ==9945== Conditional jump or move depends on uninitialised value(s)
      ==9945==    at 0xD75D40: int2str (int2str.c:107)
      ==9945==    by 0xD7702B: process_int_arg (my_vsnprintf.c:287)
      ==9945==    by 0xD78C53: my_vsnprintf_ex (my_vsnprintf.c:655)
      ==9945==    by 0xD78FAE: my_vsnprintf (my_vsnprintf.c:706)
      ==9945==    by 0xD7905A: my_snprintf (my_vsnprintf.c:715)
      ==9945==    by 0x5F92EA: err_conv(char*, unsigned int, char const*, unsigned int, charset_info_st const*) (sql_error.cc:788)
      ==9945==    by 0x5848F8: ErrConvString::ptr() const (sql_error.h:548)
      ==9945==    by 0x706E80: make_truncated_value_warning(THD*, MYSQL_ERROR::enum_warning_level, ErrConv const*, enum_mysql_timestamp_type, char const*) (sql_time.cc:853)
      ==9945==    by 0x705236: make_truncated_value_warning(THD*, MYSQL_ERROR::enum_warning_level, char const*, unsigned int, enum_mysql_timestamp_type, char const*) (sql_time.h:64)
      ==9945==    by 0x705C9F: str_to_datetime_with_warn(charset_info_st const*, char const*, unsigned int, st_mysql_time*, unsigned long long) (sql_time.cc:320)
      ==9945==    by 0x88F93F: Item_dyncol_get::get_date(st_mysql_time*, unsigned long long) (item_strfunc.cc:4729)
      ==9945==    by 0x8BD48A: Item_func::get_arg0_date(st_mysql_time*, unsigned long long) (item_func.h:157)
      ==9945==    by 0x8BB125: Item_date_typecast::get_date(st_mysql_time*, unsigned long long) (item_timefunc.cc:2432)
      ==9945==    by 0x81DB26: Item::send(Protocol*, String*) (item.cc:6394)
      ==9945==    by 0x579F8D: Protocol::send_result_set_row(List<Item>*) (protocol.cc:900)
      ==9945==    by 0x5E3BA4: select_send::send_data(List<Item>&) (sql_class.cc:2364)

      bzr version-info

      revision-id: knielsen@knielsen-hq.org-20130816131025-etjrvmfvupsjzq83
      revno: 3674
      branch-nick: 10.0-base

      Built with BUILD/compile-pentium-valgrind-max-no-ndb

      Also reproducible on the current 10.0 tree. Could not reproduce on 5.5.

      It might turn out to be a duplicate of some other valgrind warnings filed recently, but I haven't had this stack trace yet, so submitting it to be on the safe side.

      Attachments

        Activity

          People

            sanja Oleksandr Byelkin
            elenst Elena Stepanova
            Votes:
            0 Vote for this issue
            Watchers:
            2 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.