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

InnoDB Debug build under valgrind errors on assertions

    XMLWordPrintable

Details

    Description

      A compile of -DCMAKE_BUILD_TYPE=Debug and -DWITH_VALGRIND and a mtr run of the following generates multiple valgrind errors:

      valgrind-3.23.0

      $  mysql-test/mysql-test-run.pl --valgrind="--leak-check=summary --gen-suppressions=yes --num-callers=10" --force --suite=innodb
       
      line
      ==893205== Thread 27:
      ==893205== Conditional jump or move depends on uninitialised value(s)
      ==893205==    at 0x14CA715: mach_write_to_2(unsigned char*, unsigned long) (mach0data.inl:58)
      ==893205==    by 0x14CC52C: rec_set_bit_field_2(unsigned char*, unsigned long, unsigned long, unsigned long, unsigned long) (rem0rec.inl:201)
      ==893205==    by 0x14CC842: rec_set_n_fields_old(unsigned char*, unsigned long) (rem0rec.inl:412)
      ==893205==    by 0x14D1985: rec_convert_dtuple_to_rec_old(unsigned char*, dtuple_t const*, unsigned long) (rem0rec.cc:1377)
      ==893205==    by 0x14D21DD: rec_convert_dtuple_to_rec(unsigned char*, dict_index_t const*, dtuple_t const*, unsigned long) (rem0rec.cc:1741)
      ==893205==    by 0x167934C: page_cur_tuple_insert(page_cur_t*, dtuple_t const*, dict_index_t*, unsigned short**, mem_block_info_t**, unsigned long, mtr_t*) (page0cur.inl:272)
      ==893205==    by 0x1688439: btr_cur_optimistic_insert(unsigned long, btr_cur_t*, unsigned short**, mem_block_info_t**, dtuple_t*, unsigned char**, big_rec_t**, unsigned long, que_thr_t*, mtr_t*) (btr0cur.cc:3552)
      ==893205==    by 0x150C946: row_ins_clust_index_entry_low(unsigned long, unsigned long, dict_index_t*, unsigned long, dtuple_t*, unsigned long, que_thr_t*) (row0ins.cc:2794)
      ==893205==    by 0x150E48B: row_ins_clust_index_entry(dict_index_t*, dtuple_t*, que_thr_t*, unsigned long) (row0ins.cc:3278)
      ==893205==    by 0x150EA26: row_ins_index_entry(dict_index_t*, dtuple_t*, que_thr_t*) (row0ins.cc:3404)
      ==893205== ---- Print suppression ? --- [Return/N/n/Y/y/C/c] ---- ==893205== Conditional jump or move depends on uninitialised value(s)
      ==893205==    at 0x14CA67F: mach_write_to_1(unsigned char*, unsigned long) (mach0data.inl:41)
      ==893205==    by 0x14CBF97: rec_set_bit_field_1(unsigned char*, unsigned long, unsigned long, unsigned long, unsigned long) (rem0rec.inl:159)
      ==893205==    by 0x14D19B5: rec_convert_dtuple_to_rec_old(unsigned char*, dtuple_t const*, unsigned long) (rem0rec.cc:1380)
      ==893205==    by 0x14D21DD: rec_convert_dtuple_to_rec(unsigned char*, dict_index_t const*, dtuple_t const*, unsigned long) (rem0rec.cc:1741)
      ==893205==    by 0x167934C: page_cur_tuple_insert(page_cur_t*, dtuple_t const*, dict_index_t*, unsigned short**, mem_block_info_t**, unsigned long, mtr_t*) (page0cur.inl:272)
      ==893205==    by 0x1688439: btr_cur_optimistic_insert(unsigned long, btr_cur_t*, unsigned short**, mem_block_info_t**, dtuple_t*, unsigned char**, big_rec_t**, unsigned long, que_thr_t*, mtr_t*) (btr0cur.cc:3552)
      ==893205==    by 0x150C946: row_ins_clust_index_entry_low(unsigned long, unsigned long, dict_index_t*, unsigned long, dtuple_t*, unsigned long, que_thr_t*) (row0ins.cc:2794)
      ==893205==    by 0x150E48B: row_ins_clust_index_entry(dict_index_t*, dtuple_t*, que_thr_t*, unsigned long) (row0ins.cc:3278)
      ==893205==    by 0x150EA26: row_ins_index_entry(dict_index_t*, dtuple_t*, que_thr_t*) (row0ins.cc:3404)
      ==893205==    by 0x150F362: row_ins_index_entry_step(ins_node_t*, que_thr_t*) (row0ins.cc:3572)
      ==893205== Conditional jump or move depends on uninitialised value(s)
      ==893205==    at 0x14CA715: mach_write_to_2(unsigned char*, unsigned long) (mach0data.inl:58)
      ==893205==    by 0x14CC52C: rec_set_bit_field_2(unsigned char*, unsigned long, unsigned long, unsigned long, unsigned long) (rem0rec.inl:201)
      ==893205==    by 0x14DB699: void rec_convert_dtuple_to_rec_comp<false, false>(unsigned char*, dict_index_t const*, dfield_t const*, unsigned long, rec_comp_status_t, bool) (rem0rec.cc:1519)
      ==893205==    by 0x14D1EE0: rec_convert_dtuple_to_rec_new(unsigned char*, dict_index_t const*, dtuple_t const*) (rem0rec.cc:1702)
      ==893205==    by 0x14D21C0: rec_convert_dtuple_to_rec(unsigned char*, dict_index_t const*, dtuple_t const*, unsigned long) (rem0rec.cc:1739)
      ==893205==    by 0x167934C: page_cur_tuple_insert(page_cur_t*, dtuple_t const*, dict_index_t*, unsigned short**, mem_block_info_t**, unsigned long, mtr_t*) (page0cur.inl:272)
      ==893205==    by 0x1688439: btr_cur_optimistic_insert(unsigned long, btr_cur_t*, unsigned short**, mem_block_info_t**, dtuple_t*, unsigned char**, big_rec_t**, unsigned long, que_thr_t*, mtr_t*) (btr0cur.cc:3552)
      ==893205==    by 0x150C946: row_ins_clust_index_entry_low(unsigned long, unsigned long, dict_index_t*, unsigned long, dtuple_t*, unsigned long, que_thr_t*) (row0ins.cc:2794)
      ==893205==    by 0x150E48B: row_ins_clust_index_entry(dict_index_t*, dtuple_t*, que_thr_t*, unsigned long) (row0ins.cc:3278)
      ==893205==    by 0x150EA26: row_ins_index_entry(dict_index_t*, dtuple_t*, que_thr_t*) (row0ins.cc:3404)
      ==893205== Conditional jump or move depends on uninitialised value(s)
      ==893205==    at 0x14CA67F: mach_write_to_1(unsigned char*, unsigned long) (mach0data.inl:41)
      ==893205==    by 0x14CBF97: rec_set_bit_field_1(unsigned char*, unsigned long, unsigned long, unsigned long, unsigned long) (rem0rec.inl:159)
      ==893205==    by 0x14D1F0A: rec_convert_dtuple_to_rec_new(unsigned char*, dict_index_t const*, dtuple_t const*) (rem0rec.cc:1707)
      ==893205==    by 0x14D21C0: rec_convert_dtuple_to_rec(unsigned char*, dict_index_t const*, dtuple_t const*, unsigned long) (rem0rec.cc:1739)
      ==893205==    by 0x167934C: page_cur_tuple_insert(page_cur_t*, dtuple_t const*, dict_index_t*, unsigned short**, mem_block_info_t**, unsigned long, mtr_t*) (page0cur.inl:272)
      ==893205==    by 0x1688439: btr_cur_optimistic_insert(unsigned long, btr_cur_t*, unsigned short**, mem_block_info_t**, dtuple_t*, unsigned char**, big_rec_t**, unsigned long, que_thr_t*, mtr_t*) (btr0cur.cc:3552)
      ==893205==    by 0x150C946: row_ins_clust_index_entry_low(unsigned long, unsigned long, dict_index_t*, unsigned long, dtuple_t*, unsigned long, que_thr_t*) (row0ins.cc:2794)
      ==893205==    by 0x150E48B: row_ins_clust_index_entry(dict_index_t*, dtuple_t*, que_thr_t*, unsigned long) (row0ins.cc:3278)
      ==893205==    by 0x150EA26: row_ins_index_entry(dict_index_t*, dtuple_t*, que_thr_t*) (row0ins.cc:3404)
      ==893205==    by 0x150F362: row_ins_index_entry_step(ins_node_t*, que_thr_t*) (row0ins.cc:3572)
      ^ Found warnings in /home/dan/repos/build-mariadb-server-rebase-debug/mysql-test/var/log/mysqld.1.err
      

      By removing two assertions the valgrind tests will pass.

      Attachments

        Issue Links

          Activity

            People

              danblack Daniel Black
              danblack Daniel Black
              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.