List:Commits« Previous MessageNext Message »
From:Evgeny Potemkin Date:March 23 2011 9:00am
Subject:bzr push into mysql-trunk branch (epotemkin:3003 to 3004) Bug#11808582
WL#5274
View as plain text  
 3004 Evgeny Potemkin	2011-03-22
      Bug#11808582: VALGRIND ON WL#5274: INVALID WRITE IN MC_REPLACE_STRMEM.C:493) 
      TABLE_SHARE::column_bitmap_size wasn't initialized for tmp tables. This
      caused valgrind to throw a warning.
      Now setup_tmp_table_column_bitmaps initializes TABLE_SHARE::column_bitmap_size.
     @ mysql-test/r/derived.result
        Added a test case for the bug#11808582.
     @ mysql-test/t/derived.test
        Added a test case for the bug#11808582.
     @ sql/sql_select.cc
        Bug#11808582: VALGRIND ON WL#5274: INVALID WRITE IN MC_REPLACE_STRMEM.C:493) 
        Now setup_tmp_table_column_bitmaps initializes TABLE_SHARE::column_bitmap_size.

    modified:
      mysql-test/r/derived.result
      mysql-test/t/derived.test
      sql/sql_select.cc
 3003 Evgeny Potemkin	2011-03-18 [merge]
      Auto-merged.

    modified:
      unittest/gunit/sql_list-t.cc
=== modified file 'mysql-test/r/derived.result'
--- a/mysql-test/r/derived.result	2011-03-18 08:59:36 +0000
+++ b/mysql-test/r/derived.result	2011-03-22 19:41:04 +0000
@@ -1345,3 +1345,25 @@ FROM  t1
 1
 DROP TABLE t1;
 #
+#
+# Bug#11808582: VALGRIND ON WL#5274: INVALID WRITE IN MC_REPLACE_STRMEM.C:493) 
+#
+CREATE TABLE t1 (
+pk INT NOT NULL AUTO_INCREMENT,
+col_int_key INT,
+col_time_key time,
+col_varchar_key VARCHAR(1),
+PRIMARY KEY (pk),
+KEY col_int_key (col_int_key),
+KEY col_varchar_key (col_varchar_key,col_int_key)
+) ENGINE=InnoDB;
+SELECT tt.col_time_key
+FROM ( ( SELECT * FROM t1 ) AS tt
+INNER JOIN t1
+ON (t1.col_int_key = tt.col_int_key)
+)
+WHERE tt.col_int_key = 207
+ORDER BY tt.col_varchar_key, tt.pk ASC, 1;
+col_time_key
+DROP TABLE t1;
+#

=== modified file 'mysql-test/t/derived.test'
--- a/mysql-test/t/derived.test	2011-03-18 08:59:36 +0000
+++ b/mysql-test/t/derived.test	2011-03-22 19:41:04 +0000
@@ -712,3 +712,26 @@ FROM (
 DROP TABLE t1;
 --echo #
 
+--echo #
+--echo # Bug#11808582: VALGRIND ON WL#5274: INVALID WRITE IN MC_REPLACE_STRMEM.C:493) 
+--echo #
+CREATE TABLE t1 (
+  pk INT NOT NULL AUTO_INCREMENT,
+  col_int_key INT,
+  col_time_key time,
+  col_varchar_key VARCHAR(1),
+  PRIMARY KEY (pk),
+  KEY col_int_key (col_int_key),
+  KEY col_varchar_key (col_varchar_key,col_int_key)
+) ENGINE=InnoDB;
+SELECT tt.col_time_key
+FROM ( ( SELECT * FROM t1 ) AS tt
+  INNER JOIN t1
+  ON (t1.col_int_key = tt.col_int_key)
+  )
+WHERE tt.col_int_key = 207
+ORDER BY tt.col_varchar_key, tt.pk ASC, 1;
+
+DROP TABLE t1;
+--echo #
+

=== modified file 'sql/sql_select.cc'
--- a/sql/sql_select.cc	2011-03-18 08:59:36 +0000
+++ b/sql/sql_select.cc	2011-03-22 19:41:04 +0000
@@ -15397,6 +15397,7 @@ void setup_tmp_table_column_bitmaps(TABL
   table->s->all_set= table->def_read_set;
   bitmap_set_all(&table->s->all_set);
   table->default_column_bitmaps();
+  table->s->column_bitmap_size= bitmap_buffer_size(field_count);
 }
 
 

No bundle (reason: useless for push emails).
Thread
bzr push into mysql-trunk branch (epotemkin:3003 to 3004) Bug#11808582WL#5274Evgeny Potemkin23 Mar