Bug #79986 | Many row_sel_store_mysql_field Valgrind client request errors on 32 bit builds | ||
---|---|---|---|
Submitted: | 14 Jan 2016 14:18 | Modified: | 22 Jan 2016 14:05 |
Reporter: | Laurynas Biveinis (OCA) | Email Updates: | |
Status: | Verified | Impact on me: | |
Category: | MySQL Server: InnoDB storage engine | Severity: | S3 (Non-critical) |
Version: | 5.7.10 | OS: | Ubuntu (15.10 32-bit) |
Assigned to: | CPU Architecture: | Any | |
Tags: | 32 bit, valgrind |
[14 Jan 2016 14:18]
Laurynas Biveinis
[22 Jan 2016 9:31]
MySQL Verification Team
Hello Laurynas, Thank you for the report. Could you please share exact cmake command used for the build? I tried this way: -- ushastry@ubuntu32:~/Downloads/mysql-5.7.10 cmake . -DWITH_DEBUG=1 -DDOWNLOAD_BOOST=1 -DWITH_BOOST=../boost ushastry@ubuntu32:~/Downloads/mysql-5.7.10 make ushastry@ubuntu32:~/Downloads/mysql-5.7.10$ cd mysql-test ushastry@ubuntu32:~/Downloads/mysql-5.7.10/mysql-test$ ./mtr --debug-server --valgrind rpl_semi_sync --big-test Logging: ./mtr --debug-server --valgrind rpl_semi_sync --big-test MySQL Version 5.7.10 Turning on valgrind for all executables Running valgrind with options " --show-reachable=yes " Turning off --check-testcases to save time when valgrinding Checking supported features... - SSL connections supported - binaries are debug compiled Collecting tests... - adding combinations for rpl Checking leftover processes... Removing old var directory... Creating var directory '/home/ushastry/Downloads/mysql-5.7.10/mysql-test/var'... Installing system database... ============================================================================== TEST RESULT TIME (ms) or COMMENT -------------------------------------------------------------------------- worker[1] Using MTR_BUILD_THREAD 300, with reserved ports 13000..13009 worker[1] mysql-test-run: WARNING: Waited 60 seconds for /home/ushastry/Downloads/mysql-5.7.10/mysql-test/var/run/mysqld.1.pid to be created, still waiting for 1740 seconds... rpl.rpl_semi_sync 'mix' [ pass ] 349849 worker[1] mysql-test-run: WARNING: Waited 60 seconds for /home/ushastry/Downloads/mysql-5.7.10/mysql-test/var/run/mysqld.1.pid to be created, still waiting for 1740 seconds... rpl.rpl_semi_sync 'row' [ pass ] 331910 worker[1] mysql-test-run: WARNING: Waited 60 seconds for /home/ushastry/Downloads/mysql-5.7.10/mysql-test/var/run/mysqld.1.pid to be created, still waiting for 1740 seconds... worker[1] mysql-test-run: WARNING: Waited 120 seconds for /home/ushastry/Downloads/mysql-5.7.10/mysql-test/var/run/mysqld.1.pid to be created, still waiting for 1680 seconds... rpl.rpl_semi_sync 'stmt' [ pass ] 356707 worker[1] Valgrind report from /home/ushastry/Downloads/mysql-5.7.10/mysql-test/var/log/mysqld.1.err after tests: rpl.rpl_semi_sync -------------------------------------------------------------------------- HEAP SUMMARY: in use at exit: 18,944 bytes in 1 blocks total heap usage: 77,981 allocs, 77,980 frees, 365,598,044 bytes allocated 18,944 bytes in 1 blocks are still reachable in loss record 1 of 1 at 0x402C19C: malloc (in /usr/lib/valgrind/vgpreload_memcheck-x86-linux.so) by 0x411874A: ??? (in /usr/lib/i386-linux-gnu/libstdc++.so.6.0.21) by 0x400EDCF: call_init.part.0 (dl-init.c:72) by 0x400EEDF: call_init (dl-init.c:30) by 0x400EEDF: _dl_init (dl-init.c:120) by 0x4000ACE: ??? (in /lib/i386-linux-gnu/ld-2.21.so) LEAK SUMMARY: definitely lost: 0 bytes in 0 blocks indirectly lost: 0 bytes in 0 blocks possibly lost: 0 bytes in 0 blocks still reachable: 18,944 bytes in 1 blocks suppressed: 0 bytes in 0 blocks For counts of detected and suppressed errors, rerun with: -v ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 0 from 0) worker[1] Valgrind report from /home/ushastry/Downloads/mysql-5.7.10/mysql-test/var/log/mysqld.1.err after tests: rpl.rpl_semi_sync -------------------------------------------------------------------------- HEAP SUMMARY: in use at exit: 18,944 bytes in 1 blocks total heap usage: 80,363 allocs, 80,362 frees, 366,699,548 bytes allocated 18,944 bytes in 1 blocks are still reachable in loss record 1 of 1 at 0x402C19C: malloc (in /usr/lib/valgrind/vgpreload_memcheck-x86-linux.so) by 0x411874A: ??? (in /usr/lib/i386-linux-gnu/libstdc++.so.6.0.21) by 0x400EDCF: call_init.part.0 (dl-init.c:72) by 0x400EEDF: call_init (dl-init.c:30) by 0x400EEDF: _dl_init (dl-init.c:120) by 0x4000ACE: ??? (in /lib/i386-linux-gnu/ld-2.21.so) LEAK SUMMARY: definitely lost: 0 bytes in 0 blocks indirectly lost: 0 bytes in 0 blocks possibly lost: 0 bytes in 0 blocks still reachable: 18,944 bytes in 1 blocks suppressed: 0 bytes in 0 blocks For counts of detected and suppressed errors, rerun with: -v ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 0 from 0) worker[1] Valgrind report from /home/ushastry/Downloads/mysql-5.7.10/mysql-test/var/log/mysqld.1.err after tests: rpl.rpl_semi_sync -------------------------------------------------------------------------- HEAP SUMMARY: in use at exit: 18,944 bytes in 1 blocks total heap usage: 79,107 allocs, 79,106 frees, 366,182,014 bytes allocated 18,944 bytes in 1 blocks are still reachable in loss record 1 of 1 at 0x402C19C: malloc (in /usr/lib/valgrind/vgpreload_memcheck-x86-linux.so) by 0x411874A: ??? (in /usr/lib/i386-linux-gnu/libstdc++.so.6.0.21) by 0x400EDCF: call_init.part.0 (dl-init.c:72) by 0x400EEDF: call_init (dl-init.c:30) by 0x400EEDF: _dl_init (dl-init.c:120) by 0x4000ACE: ??? (in /lib/i386-linux-gnu/ld-2.21.so) LEAK SUMMARY: definitely lost: 0 bytes in 0 blocks indirectly lost: 0 bytes in 0 blocks possibly lost: 0 bytes in 0 blocks still reachable: 18,944 bytes in 1 blocks suppressed: 0 bytes in 0 blocks For counts of detected and suppressed errors, rerun with: -v ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 0 from 0) valgrind_report [ fail ] Test ended at 2016-01-22 13:52:46 Valgrind reported failures at shutdown, see above -------------------------------------------------------------------------- The servers were restarted 2 times Spent 1038.466 of 1788 seconds executing testcases Completed: Failed 1/4 tests, 75.00% were successful. Failing test(s): valgrind_report The log files in var/log may give you some hint of what went wrong. If you want to report this error, please read first the documentation at http://dev.mysql.com/doc/mysql/en/mysql-test-suite.html OS and other details: ushastry@ubuntu32:~/Downloads/mysql-5.7.10/mysql-test$ cat /etc/*release DISTRIB_ID=Ubuntu DISTRIB_RELEASE=15.10 DISTRIB_CODENAME=wily DISTRIB_DESCRIPTION="Ubuntu 15.10" NAME="Ubuntu" VERSION="15.10 (Wily Werewolf)" ID=ubuntu ID_LIKE=debian PRETTY_NAME="Ubuntu 15.10" VERSION_ID="15.10" HOME_URL="http://www.ubuntu.com/" SUPPORT_URL="http://help.ubuntu.com/" BUG_REPORT_URL="http://bugs.launchpad.net/ubuntu/" ushastry@ubuntu32:~/Downloads/mysql-5.7.10/mysql-test$ valgrind --version valgrind-3.11.0 ushastry@ubuntu32:~/Downloads/mysql-5.7.10/mysql-test$ cmake --version cmake version 3.2.2 Thanks, Umesh
[22 Jan 2016 10:12]
Laurynas Biveinis
Umesh - Please add -DWITH_VALGRIND=ON to your CMake args. Note that the reported Valgrind errors are coming from Valgrind client requests, and those need that CMake option to be compiled in.
[22 Jan 2016 11:00]
MySQL Verification Team
Thank you for the feedback. Regards, Umesh
[22 Jan 2016 14:05]
MySQL Verification Team
-- with 5.7.10 on Ubuntu 32bit worker[1] Using MTR_BUILD_THREAD 300, with reserved ports 13000..13009 worker[1] mysql-test-run: WARNING: Waited 60 seconds for /home/ushastry/Downloads/mysql-5.7.10/mysql-test/var/run/mysqld.1.pid to be created, still waiting for 1740 seconds... rpl.rpl_semi_sync 'mix' [ fail ] Found warnings/errors in server log file! Test ended at 2016-01-22 19:32:02 line ==10846== Thread 28: ==10846== Uninitialised byte(s) found during client check request ==10846== at 0x96E54E3: row_sel_store_mysql_field_func(unsigned char*, row_prebuilt_t*, unsigned char const*, dict_index_t const*, unsigned long const*, unsigned long, mysql_row_templ_t const*) (row0sel.cc:3135) ==10846== by 0x96E5AB3: row_sel_store_mysql_rec(unsigned char*, row_prebuilt_t*, unsigned char const*, dtuple_t const*, unsigned long, dict_index_t const*, unsigned long const*) (row0sel.cc:3280) ==10846== by 0x96E8005: row_search_no_mvcc(unsigned char*, page_cur_mode_t, row_prebuilt_t*, unsigned long, unsigned long) (row0sel.cc:4340) ==10846== by 0x954D691: ha_innobase::index_read(unsigned char*, unsigned char const*, unsigned int, ha_rkey_function) (ha_innodb.cc:8304) ==10846== by 0x954E5D1: ha_innobase::index_first(unsigned char*) (ha_innodb.cc:8709) ==10846== by 0x954E8D7: ha_innobase::rnd_next(unsigned char*) (ha_innodb.cc:8814) ==10846== by 0x8AF4C43: handler::ha_rnd_next(unsigned char*) (handler.cc:2817) ==10846== by 0x908B20C: rr_sequential(READ_RECORD*) (records.cc:510) ==10846== by 0x9112C60: join_init_read_record(QEP_TAB*) (sql_executor.cc:2464) ==10846== by 0x910FDE2: sub_select(JOIN*, QEP_TAB*, bool) (sql_executor.cc:1271) ==10846== by 0x910F715: do_select(JOIN*) (sql_executor.cc:944) ==10846== by 0x910D676: JOIN::exec() (sql_executor.cc:199) ==10846== by 0x91AD12E: handle_query(THD*, LEX*, Query_result*, unsigned long long, unsigned long long) (sql_select.cc:184) ==10846== by 0x915F6D1: execute_sqlcom_select(THD*, TABLE_LIST*) (sql_parse.cc:5098) ==10846== by 0x915883B: mysql_execute_command(THD*, bool) (sql_parse.cc:2748) ==10846== by 0x916051B: mysql_parse(THD*, Parser_state*) (sql_parse.cc:5508) ==10846== Address 0x1440d762 is 2,314 bytes inside a block of size 2,328 alloc'd ==10846== at 0x402C19C: malloc (in /usr/lib/valgrind/vgpreload_memcheck-x86-linux.so) ==10846== by 0x94841B4: my_raw_malloc (my_malloc.c:191) ==10846== by 0x9483D14: my_malloc (my_malloc.c:54) ==10846== by 0x947BD8E: alloc_root (my_alloc.c:217) ==10846== by 0x9205F0E: create_tmp_table(THD*, Temp_table_param*, List<Item>&, st_order*, bool, bool, unsigned long long, unsigned long long, char const*) (sql_tmp_table.cc:1278) ==10846== by 0x91D53E7: create_schema_table(THD*, TABLE_LIST*) (sql_show.cc:7554) ==10846== by 0x91D61B3: mysql_schema_table(THD*, LEX*, TABLE_LIST*) (sql_show.cc:7783) ==10846== by 0x90D297A: open_and_process_table(THD*, LEX*, TABLE_LIST*, unsigned int*, unsigned int, Prelocking_strategy*, bool, Open_table_context*) (sql_base.cc:4914) ==10846== by 0x90D3C22: open_tables(THD*, TABLE_LIST**, unsigned int*, unsigned int, Prelocking_strategy*) (sql_base.cc:5633) ==10846== by 0x90D4D30: open_tables_for_query(THD*, TABLE_LIST*, unsigned int) (sql_base.cc:6373) ==10846== by 0x915F571: execute_sqlcom_select(THD*, TABLE_LIST*) (sql_parse.cc:5069) ==10846== by 0x915883B: mysql_execute_command(THD*, bool) (sql_parse.cc:2748) ==10846== by 0x916051B: mysql_parse(THD*, Parser_state*) (sql_parse.cc:5508) ==10846== by 0x91556AA: dispatch_command(THD*, COM_DATA const*, enum_server_command) (sql_parse.cc:1425) ==10846== by 0x915460D: do_command(THD*) (sql_parse.cc:993) ==10846== by 0x9286FB8: handle_connection (connection_handler_per_thread.cc:301) ==10846== Uninitialised byte(s) found during client check request ==10846== at 0x96E54E3: row_sel_store_mysql_field_func(unsigned char*, row_prebuilt_t*, unsigned char const*, dict_index_t const*, unsigned long const*, unsigned long, mysql_row_templ_t const*) (row0sel.cc:3135) ==10846== by 0x96E5AB3: row_sel_store_mysql_rec(unsigned char*, row_prebuilt_t*, unsigned char const*, dtuple_t const*, unsigned long, dict_index_t const*, unsigned long const*) (row0sel.cc:3280) ==10846== by 0x96E8005: row_search_no_mvcc(unsigned char*, page_cur_mode_t, row_prebuilt_t*, unsigned long, unsigned long) (row0sel.cc:4340) ==10846== by 0x954E2F1: ha_innobase::general_fetch(unsigned char*, unsigned int, unsigned int) (ha_innodb.cc:8597) ==10846== by 0x954E905: ha_innobase::rnd_next(unsigned char*) (ha_innodb.cc:8822) ==10846== by 0x8AF4C43: handler::ha_rnd_next(unsigned char*) (handler.cc:2817) ==10846== by 0x908B20C: rr_sequential(READ_RECORD*) (records.cc:510) ==10846== by 0x910FDF8: sub_select(JOIN*, QEP_TAB*, bool) (sql_executor.cc:1274) ==10846== by 0x910F715: do_select(JOIN*) (sql_executor.cc:944) ==10846== by 0x910D676: JOIN::exec() (sql_executor.cc:199) ==10846== by 0x91AD12E: handle_query(THD*, LEX*, Query_result*, unsigned long long, unsigned long long) (sql_select.cc:184) ==10846== by 0x915F6D1: execute_sqlcom_select(THD*, TABLE_LIST*) (sql_parse.cc:5098) ==10846== by 0x915883B: mysql_execute_command(THD*, bool) (sql_parse.cc:2748) ==10846== by 0x916051B: mysql_parse(THD*, Parser_state*) (sql_parse.cc:5508) ==10846== by 0x91556AA: dispatch_command(THD*, COM_DATA const*, enum_server_command) (sql_parse.cc:1425) ==10846== by 0x915460D: do_command(THD*) (sql_parse.cc:993) ==10846== Address 0x1440d762 is 2,314 bytes inside a block of size 2,328 alloc'd ==10846== at 0x402C19C: malloc (in /usr/lib/valgrind/vgpreload_memcheck-x86-linux.so) ==10846== by 0x94841B4: my_raw_malloc (my_malloc.c:191) ==10846== by 0x9483D14: my_malloc (my_malloc.c:54) ==10846== by 0x947BD8E: alloc_root (my_alloc.c:217) ==10846== by 0x9205F0E: create_tmp_table(THD*, Temp_table_param*, List<Item>&, st_order*, bool, bool, unsigned long long, unsigned long long, char const*) (sql_tmp_table.cc:1278) ==10846== by 0x91D53E7: create_schema_table(THD*, TABLE_LIST*) (sql_show.cc:7554) ==10846== by 0x91D61B3: mysql_schema_table(THD*, LEX*, TABLE_LIST*) (sql_show.cc:7783) ==10846== by 0x90D297A: open_and_process_table(THD*, LEX*, TABLE_LIST*, unsigned int*, unsigned int, Prelocking_strategy*, bool, Open_table_context*) (sql_base.cc:4914) ==10846== by 0x90D3C22: open_tables(THD*, TABLE_LIST**, unsigned int*, unsigned int, Prelocking_strategy*) (sql_base.cc:5633) ==10846== by 0x90D4D30: open_tables_for_query(THD*, TABLE_LIST*, unsigned int) (sql_base.cc:6373) ==10846== by 0x915F571: execute_sqlcom_select(THD*, TABLE_LIST*) (sql_parse.cc:5069) ==10846== by 0x915883B: mysql_execute_command(THD*, bool) (sql_parse.cc:2748) ==10846== by 0x916051B: mysql_parse(THD*, Parser_state*) (sql_parse.cc:5508) ==10846== by 0x91556AA: dispatch_command(THD*, COM_DATA const*, enum_server_command) (sql_parse.cc:1425) ==10846== by 0x915460D: do_command(THD*) (sql_parse.cc:993) ==10846== by 0x9286FB8: handle_connection (connection_handler_per_thread.cc:301) ^ Found warnings in /home/ushastry/Downloads/mysql-5.7.10/mysql-test/var/log/mysqld.1.err ok