List:Commits« Previous MessageNext Message »
From:Alexander Nozdrin Date:January 27 2010 8:18pm
Subject:bzr commit into mysql-5.5-next-mr branch (alik:2961)
View as plain text  
#At file:///mnt/raid/alik/MySQL/bzr/00.merges/mysql-next-mr-merge.2/ based on revid:alik@stripped

 2961 Alexander Nozdrin	2010-01-27 [merge]
      Auto-merge from mysql-trunk-merge.

    modified:
      mysql-test/r/subselect.result
      mysql-test/t/subselect.test
      sql/sql_select.cc
=== modified file 'mysql-test/r/subselect.result'
--- a/mysql-test/r/subselect.result	2010-01-19 16:36:14 +0000
+++ b/mysql-test/r/subselect.result	2010-01-27 20:17:46 +0000
@@ -4873,4 +4873,16 @@ SELECT 1 FROM t1 GROUP BY
 1
 1
 DROP TABLE t1;
+#
+# Bug #45989 take 2 : memory leak after explain encounters an 
+# error in the query
+#
+CREATE TABLE t1(a LONGTEXT);
+INSERT INTO t1 VALUES (repeat('a',@@global.max_allowed_packet));
+INSERT INTO t1 VALUES (repeat('b',@@global.max_allowed_packet));
+EXPLAIN EXTENDED SELECT DISTINCT 1 FROM t1,
+(SELECT DISTINCTROW a AS away FROM t1 GROUP BY a WITH ROLLUP) AS d1  
+WHERE t1.a = d1.a;
+ERROR 42S22: Unknown column 'd1.a' in 'where clause'
+DROP TABLE t1;
 End of 5.1 tests.

=== modified file 'mysql-test/t/subselect.test'
--- a/mysql-test/t/subselect.test	2010-01-19 16:36:14 +0000
+++ b/mysql-test/t/subselect.test	2010-01-27 20:17:46 +0000
@@ -3805,4 +3805,21 @@ SELECT 1 FROM t1 GROUP BY
   (SELECT LAST_INSERT_ID() FROM t1 ORDER BY MIN(a) ASC LIMIT 1);
 DROP TABLE t1;
 
+--echo #
+--echo # Bug #45989 take 2 : memory leak after explain encounters an 
+--echo # error in the query
+--echo #
+
+CREATE TABLE t1(a LONGTEXT);
+INSERT INTO t1 VALUES (repeat('a',@@global.max_allowed_packet));
+INSERT INTO t1 VALUES (repeat('b',@@global.max_allowed_packet));
+
+--error ER_BAD_FIELD_ERROR
+EXPLAIN EXTENDED SELECT DISTINCT 1 FROM t1,
+(SELECT DISTINCTROW a AS away FROM t1 GROUP BY a WITH ROLLUP) AS d1  
+WHERE t1.a = d1.a;
+
+DROP TABLE t1;
+
+
 --echo End of 5.1 tests.

=== modified file 'sql/sql_select.cc'
--- a/sql/sql_select.cc	2010-01-19 16:36:14 +0000
+++ b/sql/sql_select.cc	2010-01-27 20:17:46 +0000
@@ -5927,6 +5927,8 @@ JOIN::make_simple_join(JOIN *parent, TAB
   const_table_map= 0;
   tmp_table_param.field_count= tmp_table_param.sum_func_count=
     tmp_table_param.func_count= 0;
+  if (tmp_table_param.copy_field)
+    delete [] tmp_table_param.copy_field;
   tmp_table_param.copy_field= tmp_table_param.copy_field_end=0;
   first_record= sort_and_group=0;
   send_records= (ha_rows) 0;


Attachment: [text/bzr-bundle] bzr/alik@sun.com-20100127201746-f5xlwo2ituutg0hm.bundle
Thread
bzr commit into mysql-5.5-next-mr branch (alik:2961)Alexander Nozdrin27 Jan