From: Sergey Petrunia Date: April 3 2007 8:14pm Subject: bk commit into 5.2 tree (sergefp:1.2480) List-Archive: http://lists.mysql.com/commits/23716 Message-Id: <20070403201413.312E5BBC004@pylon64.mylan> Below is the list of changes that have just been committed into a local 5.2 repository of psergey. When psergey does a push these changes will be propagated to the main repository and, within 24 hours after the push, to the public repository. For information on how to access the public repository see http://dev.mysql.com/doc/mysql/en/installing-source-tree.html ChangeSet@stripped, 2007-04-03 17:53:55+04:00, sergefp@stripped +2 -0 Trivial valgrind failure fixes sql/sql_select.cc@stripped, 2007-04-03 17:53:50+04:00, sergefp@stripped +4 -1 Fix valgrind failure on x86-64. storage/innobase/handler/ha_innodb.cc@stripped, 2007-04-03 17:53:50+04:00, sergefp@stripped +4 -0 Fix valgrind failure: initialize ha_innobase::primary_key # This is a BitKeeper patch. What follows are the unified diffs for the # set of deltas contained in the patch. The rest of the patch, the part # that BitKeeper cares about, is below these diffs. # User: sergefp # Host: pylon64.mylan # Root: /home/psergey/mysql-5.2-opt-fix --- 1.499/sql/sql_select.cc 2007-04-03 17:54:03 +04:00 +++ 1.500/sql/sql_select.cc 2007-04-03 17:54:03 +04:00 @@ -5113,8 +5113,11 @@ non-trivial code and add overhead. 2. The value of records_read is an inprecise estimate and adding 1 (or, in the worst case, #max_nested_outer_joins=64-1) will not make it any more precise. + + - Actually we either have records_read=0.0 or records_read > 1.0. We + compare with 0.0001 to avoid valgrind failures on x64. */ - if (pos->records_read) + if (pos->records_read > 0.0001) found*= pos->records_read; } } --- 1.325/storage/innobase/handler/ha_innodb.cc 2007-04-03 17:54:03 +04:00 +++ 1.326/storage/innobase/handler/ha_innodb.cc 2007-04-03 17:54:03 +04:00 @@ -918,6 +918,10 @@ HA_CAN_GEOMETRY | HA_PARTIAL_COLUMN_READ | HA_TABLE_SCAN_ON_INDEX | HA_NEED_READ_RANGE_BUFFER | HA_MRR_CANT_SORT), + primary_key(0), /* needs initialization because index_flags() may be called + before this is set to the real value. It's ok to have any + value here because it doesn't matter if we return the + HA_DO_INDEX_COND_PUSHDOWN bit from those "early" calls */ start_of_scan(0), num_write_row(0), ds_mrr((DsMrr_impl::range_check_toggle_func_t)