Misc valgrind warnings when running a Random Query Generator test

Bug #635691 reported by Philip Stoev
8
This bug affects 1 person
Affects Status Importance Assigned to Milestone
MariaDB
Opinion
Critical
Antony T Curtis
OQGRAPH
Opinion
Critical
Antony T Curtis

Bug Description

When running a RQG test under valgrind against Maria 5.2, the following valgrind warnings were reported:

==6713== Conditional jump or move depends on uninitialised value(s)
==6713== at 0x4E3427E: open_query::oqgraph::modify_edge(open_query::oqgraph::current_row_st, unsigned long long*, unsigned long long*, double*, bool) (graphcore.cc:648)
==6713== by 0x4E2C47D: ha_oqgraph::update_row(unsigned char const*, unsigned char*) (ha_oqgraph.cc:545)
==6713== by 0x83AA698: handler::ha_update_row(unsigned char const*, unsigned char*) (handler.cc:4869)
==6713== by 0x832D9B5: mysql_update(THD*, TABLE_LIST*, List<Item>&, List<Item>&, Item*, unsigned int, st_order*, unsigned long long, enum_duplicates, bool) (sql_update.cc:652)
==6713== by 0x8282B3C: mysql_execute_command(THD*) (sql_parse.cc:3120)
==6713== by 0x828BB46: mysql_parse(THD*, char const*, unsigned int, char const**) (sql_parse.cc:6055)
==6713== by 0x827DCA6: dispatch_command(enum_server_command, THD*, char*, unsigned int) (sql_parse.cc:1204)
==6713== by 0x827D102: do_command(THD*) (sql_parse.cc:898)
==6713== by 0x827A1EB: handle_one_connection (sql_connect.cc:1154)
==6713== by 0xBEA918: start_thread (in /lib/libpthread-2.12.so)
==6713== by 0xB2CCBD: clone (in /lib/libc-2.12.so)
==6713==
==6713== Conditional jump or move depends on uninitialised value(s)
==6713== at 0x4E34732: open_query::oqgraph::insert_edge(unsigned long long, unsigned long long, double, bool) (graphcore.cc:558)
==6713== by 0x4E2BE63: ha_oqgraph::write_row(unsigned char*) (ha_oqgraph.cc:463)
==6713== by 0x83AA526: handler::ha_write_row(unsigned char*) (handler.cc:4846)
==6713== by 0x8318C31: write_record(THD*, st_table*, st_copy_info*) (sql_insert.cc:1638)
==6713== by 0x831CE56: select_insert::send_data(List<Item>&) (sql_insert.cc:3223)
==6713== by 0x8305EC2: end_send(JOIN*, st_join_table*, bool) (sql_select.cc:12612)
==6713== by 0x83040C7: evaluate_join_record(JOIN*, st_join_table*, int) (sql_select.cc:11788)
==6713== by 0x8303D4A: sub_select(JOIN*, st_join_table*, bool) (sql_select.cc:11660)
==6713== by 0x83038AA: do_select(JOIN*, List<Item>*, st_table*, Procedure*) (sql_select.cc:11416)
==6713== by 0x82ECB8F: JOIN::exec() (sql_select.cc:2328)
==6713== by 0x82ED2AC: 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:2528)
==6713== by 0x82E5B40: handle_select(THD*, st_lex*, select_result*, unsigned long) (sql_select.cc:280)
==6713== by 0x82833D6: mysql_execute_command(THD*) (sql_parse.cc:3290)
==6713== by 0x828BB46: mysql_parse(THD*, char const*, unsigned int, char const**) (sql_parse.cc:6055)
==6713== by 0x827DCA6: dispatch_command(enum_server_command, THD*, char*, unsigned int) (sql_parse.cc:1204)
==6713== by 0x827D102: do_command(THD*) (sql_parse.cc:898)
==6713==
==6713== Conditional jump or move depends on uninitialised value(s)
==6713== at 0x4E2BEC3: ha_oqgraph::write_row(unsigned char*) (ha_oqgraph.cc:468)
==6713== by 0x83AA526: handler::ha_write_row(unsigned char*) (handler.cc:4846)
==6713== by 0x8318C31: write_record(THD*, st_table*, st_copy_info*) (sql_insert.cc:1638)
==6713== by 0x831CE56: select_insert::send_data(List<Item>&) (sql_insert.cc:3223)
==6713== by 0x8305EC2: end_send(JOIN*, st_join_table*, bool) (sql_select.cc:12612)
==6713== by 0x83040C7: evaluate_join_record(JOIN*, st_join_table*, int) (sql_select.cc:11788)
==6713== by 0x8303D4A: sub_select(JOIN*, st_join_table*, bool) (sql_select.cc:11660)
==6713== by 0x83038AA: do_select(JOIN*, List<Item>*, st_table*, Procedure*) (sql_select.cc:11416)
==6713== by 0x82ECB8F: JOIN::exec() (sql_select.cc:2328)
==6713== by 0x82ED2AC: 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:2528)
==6713== by 0x82E5B40: handle_select(THD*, st_lex*, select_result*, unsigned long) (sql_select.cc:280)
==6713== by 0x82833D6: mysql_execute_command(THD*) (sql_parse.cc:3290)
==6713== by 0x828BB46: mysql_parse(THD*, char const*, unsigned int, char const**) (sql_parse.cc:6055)
==6713== by 0x827DCA6: dispatch_command(enum_server_command, THD*, char*, unsigned int) (sql_parse.cc:1204)
==6713== by 0x827D102: do_command(THD*) (sql_parse.cc:898)
==6713== by 0x827A1EB: handle_one_connection (sql_connect.cc:1154)

bzr version-info:
revision-id: <email address hidden>
date: 2010-08-26 16:20:27 +0300
build-date: 2010-09-11 14:52:18 +0300
revno: 2849
branch-nick: maria-5.2

The test case will be uploaded shortly

Revision history for this message
Philip Stoev (pstoev-askmonty) wrote :

Valgrind also reports various memory leaks.

Revision history for this message
Philip Stoev (pstoev-askmonty) wrote :
Revision history for this message
Philip Stoev (pstoev-askmonty) wrote :

To reproduce, please obtain the Random Query Generator

bzr branch lp:randgen

and then run the following command line, tailored to your environment:

perl runall.pl \
--grammar=bug635691yy
--mysqld=--init-file=/home/philips/bzr/randgen-oqgraph/conf/oqgraph/bug635691.init
--basedir=/home/philips/bzr/maria-5.2/
--mysqld=--plugin-load=oqgraph_engine.so
--mysqld=--plugin-dir=/home/philips/bzr/maria-5.2/storage/oqgraph/.libs
--queries=10K
--valgrind
--threads=2

You can disregard any output from the test framework and instead directly monitor the server error log for valgrind warnings. You can interrupt the test with Ctrl+C and initiate a mysqld shutdown using the mysqladmin tool in order to observe the valgrind warnings that are printed when the server exists.

More information about the tool is available from http://forge.mysql.com/RandomQueryGenerator

Changed in oqgraph:
importance: Undecided → Critical
status: New → Opinion
assignee: nobody → Antony T Curtis (atcurtis)
Changed in maria:
status: New → Opinion
importance: Undecided → Critical
assignee: nobody → Antony T Curtis (atcurtis)
milestone: none → 5.2
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.