List:Commits« Previous MessageNext Message »
From:Jon Olav Hauglid Date:October 12 2010 1:26pm
Subject:bzr commit into mysql-5.5-runtime branch (jon.hauglid:3161)
View as plain text  
#At file:///export/home/x/mysql-5.5-runtime-test/ based on revid:dmitry.lenev@stripped

 3161 Jon Olav Hauglid	2010-10-12 [merge]
      Merge from mysql-5.5-bugteam to mysql-5.5-runtime
      No conflicts

    removed:
      mysql-test/suite/rpl/t/rpl_mixed_binlog_max_cache_size-master.opt
      mysql-test/suite/rpl/t/rpl_row_binlog_max_cache_size-master.opt
      mysql-test/suite/rpl/t/rpl_stm_binlog_max_cache_size-master.opt
    modified:
      cmake/install_layout.cmake
      mysql-test/extra/rpl_tests/rpl_binlog_max_cache_size.test
      mysql-test/mysql-test-run.pl
      mysql-test/suite/parts/r/partition_alter3_innodb.result
      mysql-test/suite/parts/r/partition_basic_innodb.result
      mysql-test/suite/rpl/r/rpl_mixed_binlog_max_cache_size.result
      mysql-test/suite/rpl/r/rpl_row_binlog_max_cache_size.result
      mysql-test/suite/rpl/r/rpl_stm_binlog_max_cache_size.result
      mysql-test/t/disabled.def
      sql-common/client.c
      sql/log_event.cc
      sql/repl_failsafe.cc
      sql/repl_failsafe.h
      sql/slave.cc
      sql/sp_head.cc
      sql/sql_acl.cc
      sql/sql_cache.cc
      storage/innobase/handler/ha_innodb.cc
      storage/innobase/row/row0sel.c
=== modified file 'cmake/install_layout.cmake'
--- a/cmake/install_layout.cmake	2010-07-03 23:17:03 +0000
+++ b/cmake/install_layout.cmake	2010-10-11 17:44:35 +0000
@@ -59,13 +59,16 @@
 # - INSTALL_SUPPORTFILESDIR (various extra support files)
 #
 # - INSTALL_MYSQLDATADIR    (data directory)
+#
+# When changing this page,  _please_ do not forget to update public Wiki
+# http://forge.mysql.com/wiki/CMake#Fine-tuning_installation_paths
 
 IF(NOT INSTALL_LAYOUT)
   SET(DEFAULT_INSTALL_LAYOUT "STANDALONE")
 ENDIF()
 
 SET(INSTALL_LAYOUT "${DEFAULT_INSTALL_LAYOUT}"
-CACHE STRING "Installation directory layout. Options are: STANDALONE (as in zip or tar.gz installer) or UNIX")
+CACHE STRING "Installation directory layout. Options are: STANDALONE (as in zip or tar.gz installer), RPM, DEB, SVR4")
 
 IF(UNIX)
   IF(INSTALL_LAYOUT MATCHES "RPM")
@@ -83,6 +86,13 @@ IF(UNIX)
     SET(CMAKE_INSTALL_PREFIX ${default_prefix}
       CACHE PATH "install prefix" FORCE)
   ENDIF()
+  SET(VALID_INSTALL_LAYOUTS "RPM" "STANDALONE" "DEB" "SVR5")
+  LIST(FIND VALID_INSTALL_LAYOUTS "${INSTALL_LAYOUT}" ind)
+  IF(ind EQUAL -1)
+    MESSAGE(FATAL_ERROR "Invalid INSTALL_LAYOUT parameter:${INSTALL_LAYOUT}."
+    " Choose between ${VALID_INSTALL_LAYOUTS}" )
+  ENDIF()
+
   SET(SYSCONFDIR "${CMAKE_INSTALL_PREFIX}/etc"
     CACHE PATH "config directory (for my.cnf)")
   MARK_AS_ADVANCED(SYSCONFDIR)

=== modified file 'mysql-test/extra/rpl_tests/rpl_binlog_max_cache_size.test'
--- a/mysql-test/extra/rpl_tests/rpl_binlog_max_cache_size.test	2010-06-30 15:25:13 +0000
+++ b/mysql-test/extra/rpl_tests/rpl_binlog_max_cache_size.test	2010-10-09 10:18:16 +0000
@@ -21,9 +21,18 @@
 #    and slave are diverging.
 #    
 ########################################################################################
-
 call mtr.add_suppression("Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT");
 
+let $old_max_binlog_cache_size= query_get_value(SHOW VARIABLES LIKE "max_binlog_cache_size", Value, 1);
+let $old_binlog_cache_size= query_get_value(SHOW VARIABLES LIKE "binlog_cache_size", Value, 1);
+
+SET GLOBAL max_binlog_cache_size = 4096;
+# Becuase of bug#55377, we have to set binlog_cache_size until the bug is
+# fixed.
+SET GLOBAL binlog_cache_size = 4096;
+disconnect master;
+connect (master,127.0.0.1,root,,test,$MASTER_MYPORT,);
+
 CREATE TABLE t1(a INT PRIMARY KEY, data VARCHAR(30000)) ENGINE=Innodb;
 CREATE TABLE t2(a INT PRIMARY KEY, data VARCHAR(30000)) ENGINE=MyIsam;
 CREATE TABLE t3(a INT PRIMARY KEY, data VARCHAR(30000)) ENGINE=Innodb;
@@ -50,13 +59,9 @@ eval INSERT INTO t2 (a, data) VALUES (2,
        CONCAT($data, $data, $data, $data, $data, $data));
 --enable_query_log
 
-connection slave;
---source include/wait_for_slave_sql_to_stop.inc
-SET GLOBAL SQL_SLAVE_SKIP_COUNTER = 1;
-START SLAVE SQL_THREAD;
---source include/wait_for_slave_sql_to_start.inc
-
-connection master;
+# Incident event
+--let $slave_sql_errno=1590
+--source include/wait_for_slave_sql_error_and_skip.inc
 
 --disable_query_log
 eval INSERT INTO t1 (a, data) VALUES (3, $data);
@@ -74,23 +79,15 @@ eval UPDATE t2, t1 SET t2.data = CONCAT(
                        t1.data = CONCAT($data, $data, $data, $data);
 --enable_query_log
 
-connection slave;
---source include/wait_for_slave_sql_to_stop.inc
-
-if (`SELECT @@binlog_format = 'STATEMENT' || @@binlog_format = 'MIXED'`)
-{
-  SET GLOBAL SQL_SLAVE_SKIP_COUNTER = 1;
-}
+# Incident event
+--let $slave_skip_counter=1
 if (`SELECT @@binlog_format = 'ROW'`)
 {
-  SET GLOBAL SQL_SLAVE_SKIP_COUNTER = 2;
+  --inc $slave_skip_counter
 }
-START SLAVE SQL_THREAD;
---source include/wait_for_slave_sql_to_start.inc
-connection master;
-
-let $diff_statement= SELECT * FROM t1;
---source include/diff_master_slave.inc
+--let $slave_sql_errno=1590
+--source include/wait_for_slave_sql_error_and_skip.inc
+--let $slave_skip_counter=
 
 --echo ########################################################################################
 --echo #                             2 - BEGIN - IMPLICIT COMMIT by DDL
@@ -178,17 +175,6 @@ BEGIN;
 CREATE TABLE t5 (a int);
 --enable_query_log
 
-if (`SELECT @@binlog_format = 'ROW'`)
-{
-  connection slave;
-  --source include/wait_for_slave_sql_to_stop.inc
-
-  SET GLOBAL SQL_SLAVE_SKIP_COUNTER = 1;
-  START SLAVE SQL_THREAD;
-  --source include/wait_for_slave_sql_to_start.inc
-  connection master;
-}
-
 let $diff_statement= SELECT * FROM t1;
 --source include/diff_master_slave.inc
 
@@ -373,6 +359,70 @@ COMMIT;
 let $diff_statement= SELECT * FROM t1;
 --source include/diff_master_slave.inc
 
+--echo ########################################################################
+--echo #      8 - Bug#55375(Regression Bug) Transaction bigger than
+--echo #          max_binlog_cache_size crashes slave
+--echo ########################################################################
+
+--echo # [ On Slave ]
+SET GLOBAL max_binlog_cache_size = 4096;
+SET GLOBAL binlog_cache_size = 4096;
+
+source include/stop_slave.inc;
+source include/start_slave.inc;
+CALL mtr.add_suppression("Multi-statement transaction required more than 'max_binlog_cache_size' bytes of storage.*");
+CALL mtr.add_suppression("Writing one row to the row-based binary log failed.*");
+
+connection master;
+TRUNCATE t1;
+
+sync_slave_with_master;
+--let binlog_start= query_get_value(SHOW MASTER STATUS, Position, 1)
+--let binlog_file= query_get_value(SHOW MASTER STATUS, File, 1)
+
+connection master;
+--replace_result $old_max_binlog_cache_size ORIGINAL_VALUE
+--eval SET GLOBAL max_binlog_cache_size= $old_max_binlog_cache_size
+--replace_result $old_binlog_cache_size ORIGINAL_VALUE
+--eval SET GLOBAL binlog_cache_size= $old_binlog_cache_size
+disconnect master;
+connect (master,127.0.0.1,root,,test,$MASTER_MYPORT,);
+
+--let $n=128
+BEGIN;
+--disable_query_log
+--echo Repeat statement 'INSERT INTO t1 VALUES(\$n, repeat("a", 32))' $n times
+while ($n)
+{
+  --eval INSERT INTO t1 VALUES ($n, repeat("a", 32))
+  --dec $n
+}
+--enable_query_log
+COMMIT;
+
+connection slave;
+--let $slave_sql_errno= 1197
+if (`SELECT @@binlog_format = 'ROW'`)
+{
+  --let $slave_sql_errno= 1534
+}
+source include/wait_for_slave_sql_error.inc;
+
+SELECT count(*) FROM t1;
+source include/show_binlog_events.inc;
+
+--replace_result $old_max_binlog_cache_size ORIGINAL_VALUE
+--eval SET GLOBAL max_binlog_cache_size= $old_max_binlog_cache_size
+--replace_result $old_binlog_cache_size ORIGINAL_VALUE
+--eval SET GLOBAL binlog_cache_size= $old_binlog_cache_size
+
+source include/stop_slave.inc;
+source include/start_slave.inc;
+
+connection master;
+sync_slave_with_master;
+SELECT count(*) FROM t1;
+
 --echo ########################################################################################
 --echo #                                        CLEAN
 --echo ########################################################################################
@@ -385,4 +435,4 @@ DROP TABLE IF EXISTS t4;
 DROP TABLE IF EXISTS t5;
 DROP TABLE IF EXISTS t6;
 DROP PROCEDURE p1;
-sync_slave_with_master;
+source include/master-slave-end.inc;

=== modified file 'mysql-test/mysql-test-run.pl'
--- a/mysql-test/mysql-test-run.pl	2010-10-05 11:33:54 +0000
+++ b/mysql-test/mysql-test-run.pl	2010-10-12 10:07:49 +0000
@@ -162,7 +162,7 @@ our $opt_vs_config = $ENV{'MTR_VS_CONFIG
 
 # If you add a new suite, please check TEST_DIRS in Makefile.am.
 #
-my $DEFAULT_SUITES= "main,sys_vars,binlog,federated,rpl,rpl_ndb,ndb,innodb,perfschema";
+my $DEFAULT_SUITES= "main,sys_vars,binlog,federated,rpl,innodb,perfschema";
 my $opt_suites;
 
 our $opt_verbose= 0;  # Verbose output, enable with --verbose

=== modified file 'mysql-test/suite/parts/r/partition_alter3_innodb.result'
--- a/mysql-test/suite/parts/r/partition_alter3_innodb.result	2010-09-13 13:56:56 +0000
+++ b/mysql-test/suite/parts/r/partition_alter3_innodb.result	2010-10-08 09:34:08 +0000
@@ -57,7 +57,6 @@ t1	CREATE TABLE `t1` (
   `f_varchar` varchar(30) DEFAULT NULL
 ) ENGINE=InnoDB DEFAULT CHARSET=latin1
 t1.frm
-t1.ibd
 EXPLAIN PARTITIONS SELECT COUNT(*) FROM t1 WHERE f_date = '1000-02-10';
 id	select_type	table	partitions	type	possible_keys	key	key_len	ref	rows	Extra
 1	SIMPLE	t1	NULL	ALL	NULL	NULL	NULL	NULL	20	Using where
@@ -79,7 +78,6 @@ t1	CREATE TABLE `t1` (
   `f_varchar` varchar(30) DEFAULT NULL
 ) ENGINE=InnoDB DEFAULT CHARSET=latin1
 /*!50100 PARTITION BY HASH (YEAR(f_date)) */
-t1#P#p0.ibd
 t1.frm
 t1.par
 EXPLAIN PARTITIONS SELECT COUNT(*) FROM t1 WHERE f_date = '1000-02-10';
@@ -98,7 +96,6 @@ t1	CREATE TABLE `t1` (
   `f_varchar` varchar(30) DEFAULT NULL
 ) ENGINE=InnoDB DEFAULT CHARSET=latin1
 /*!50100 PARTITION BY HASH (DAYOFYEAR(f_date)) */
-t1#P#p0.ibd
 t1.frm
 t1.par
 EXPLAIN PARTITIONS SELECT COUNT(*) FROM t1 WHERE f_date = '1000-02-10';
@@ -115,7 +112,6 @@ t1	CREATE TABLE `t1` (
   `f_varchar` varchar(30) DEFAULT NULL
 ) ENGINE=InnoDB DEFAULT CHARSET=latin1
 /*!50100 PARTITION BY HASH (YEAR(f_date)) */
-t1#P#p0.ibd
 t1.frm
 t1.par
 EXPLAIN PARTITIONS SELECT COUNT(*) FROM t1 WHERE f_date = '1000-02-10';
@@ -141,9 +137,6 @@ t1	CREATE TABLE `t1` (
 (PARTITION p0 ENGINE = InnoDB,
  PARTITION part1 ENGINE = InnoDB,
  PARTITION part7 ENGINE = InnoDB) */
-t1#P#p0.ibd
-t1#P#part1.ibd
-t1#P#part7.ibd
 t1.frm
 t1.par
 EXPLAIN PARTITIONS SELECT COUNT(*) FROM t1 WHERE f_date = '1000-02-10';
@@ -168,10 +161,6 @@ t1	CREATE TABLE `t1` (
  PARTITION part1 ENGINE = InnoDB,
  PARTITION part7 ENGINE = InnoDB,
  PARTITION part2 ENGINE = InnoDB) */
-t1#P#p0.ibd
-t1#P#part1.ibd
-t1#P#part2.ibd
-t1#P#part7.ibd
 t1.frm
 t1.par
 EXPLAIN PARTITIONS SELECT COUNT(*) FROM t1 WHERE f_date = '1000-02-10';
@@ -197,14 +186,6 @@ t1	CREATE TABLE `t1` (
  PARTITION p5 ENGINE = InnoDB,
  PARTITION p6 ENGINE = InnoDB,
  PARTITION p7 ENGINE = InnoDB) */
-t1#P#p0.ibd
-t1#P#p4.ibd
-t1#P#p5.ibd
-t1#P#p6.ibd
-t1#P#p7.ibd
-t1#P#part1.ibd
-t1#P#part2.ibd
-t1#P#part7.ibd
 t1.frm
 t1.par
 EXPLAIN PARTITIONS SELECT COUNT(*) FROM t1 WHERE f_date = '1000-02-10';
@@ -241,13 +222,6 @@ t1	CREATE TABLE `t1` (
  PARTITION p4 ENGINE = InnoDB,
  PARTITION p5 ENGINE = InnoDB,
  PARTITION p6 ENGINE = InnoDB) */
-t1#P#p0.ibd
-t1#P#p4.ibd
-t1#P#p5.ibd
-t1#P#p6.ibd
-t1#P#part1.ibd
-t1#P#part2.ibd
-t1#P#part7.ibd
 t1.frm
 t1.par
 EXPLAIN PARTITIONS SELECT COUNT(*) FROM t1 WHERE f_date = '1000-02-10';
@@ -270,12 +244,6 @@ t1	CREATE TABLE `t1` (
  PARTITION part2 ENGINE = InnoDB,
  PARTITION p4 ENGINE = InnoDB,
  PARTITION p5 ENGINE = InnoDB) */
-t1#P#p0.ibd
-t1#P#p4.ibd
-t1#P#p5.ibd
-t1#P#part1.ibd
-t1#P#part2.ibd
-t1#P#part7.ibd
 t1.frm
 t1.par
 EXPLAIN PARTITIONS SELECT COUNT(*) FROM t1 WHERE f_date = '1000-02-10';
@@ -297,11 +265,6 @@ t1	CREATE TABLE `t1` (
  PARTITION part7 ENGINE = InnoDB,
  PARTITION part2 ENGINE = InnoDB,
  PARTITION p4 ENGINE = InnoDB) */
-t1#P#p0.ibd
-t1#P#p4.ibd
-t1#P#part1.ibd
-t1#P#part2.ibd
-t1#P#part7.ibd
 t1.frm
 t1.par
 EXPLAIN PARTITIONS SELECT COUNT(*) FROM t1 WHERE f_date = '1000-02-10';
@@ -322,10 +285,6 @@ t1	CREATE TABLE `t1` (
  PARTITION part1 ENGINE = InnoDB,
  PARTITION part7 ENGINE = InnoDB,
  PARTITION part2 ENGINE = InnoDB) */
-t1#P#p0.ibd
-t1#P#part1.ibd
-t1#P#part2.ibd
-t1#P#part7.ibd
 t1.frm
 t1.par
 EXPLAIN PARTITIONS SELECT COUNT(*) FROM t1 WHERE f_date = '1000-02-10';
@@ -345,9 +304,6 @@ t1	CREATE TABLE `t1` (
 (PARTITION p0 ENGINE = InnoDB,
  PARTITION part1 ENGINE = InnoDB,
  PARTITION part7 ENGINE = InnoDB) */
-t1#P#p0.ibd
-t1#P#part1.ibd
-t1#P#part7.ibd
 t1.frm
 t1.par
 EXPLAIN PARTITIONS SELECT COUNT(*) FROM t1 WHERE f_date = '1000-02-10';
@@ -366,8 +322,6 @@ t1	CREATE TABLE `t1` (
 /*!50100 PARTITION BY HASH (YEAR(f_date))
 (PARTITION p0 ENGINE = InnoDB,
  PARTITION part1 ENGINE = InnoDB) */
-t1#P#p0.ibd
-t1#P#part1.ibd
 t1.frm
 t1.par
 EXPLAIN PARTITIONS SELECT COUNT(*) FROM t1 WHERE f_date = '1000-02-10';
@@ -385,7 +339,6 @@ t1	CREATE TABLE `t1` (
 ) ENGINE=InnoDB DEFAULT CHARSET=latin1
 /*!50100 PARTITION BY HASH (YEAR(f_date))
 (PARTITION p0 ENGINE = InnoDB) */
-t1#P#p0.ibd
 t1.frm
 t1.par
 EXPLAIN PARTITIONS SELECT COUNT(*) FROM t1 WHERE f_date = '1000-02-10';
@@ -406,7 +359,6 @@ t1	CREATE TABLE `t1` (
   `f_varchar` varchar(30) DEFAULT NULL
 ) ENGINE=InnoDB DEFAULT CHARSET=latin1
 t1.frm
-t1.ibd
 EXPLAIN PARTITIONS SELECT COUNT(*) FROM t1 WHERE f_date = '1000-02-10';
 id	select_type	table	partitions	type	possible_keys	key	key_len	ref	rows	Extra
 1	SIMPLE	t1	NULL	ALL	NULL	NULL	NULL	NULL	20	Using where
@@ -446,7 +398,6 @@ t1	CREATE TABLE `t1` (
   `f_charbig` varchar(1000) DEFAULT NULL
 ) ENGINE=InnoDB DEFAULT CHARSET=latin1
 t1.frm
-t1.ibd
 EXPLAIN PARTITIONS SELECT COUNT(*) <> 1 FROM t1 WHERE f_int1 = 3;
 id	select_type	table	partitions	type	possible_keys	key	key_len	ref	rows	Extra
 1	SIMPLE	t1	NULL	ALL	NULL	NULL	NULL	NULL	20	Using where
@@ -469,7 +420,6 @@ t1	CREATE TABLE `t1` (
   `f_charbig` varchar(1000) DEFAULT NULL
 ) ENGINE=InnoDB DEFAULT CHARSET=latin1
 /*!50100 PARTITION BY KEY (f_int1) */
-t1#P#p0.ibd
 t1.frm
 t1.par
 EXPLAIN PARTITIONS SELECT COUNT(*) <> 1 FROM t1 WHERE f_int1 = 3;
@@ -498,9 +448,6 @@ t1	CREATE TABLE `t1` (
 (PARTITION p0 ENGINE = InnoDB,
  PARTITION part1 ENGINE = InnoDB,
  PARTITION part7 ENGINE = InnoDB) */
-t1#P#p0.ibd
-t1#P#part1.ibd
-t1#P#part7.ibd
 t1.frm
 t1.par
 EXPLAIN PARTITIONS SELECT COUNT(*) <> 1 FROM t1 WHERE f_int1 = 3;
@@ -525,10 +472,6 @@ t1	CREATE TABLE `t1` (
  PARTITION part1 ENGINE = InnoDB,
  PARTITION part7 ENGINE = InnoDB,
  PARTITION part2 ENGINE = InnoDB) */
-t1#P#p0.ibd
-t1#P#part1.ibd
-t1#P#part2.ibd
-t1#P#part7.ibd
 t1.frm
 t1.par
 EXPLAIN PARTITIONS SELECT COUNT(*) <> 1 FROM t1 WHERE f_int1 = 3;
@@ -557,14 +500,6 @@ t1	CREATE TABLE `t1` (
  PARTITION p5 ENGINE = InnoDB,
  PARTITION p6 ENGINE = InnoDB,
  PARTITION p7 ENGINE = InnoDB) */
-t1#P#p0.ibd
-t1#P#p4.ibd
-t1#P#p5.ibd
-t1#P#p6.ibd
-t1#P#p7.ibd
-t1#P#part1.ibd
-t1#P#part2.ibd
-t1#P#part7.ibd
 t1.frm
 t1.par
 EXPLAIN PARTITIONS SELECT COUNT(*) <> 1 FROM t1 WHERE f_int1 = 3;
@@ -599,13 +534,6 @@ t1	CREATE TABLE `t1` (
  PARTITION p4 ENGINE = InnoDB,
  PARTITION p5 ENGINE = InnoDB,
  PARTITION p6 ENGINE = InnoDB) */
-t1#P#p0.ibd
-t1#P#p4.ibd
-t1#P#p5.ibd
-t1#P#p6.ibd
-t1#P#part1.ibd
-t1#P#part2.ibd
-t1#P#part7.ibd
 t1.frm
 t1.par
 EXPLAIN PARTITIONS SELECT COUNT(*) <> 1 FROM t1 WHERE f_int1 = 3;
@@ -631,12 +559,6 @@ t1	CREATE TABLE `t1` (
  PARTITION part2 ENGINE = InnoDB,
  PARTITION p4 ENGINE = InnoDB,
  PARTITION p5 ENGINE = InnoDB) */
-t1#P#p0.ibd
-t1#P#p4.ibd
-t1#P#p5.ibd
-t1#P#part1.ibd
-t1#P#part2.ibd
-t1#P#part7.ibd
 t1.frm
 t1.par
 EXPLAIN PARTITIONS SELECT COUNT(*) <> 1 FROM t1 WHERE f_int1 = 3;
@@ -661,11 +583,6 @@ t1	CREATE TABLE `t1` (
  PARTITION part7 ENGINE = InnoDB,
  PARTITION part2 ENGINE = InnoDB,
  PARTITION p4 ENGINE = InnoDB) */
-t1#P#p0.ibd
-t1#P#p4.ibd
-t1#P#part1.ibd
-t1#P#part2.ibd
-t1#P#part7.ibd
 t1.frm
 t1.par
 EXPLAIN PARTITIONS SELECT COUNT(*) <> 1 FROM t1 WHERE f_int1 = 3;
@@ -689,10 +606,6 @@ t1	CREATE TABLE `t1` (
  PARTITION part1 ENGINE = InnoDB,
  PARTITION part7 ENGINE = InnoDB,
  PARTITION part2 ENGINE = InnoDB) */
-t1#P#p0.ibd
-t1#P#part1.ibd
-t1#P#part2.ibd
-t1#P#part7.ibd
 t1.frm
 t1.par
 EXPLAIN PARTITIONS SELECT COUNT(*) <> 1 FROM t1 WHERE f_int1 = 3;
@@ -715,9 +628,6 @@ t1	CREATE TABLE `t1` (
 (PARTITION p0 ENGINE = InnoDB,
  PARTITION part1 ENGINE = InnoDB,
  PARTITION part7 ENGINE = InnoDB) */
-t1#P#p0.ibd
-t1#P#part1.ibd
-t1#P#part7.ibd
 t1.frm
 t1.par
 EXPLAIN PARTITIONS SELECT COUNT(*) <> 1 FROM t1 WHERE f_int1 = 3;
@@ -739,8 +649,6 @@ t1	CREATE TABLE `t1` (
 /*!50100 PARTITION BY KEY (f_int1)
 (PARTITION p0 ENGINE = InnoDB,
  PARTITION part1 ENGINE = InnoDB) */
-t1#P#p0.ibd
-t1#P#part1.ibd
 t1.frm
 t1.par
 EXPLAIN PARTITIONS SELECT COUNT(*) <> 1 FROM t1 WHERE f_int1 = 3;
@@ -761,7 +669,6 @@ t1	CREATE TABLE `t1` (
 ) ENGINE=InnoDB DEFAULT CHARSET=latin1
 /*!50100 PARTITION BY KEY (f_int1)
 (PARTITION p0 ENGINE = InnoDB) */
-t1#P#p0.ibd
 t1.frm
 t1.par
 EXPLAIN PARTITIONS SELECT COUNT(*) <> 1 FROM t1 WHERE f_int1 = 3;
@@ -785,7 +692,6 @@ t1	CREATE TABLE `t1` (
   `f_charbig` varchar(1000) DEFAULT NULL
 ) ENGINE=InnoDB DEFAULT CHARSET=latin1
 t1.frm
-t1.ibd
 EXPLAIN PARTITIONS SELECT COUNT(*) <> 1 FROM t1 WHERE f_int1 = 3;
 id	select_type	table	partitions	type	possible_keys	key	key_len	ref	rows	Extra
 1	SIMPLE	t1	NULL	ALL	NULL	NULL	NULL	NULL	20	Using where

=== modified file 'mysql-test/suite/parts/r/partition_basic_innodb.result'
--- a/mysql-test/suite/parts/r/partition_basic_innodb.result	2010-06-17 20:51:35 +0000
+++ b/mysql-test/suite/parts/r/partition_basic_innodb.result	2010-10-08 09:34:08 +0000
@@ -77,8 +77,6 @@ t1	CREATE TABLE `t1` (
 PARTITIONS 2 */
 
 unified filelist
-t1#P#p0.ibd
-t1#P#p1.ibd
 t1.frm
 t1.par
 
@@ -534,11 +532,6 @@ t1	CREATE TABLE `t1` (
 PARTITIONS 5 */
 
 unified filelist
-t1#P#p0.ibd
-t1#P#p1.ibd
-t1#P#p2.ibd
-t1#P#p3.ibd
-t1#P#p4.ibd
 t1.frm
 t1.par
 
@@ -1009,14 +1002,6 @@ t1	CREATE TABLE `t1` (
  PARTITION part3 VALUES IN (3) ENGINE = InnoDB) */
 
 unified filelist
-t1#P#part0.ibd
-t1#P#part1.ibd
-t1#P#part2.ibd
-t1#P#part3.ibd
-t1#P#part_1.ibd
-t1#P#part_2.ibd
-t1#P#part_3.ibd
-t1#P#part_N.ibd
 t1.frm
 t1.par
 
@@ -1483,12 +1468,6 @@ t1	CREATE TABLE `t1` (
  PARTITION partf VALUES LESS THAN (2147483646) ENGINE = InnoDB) */
 
 unified filelist
-t1#P#parta.ibd
-t1#P#partb.ibd
-t1#P#partc.ibd
-t1#P#partd.ibd
-t1#P#parte.ibd
-t1#P#partf.ibd
 t1.frm
 t1.par
 
@@ -1951,14 +1930,6 @@ SUBPARTITIONS 2
  PARTITION partd VALUES LESS THAN (2147483646) ENGINE = InnoDB) */
 
 unified filelist
-t1#P#parta#SP#partasp0.ibd
-t1#P#parta#SP#partasp1.ibd
-t1#P#partb#SP#partbsp0.ibd
-t1#P#partb#SP#partbsp1.ibd
-t1#P#partc#SP#partcsp0.ibd
-t1#P#partc#SP#partcsp1.ibd
-t1#P#partd#SP#partdsp0.ibd
-t1#P#partd#SP#partdsp1.ibd
 t1.frm
 t1.par
 
@@ -2434,14 +2405,6 @@ SUBPARTITION BY KEY (f_int1)
   SUBPARTITION subpart42 ENGINE = InnoDB)) */
 
 unified filelist
-t1#P#part1#SP#subpart11.ibd
-t1#P#part1#SP#subpart12.ibd
-t1#P#part2#SP#subpart21.ibd
-t1#P#part2#SP#subpart22.ibd
-t1#P#part3#SP#subpart31.ibd
-t1#P#part3#SP#subpart32.ibd
-t1#P#part4#SP#subpart41.ibd
-t1#P#part4#SP#subpart42.ibd
 t1.frm
 t1.par
 
@@ -2919,14 +2882,6 @@ SUBPARTITION BY HASH (f_int1 + 1)
   SUBPARTITION sp42 ENGINE = InnoDB)) */
 
 unified filelist
-t1#P#part1#SP#sp11.ibd
-t1#P#part1#SP#sp12.ibd
-t1#P#part2#SP#sp21.ibd
-t1#P#part2#SP#sp22.ibd
-t1#P#part3#SP#sp31.ibd
-t1#P#part3#SP#sp32.ibd
-t1#P#part4#SP#sp41.ibd
-t1#P#part4#SP#sp42.ibd
 t1.frm
 t1.par
 
@@ -3390,15 +3345,6 @@ SUBPARTITIONS 3
  PARTITION part3 VALUES IN (NULL) ENGINE = InnoDB) */
 
 unified filelist
-t1#P#part1#SP#part1sp0.ibd
-t1#P#part1#SP#part1sp1.ibd
-t1#P#part1#SP#part1sp2.ibd
-t1#P#part2#SP#part2sp0.ibd
-t1#P#part2#SP#part2sp1.ibd
-t1#P#part2#SP#part2sp2.ibd
-t1#P#part3#SP#part3sp0.ibd
-t1#P#part3#SP#part3sp1.ibd
-t1#P#part3#SP#part3sp2.ibd
 t1.frm
 t1.par
 
@@ -3856,8 +3802,6 @@ t1	CREATE TABLE `t1` (
 PARTITIONS 2 */
 
 unified filelist
-t1#P#p0.ibd
-t1#P#p1.ibd
 t1.frm
 t1.par
 
@@ -4313,11 +4257,6 @@ t1	CREATE TABLE `t1` (
 PARTITIONS 5 */
 
 unified filelist
-t1#P#p0.ibd
-t1#P#p1.ibd
-t1#P#p2.ibd
-t1#P#p3.ibd
-t1#P#p4.ibd
 t1.frm
 t1.par
 
@@ -4788,14 +4727,6 @@ t1	CREATE TABLE `t1` (
  PARTITION part3 VALUES IN (3) ENGINE = InnoDB) */
 
 unified filelist
-t1#P#part0.ibd
-t1#P#part1.ibd
-t1#P#part2.ibd
-t1#P#part3.ibd
-t1#P#part_1.ibd
-t1#P#part_2.ibd
-t1#P#part_3.ibd
-t1#P#part_N.ibd
 t1.frm
 t1.par
 
@@ -5262,12 +5193,6 @@ t1	CREATE TABLE `t1` (
  PARTITION partf VALUES LESS THAN (2147483646) ENGINE = InnoDB) */
 
 unified filelist
-t1#P#parta.ibd
-t1#P#partb.ibd
-t1#P#partc.ibd
-t1#P#partd.ibd
-t1#P#parte.ibd
-t1#P#partf.ibd
 t1.frm
 t1.par
 
@@ -5730,14 +5655,6 @@ SUBPARTITIONS 2
  PARTITION partd VALUES LESS THAN (2147483646) ENGINE = InnoDB) */
 
 unified filelist
-t1#P#parta#SP#partasp0.ibd
-t1#P#parta#SP#partasp1.ibd
-t1#P#partb#SP#partbsp0.ibd
-t1#P#partb#SP#partbsp1.ibd
-t1#P#partc#SP#partcsp0.ibd
-t1#P#partc#SP#partcsp1.ibd
-t1#P#partd#SP#partdsp0.ibd
-t1#P#partd#SP#partdsp1.ibd
 t1.frm
 t1.par
 
@@ -6211,14 +6128,6 @@ SUBPARTITION BY KEY (f_int2)
   SUBPARTITION subpart42 ENGINE = InnoDB)) */
 
 unified filelist
-t1#P#part1#SP#subpart11.ibd
-t1#P#part1#SP#subpart12.ibd
-t1#P#part2#SP#subpart21.ibd
-t1#P#part2#SP#subpart22.ibd
-t1#P#part3#SP#subpart31.ibd
-t1#P#part3#SP#subpart32.ibd
-t1#P#part4#SP#subpart41.ibd
-t1#P#part4#SP#subpart42.ibd
 t1.frm
 t1.par
 
@@ -6692,14 +6601,6 @@ SUBPARTITION BY HASH (f_int2 + 1)
   SUBPARTITION sp42 ENGINE = InnoDB)) */
 
 unified filelist
-t1#P#part1#SP#sp11.ibd
-t1#P#part1#SP#sp12.ibd
-t1#P#part2#SP#sp21.ibd
-t1#P#part2#SP#sp22.ibd
-t1#P#part3#SP#sp31.ibd
-t1#P#part3#SP#sp32.ibd
-t1#P#part4#SP#sp41.ibd
-t1#P#part4#SP#sp42.ibd
 t1.frm
 t1.par
 
@@ -7163,15 +7064,6 @@ SUBPARTITIONS 3
  PARTITION part3 VALUES IN (NULL) ENGINE = InnoDB) */
 
 unified filelist
-t1#P#part1#SP#part1sp0.ibd
-t1#P#part1#SP#part1sp1.ibd
-t1#P#part1#SP#part1sp2.ibd
-t1#P#part2#SP#part2sp0.ibd
-t1#P#part2#SP#part2sp1.ibd
-t1#P#part2#SP#part2sp2.ibd
-t1#P#part3#SP#part3sp0.ibd
-t1#P#part3#SP#part3sp1.ibd
-t1#P#part3#SP#part3sp2.ibd
 t1.frm
 t1.par
 
@@ -7635,8 +7527,6 @@ t1	CREATE TABLE `t1` (
 PARTITIONS 2 */
 
 unified filelist
-t1#P#p0.ibd
-t1#P#p1.ibd
 t1.frm
 t1.par
 
@@ -8129,11 +8019,6 @@ t1	CREATE TABLE `t1` (
 PARTITIONS 5 */
 
 unified filelist
-t1#P#p0.ibd
-t1#P#p1.ibd
-t1#P#p2.ibd
-t1#P#p3.ibd
-t1#P#p4.ibd
 t1.frm
 t1.par
 
@@ -8641,14 +8526,6 @@ t1	CREATE TABLE `t1` (
  PARTITION part3 VALUES IN (3) ENGINE = InnoDB) */
 
 unified filelist
-t1#P#part0.ibd
-t1#P#part1.ibd
-t1#P#part2.ibd
-t1#P#part3.ibd
-t1#P#part_1.ibd
-t1#P#part_2.ibd
-t1#P#part_3.ibd
-t1#P#part_N.ibd
 t1.frm
 t1.par
 
@@ -9152,12 +9029,6 @@ t1	CREATE TABLE `t1` (
  PARTITION partf VALUES LESS THAN (2147483646) ENGINE = InnoDB) */
 
 unified filelist
-t1#P#parta.ibd
-t1#P#partb.ibd
-t1#P#partc.ibd
-t1#P#partd.ibd
-t1#P#parte.ibd
-t1#P#partf.ibd
 t1.frm
 t1.par
 
@@ -9657,14 +9528,6 @@ SUBPARTITIONS 2
  PARTITION partd VALUES LESS THAN (2147483646) ENGINE = InnoDB) */
 
 unified filelist
-t1#P#parta#SP#partasp0.ibd
-t1#P#parta#SP#partasp1.ibd
-t1#P#partb#SP#partbsp0.ibd
-t1#P#partb#SP#partbsp1.ibd
-t1#P#partc#SP#partcsp0.ibd
-t1#P#partc#SP#partcsp1.ibd
-t1#P#partd#SP#partdsp0.ibd
-t1#P#partd#SP#partdsp1.ibd
 t1.frm
 t1.par
 
@@ -10177,14 +10040,6 @@ SUBPARTITION BY KEY (f_int1)
   SUBPARTITION subpart42 ENGINE = InnoDB)) */
 
 unified filelist
-t1#P#part1#SP#subpart11.ibd
-t1#P#part1#SP#subpart12.ibd
-t1#P#part2#SP#subpart21.ibd
-t1#P#part2#SP#subpart22.ibd
-t1#P#part3#SP#subpart31.ibd
-t1#P#part3#SP#subpart32.ibd
-t1#P#part4#SP#subpart41.ibd
-t1#P#part4#SP#subpart42.ibd
 t1.frm
 t1.par
 
@@ -10699,14 +10554,6 @@ SUBPARTITION BY HASH (f_int1 + 1)
   SUBPARTITION sp42 ENGINE = InnoDB)) */
 
 unified filelist
-t1#P#part1#SP#sp11.ibd
-t1#P#part1#SP#sp12.ibd
-t1#P#part2#SP#sp21.ibd
-t1#P#part2#SP#sp22.ibd
-t1#P#part3#SP#sp31.ibd
-t1#P#part3#SP#sp32.ibd
-t1#P#part4#SP#sp41.ibd
-t1#P#part4#SP#sp42.ibd
 t1.frm
 t1.par
 
@@ -11207,15 +11054,6 @@ SUBPARTITIONS 3
  PARTITION part3 VALUES IN (NULL) ENGINE = InnoDB) */
 
 unified filelist
-t1#P#part1#SP#part1sp0.ibd
-t1#P#part1#SP#part1sp1.ibd
-t1#P#part1#SP#part1sp2.ibd
-t1#P#part2#SP#part2sp0.ibd
-t1#P#part2#SP#part2sp1.ibd
-t1#P#part2#SP#part2sp2.ibd
-t1#P#part3#SP#part3sp0.ibd
-t1#P#part3#SP#part3sp1.ibd
-t1#P#part3#SP#part3sp2.ibd
 t1.frm
 t1.par
 
@@ -11709,8 +11547,6 @@ t1	CREATE TABLE `t1` (
 PARTITIONS 2 */
 
 unified filelist
-t1#P#p0.ibd
-t1#P#p1.ibd
 t1.frm
 t1.par
 
@@ -12203,11 +12039,6 @@ t1	CREATE TABLE `t1` (
 PARTITIONS 5 */
 
 unified filelist
-t1#P#p0.ibd
-t1#P#p1.ibd
-t1#P#p2.ibd
-t1#P#p3.ibd
-t1#P#p4.ibd
 t1.frm
 t1.par
 
@@ -12715,14 +12546,6 @@ t1	CREATE TABLE `t1` (
  PARTITION part3 VALUES IN (3) ENGINE = InnoDB) */
 
 unified filelist
-t1#P#part0.ibd
-t1#P#part1.ibd
-t1#P#part2.ibd
-t1#P#part3.ibd
-t1#P#part_1.ibd
-t1#P#part_2.ibd
-t1#P#part_3.ibd
-t1#P#part_N.ibd
 t1.frm
 t1.par
 
@@ -13226,12 +13049,6 @@ t1	CREATE TABLE `t1` (
  PARTITION partf VALUES LESS THAN (2147483646) ENGINE = InnoDB) */
 
 unified filelist
-t1#P#parta.ibd
-t1#P#partb.ibd
-t1#P#partc.ibd
-t1#P#partd.ibd
-t1#P#parte.ibd
-t1#P#partf.ibd
 t1.frm
 t1.par
 
@@ -13731,14 +13548,6 @@ SUBPARTITIONS 2
  PARTITION partd VALUES LESS THAN (2147483646) ENGINE = InnoDB) */
 
 unified filelist
-t1#P#parta#SP#partasp0.ibd
-t1#P#parta#SP#partasp1.ibd
-t1#P#partb#SP#partbsp0.ibd
-t1#P#partb#SP#partbsp1.ibd
-t1#P#partc#SP#partcsp0.ibd
-t1#P#partc#SP#partcsp1.ibd
-t1#P#partd#SP#partdsp0.ibd
-t1#P#partd#SP#partdsp1.ibd
 t1.frm
 t1.par
 
@@ -14251,14 +14060,6 @@ SUBPARTITION BY KEY (f_int1)
   SUBPARTITION subpart42 ENGINE = InnoDB)) */
 
 unified filelist
-t1#P#part1#SP#subpart11.ibd
-t1#P#part1#SP#subpart12.ibd
-t1#P#part2#SP#subpart21.ibd
-t1#P#part2#SP#subpart22.ibd
-t1#P#part3#SP#subpart31.ibd
-t1#P#part3#SP#subpart32.ibd
-t1#P#part4#SP#subpart41.ibd
-t1#P#part4#SP#subpart42.ibd
 t1.frm
 t1.par
 
@@ -14773,14 +14574,6 @@ SUBPARTITION BY HASH (f_int1 + 1)
   SUBPARTITION sp42 ENGINE = InnoDB)) */
 
 unified filelist
-t1#P#part1#SP#sp11.ibd
-t1#P#part1#SP#sp12.ibd
-t1#P#part2#SP#sp21.ibd
-t1#P#part2#SP#sp22.ibd
-t1#P#part3#SP#sp31.ibd
-t1#P#part3#SP#sp32.ibd
-t1#P#part4#SP#sp41.ibd
-t1#P#part4#SP#sp42.ibd
 t1.frm
 t1.par
 
@@ -15281,15 +15074,6 @@ SUBPARTITIONS 3
  PARTITION part3 VALUES IN (NULL) ENGINE = InnoDB) */
 
 unified filelist
-t1#P#part1#SP#part1sp0.ibd
-t1#P#part1#SP#part1sp1.ibd
-t1#P#part1#SP#part1sp2.ibd
-t1#P#part2#SP#part2sp0.ibd
-t1#P#part2#SP#part2sp1.ibd
-t1#P#part2#SP#part2sp2.ibd
-t1#P#part3#SP#part3sp0.ibd
-t1#P#part3#SP#part3sp1.ibd
-t1#P#part3#SP#part3sp2.ibd
 t1.frm
 t1.par
 
@@ -15783,8 +15567,6 @@ t1	CREATE TABLE `t1` (
 PARTITIONS 2 */
 
 unified filelist
-t1#P#p0.ibd
-t1#P#p1.ibd
 t1.frm
 t1.par
 
@@ -16293,11 +16075,6 @@ t1	CREATE TABLE `t1` (
 PARTITIONS 5 */
 
 unified filelist
-t1#P#p0.ibd
-t1#P#p1.ibd
-t1#P#p2.ibd
-t1#P#p3.ibd
-t1#P#p4.ibd
 t1.frm
 t1.par
 
@@ -16821,14 +16598,6 @@ t1	CREATE TABLE `t1` (
  PARTITION part3 VALUES IN (3) ENGINE = InnoDB) */
 
 unified filelist
-t1#P#part0.ibd
-t1#P#part1.ibd
-t1#P#part2.ibd
-t1#P#part3.ibd
-t1#P#part_1.ibd
-t1#P#part_2.ibd
-t1#P#part_3.ibd
-t1#P#part_N.ibd
 t1.frm
 t1.par
 
@@ -17348,12 +17117,6 @@ t1	CREATE TABLE `t1` (
  PARTITION partf VALUES LESS THAN (2147483646) ENGINE = InnoDB) */
 
 unified filelist
-t1#P#parta.ibd
-t1#P#partb.ibd
-t1#P#partc.ibd
-t1#P#partd.ibd
-t1#P#parte.ibd
-t1#P#partf.ibd
 t1.frm
 t1.par
 
@@ -17869,14 +17632,6 @@ SUBPARTITIONS 2
  PARTITION partd VALUES LESS THAN (2147483646) ENGINE = InnoDB) */
 
 unified filelist
-t1#P#parta#SP#partasp0.ibd
-t1#P#parta#SP#partasp1.ibd
-t1#P#partb#SP#partbsp0.ibd
-t1#P#partb#SP#partbsp1.ibd
-t1#P#partc#SP#partcsp0.ibd
-t1#P#partc#SP#partcsp1.ibd
-t1#P#partd#SP#partdsp0.ibd
-t1#P#partd#SP#partdsp1.ibd
 t1.frm
 t1.par
 
@@ -18405,14 +18160,6 @@ SUBPARTITION BY KEY (f_int1)
   SUBPARTITION subpart42 ENGINE = InnoDB)) */
 
 unified filelist
-t1#P#part1#SP#subpart11.ibd
-t1#P#part1#SP#subpart12.ibd
-t1#P#part2#SP#subpart21.ibd
-t1#P#part2#SP#subpart22.ibd
-t1#P#part3#SP#subpart31.ibd
-t1#P#part3#SP#subpart32.ibd
-t1#P#part4#SP#subpart41.ibd
-t1#P#part4#SP#subpart42.ibd
 t1.frm
 t1.par
 
@@ -18943,14 +18690,6 @@ SUBPARTITION BY HASH (f_int1 + 1)
   SUBPARTITION sp42 ENGINE = InnoDB)) */
 
 unified filelist
-t1#P#part1#SP#sp11.ibd
-t1#P#part1#SP#sp12.ibd
-t1#P#part2#SP#sp21.ibd
-t1#P#part2#SP#sp22.ibd
-t1#P#part3#SP#sp31.ibd
-t1#P#part3#SP#sp32.ibd
-t1#P#part4#SP#sp41.ibd
-t1#P#part4#SP#sp42.ibd
 t1.frm
 t1.par
 
@@ -19467,15 +19206,6 @@ SUBPARTITIONS 3
  PARTITION part3 VALUES IN (NULL) ENGINE = InnoDB) */
 
 unified filelist
-t1#P#part1#SP#part1sp0.ibd
-t1#P#part1#SP#part1sp1.ibd
-t1#P#part1#SP#part1sp2.ibd
-t1#P#part2#SP#part2sp0.ibd
-t1#P#part2#SP#part2sp1.ibd
-t1#P#part2#SP#part2sp2.ibd
-t1#P#part3#SP#part3sp0.ibd
-t1#P#part3#SP#part3sp1.ibd
-t1#P#part3#SP#part3sp2.ibd
 t1.frm
 t1.par
 
@@ -19990,8 +19720,6 @@ t1	CREATE TABLE `t1` (
 PARTITIONS 2 */
 
 unified filelist
-t1#P#p0.ibd
-t1#P#p1.ibd
 t1.frm
 t1.par
 
@@ -20484,11 +20212,6 @@ t1	CREATE TABLE `t1` (
 PARTITIONS 5 */
 
 unified filelist
-t1#P#p0.ibd
-t1#P#p1.ibd
-t1#P#p2.ibd
-t1#P#p3.ibd
-t1#P#p4.ibd
 t1.frm
 t1.par
 
@@ -20996,14 +20719,6 @@ t1	CREATE TABLE `t1` (
  PARTITION part3 VALUES IN (3) ENGINE = InnoDB) */
 
 unified filelist
-t1#P#part0.ibd
-t1#P#part1.ibd
-t1#P#part2.ibd
-t1#P#part3.ibd
-t1#P#part_1.ibd
-t1#P#part_2.ibd
-t1#P#part_3.ibd
-t1#P#part_N.ibd
 t1.frm
 t1.par
 
@@ -21507,12 +21222,6 @@ t1	CREATE TABLE `t1` (
  PARTITION partf VALUES LESS THAN (2147483646) ENGINE = InnoDB) */
 
 unified filelist
-t1#P#parta.ibd
-t1#P#partb.ibd
-t1#P#partc.ibd
-t1#P#partd.ibd
-t1#P#parte.ibd
-t1#P#partf.ibd
 t1.frm
 t1.par
 
@@ -22012,14 +21721,6 @@ SUBPARTITIONS 2
  PARTITION partd VALUES LESS THAN (2147483646) ENGINE = InnoDB) */
 
 unified filelist
-t1#P#parta#SP#partasp0.ibd
-t1#P#parta#SP#partasp1.ibd
-t1#P#partb#SP#partbsp0.ibd
-t1#P#partb#SP#partbsp1.ibd
-t1#P#partc#SP#partcsp0.ibd
-t1#P#partc#SP#partcsp1.ibd
-t1#P#partd#SP#partdsp0.ibd
-t1#P#partd#SP#partdsp1.ibd
 t1.frm
 t1.par
 
@@ -22530,14 +22231,6 @@ SUBPARTITION BY KEY (f_int2)
   SUBPARTITION subpart42 ENGINE = InnoDB)) */
 
 unified filelist
-t1#P#part1#SP#subpart11.ibd
-t1#P#part1#SP#subpart12.ibd
-t1#P#part2#SP#subpart21.ibd
-t1#P#part2#SP#subpart22.ibd
-t1#P#part3#SP#subpart31.ibd
-t1#P#part3#SP#subpart32.ibd
-t1#P#part4#SP#subpart41.ibd
-t1#P#part4#SP#subpart42.ibd
 t1.frm
 t1.par
 
@@ -23048,14 +22741,6 @@ SUBPARTITION BY HASH (f_int2 + 1)
   SUBPARTITION sp42 ENGINE = InnoDB)) */
 
 unified filelist
-t1#P#part1#SP#sp11.ibd
-t1#P#part1#SP#sp12.ibd
-t1#P#part2#SP#sp21.ibd
-t1#P#part2#SP#sp22.ibd
-t1#P#part3#SP#sp31.ibd
-t1#P#part3#SP#sp32.ibd
-t1#P#part4#SP#sp41.ibd
-t1#P#part4#SP#sp42.ibd
 t1.frm
 t1.par
 
@@ -23556,15 +23241,6 @@ SUBPARTITIONS 3
  PARTITION part3 VALUES IN (NULL) ENGINE = InnoDB) */
 
 unified filelist
-t1#P#part1#SP#part1sp0.ibd
-t1#P#part1#SP#part1sp1.ibd
-t1#P#part1#SP#part1sp2.ibd
-t1#P#part2#SP#part2sp0.ibd
-t1#P#part2#SP#part2sp1.ibd
-t1#P#part2#SP#part2sp2.ibd
-t1#P#part3#SP#part3sp0.ibd
-t1#P#part3#SP#part3sp1.ibd
-t1#P#part3#SP#part3sp2.ibd
 t1.frm
 t1.par
 
@@ -24058,8 +23734,6 @@ t1	CREATE TABLE `t1` (
 PARTITIONS 2 */
 
 unified filelist
-t1#P#p0.ibd
-t1#P#p1.ibd
 t1.frm
 t1.par
 
@@ -24552,11 +24226,6 @@ t1	CREATE TABLE `t1` (
 PARTITIONS 5 */
 
 unified filelist
-t1#P#p0.ibd
-t1#P#p1.ibd
-t1#P#p2.ibd
-t1#P#p3.ibd
-t1#P#p4.ibd
 t1.frm
 t1.par
 
@@ -25064,14 +24733,6 @@ t1	CREATE TABLE `t1` (
  PARTITION part3 VALUES IN (3) ENGINE = InnoDB) */
 
 unified filelist
-t1#P#part0.ibd
-t1#P#part1.ibd
-t1#P#part2.ibd
-t1#P#part3.ibd
-t1#P#part_1.ibd
-t1#P#part_2.ibd
-t1#P#part_3.ibd
-t1#P#part_N.ibd
 t1.frm
 t1.par
 
@@ -25575,12 +25236,6 @@ t1	CREATE TABLE `t1` (
  PARTITION partf VALUES LESS THAN (2147483646) ENGINE = InnoDB) */
 
 unified filelist
-t1#P#parta.ibd
-t1#P#partb.ibd
-t1#P#partc.ibd
-t1#P#partd.ibd
-t1#P#parte.ibd
-t1#P#partf.ibd
 t1.frm
 t1.par
 
@@ -26080,14 +25735,6 @@ SUBPARTITIONS 2
  PARTITION partd VALUES LESS THAN (2147483646) ENGINE = InnoDB) */
 
 unified filelist
-t1#P#parta#SP#partasp0.ibd
-t1#P#parta#SP#partasp1.ibd
-t1#P#partb#SP#partbsp0.ibd
-t1#P#partb#SP#partbsp1.ibd
-t1#P#partc#SP#partcsp0.ibd
-t1#P#partc#SP#partcsp1.ibd
-t1#P#partd#SP#partdsp0.ibd
-t1#P#partd#SP#partdsp1.ibd
 t1.frm
 t1.par
 
@@ -26598,14 +26245,6 @@ SUBPARTITION BY KEY (f_int2)
   SUBPARTITION subpart42 ENGINE = InnoDB)) */
 
 unified filelist
-t1#P#part1#SP#subpart11.ibd
-t1#P#part1#SP#subpart12.ibd
-t1#P#part2#SP#subpart21.ibd
-t1#P#part2#SP#subpart22.ibd
-t1#P#part3#SP#subpart31.ibd
-t1#P#part3#SP#subpart32.ibd
-t1#P#part4#SP#subpart41.ibd
-t1#P#part4#SP#subpart42.ibd
 t1.frm
 t1.par
 
@@ -27116,14 +26755,6 @@ SUBPARTITION BY HASH (f_int2 + 1)
   SUBPARTITION sp42 ENGINE = InnoDB)) */
 
 unified filelist
-t1#P#part1#SP#sp11.ibd
-t1#P#part1#SP#sp12.ibd
-t1#P#part2#SP#sp21.ibd
-t1#P#part2#SP#sp22.ibd
-t1#P#part3#SP#sp31.ibd
-t1#P#part3#SP#sp32.ibd
-t1#P#part4#SP#sp41.ibd
-t1#P#part4#SP#sp42.ibd
 t1.frm
 t1.par
 
@@ -27624,15 +27255,6 @@ SUBPARTITIONS 3
  PARTITION part3 VALUES IN (NULL) ENGINE = InnoDB) */
 
 unified filelist
-t1#P#part1#SP#part1sp0.ibd
-t1#P#part1#SP#part1sp1.ibd
-t1#P#part1#SP#part1sp2.ibd
-t1#P#part2#SP#part2sp0.ibd
-t1#P#part2#SP#part2sp1.ibd
-t1#P#part2#SP#part2sp2.ibd
-t1#P#part3#SP#part3sp0.ibd
-t1#P#part3#SP#part3sp1.ibd
-t1#P#part3#SP#part3sp2.ibd
 t1.frm
 t1.par
 
@@ -28126,8 +27748,6 @@ t1	CREATE TABLE `t1` (
 PARTITIONS 2 */
 
 unified filelist
-t1#P#p0.ibd
-t1#P#p1.ibd
 t1.frm
 t1.par
 
@@ -28636,11 +28256,6 @@ t1	CREATE TABLE `t1` (
 PARTITIONS 5 */
 
 unified filelist
-t1#P#p0.ibd
-t1#P#p1.ibd
-t1#P#p2.ibd
-t1#P#p3.ibd
-t1#P#p4.ibd
 t1.frm
 t1.par
 
@@ -29164,14 +28779,6 @@ t1	CREATE TABLE `t1` (
  PARTITION part3 VALUES IN (3) ENGINE = InnoDB) */
 
 unified filelist
-t1#P#part0.ibd
-t1#P#part1.ibd
-t1#P#part2.ibd
-t1#P#part3.ibd
-t1#P#part_1.ibd
-t1#P#part_2.ibd
-t1#P#part_3.ibd
-t1#P#part_N.ibd
 t1.frm
 t1.par
 
@@ -29691,12 +29298,6 @@ t1	CREATE TABLE `t1` (
  PARTITION partf VALUES LESS THAN (2147483646) ENGINE = InnoDB) */
 
 unified filelist
-t1#P#parta.ibd
-t1#P#partb.ibd
-t1#P#partc.ibd
-t1#P#partd.ibd
-t1#P#parte.ibd
-t1#P#partf.ibd
 t1.frm
 t1.par
 
@@ -30212,14 +29813,6 @@ SUBPARTITIONS 2
  PARTITION partd VALUES LESS THAN (2147483646) ENGINE = InnoDB) */
 
 unified filelist
-t1#P#parta#SP#partasp0.ibd
-t1#P#parta#SP#partasp1.ibd
-t1#P#partb#SP#partbsp0.ibd
-t1#P#partb#SP#partbsp1.ibd
-t1#P#partc#SP#partcsp0.ibd
-t1#P#partc#SP#partcsp1.ibd
-t1#P#partd#SP#partdsp0.ibd
-t1#P#partd#SP#partdsp1.ibd
 t1.frm
 t1.par
 
@@ -30746,14 +30339,6 @@ SUBPARTITION BY KEY (f_int2)
   SUBPARTITION subpart42 ENGINE = InnoDB)) */
 
 unified filelist
-t1#P#part1#SP#subpart11.ibd
-t1#P#part1#SP#subpart12.ibd
-t1#P#part2#SP#subpart21.ibd
-t1#P#part2#SP#subpart22.ibd
-t1#P#part3#SP#subpart31.ibd
-t1#P#part3#SP#subpart32.ibd
-t1#P#part4#SP#subpart41.ibd
-t1#P#part4#SP#subpart42.ibd
 t1.frm
 t1.par
 
@@ -31280,14 +30865,6 @@ SUBPARTITION BY HASH (f_int2 + 1)
   SUBPARTITION sp42 ENGINE = InnoDB)) */
 
 unified filelist
-t1#P#part1#SP#sp11.ibd
-t1#P#part1#SP#sp12.ibd
-t1#P#part2#SP#sp21.ibd
-t1#P#part2#SP#sp22.ibd
-t1#P#part3#SP#sp31.ibd
-t1#P#part3#SP#sp32.ibd
-t1#P#part4#SP#sp41.ibd
-t1#P#part4#SP#sp42.ibd
 t1.frm
 t1.par
 
@@ -31804,15 +31381,6 @@ SUBPARTITIONS 3
  PARTITION part3 VALUES IN (NULL) ENGINE = InnoDB) */
 
 unified filelist
-t1#P#part1#SP#part1sp0.ibd
-t1#P#part1#SP#part1sp1.ibd
-t1#P#part1#SP#part1sp2.ibd
-t1#P#part2#SP#part2sp0.ibd
-t1#P#part2#SP#part2sp1.ibd
-t1#P#part2#SP#part2sp2.ibd
-t1#P#part3#SP#part3sp0.ibd
-t1#P#part3#SP#part3sp1.ibd
-t1#P#part3#SP#part3sp2.ibd
 t1.frm
 t1.par
 

=== modified file 'mysql-test/suite/rpl/r/rpl_mixed_binlog_max_cache_size.result'
--- a/mysql-test/suite/rpl/r/rpl_mixed_binlog_max_cache_size.result	2010-06-30 15:25:13 +0000
+++ b/mysql-test/suite/rpl/r/rpl_mixed_binlog_max_cache_size.result	2010-10-11 02:49:00 +0000
@@ -5,6 +5,8 @@ reset slave;
 drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
 start slave;
 call mtr.add_suppression("Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT");
+SET GLOBAL max_binlog_cache_size = 4096;
+SET GLOBAL binlog_cache_size = 4096;
 CREATE TABLE t1(a INT PRIMARY KEY, data VARCHAR(30000)) ENGINE=Innodb;
 CREATE TABLE t2(a INT PRIMARY KEY, data VARCHAR(30000)) ENGINE=MyIsam;
 CREATE TABLE t3(a INT PRIMARY KEY, data VARCHAR(30000)) ENGINE=Innodb;
@@ -15,13 +17,14 @@ CREATE TABLE t3(a INT PRIMARY KEY, data
 Got one of the listed errors
 *** Single statement on non-transactional table ***
 Got one of the listed errors
-SET GLOBAL SQL_SLAVE_SKIP_COUNTER = 1;
-START SLAVE SQL_THREAD;
+--source include/wait_for_slave_sql_error_and_skip.inc
+SET GLOBAL SQL_SLAVE_SKIP_COUNTER=1;
+include/start_slave.inc
 *** Single statement on both transactional and non-transactional tables. ***
 Got one of the listed errors
-SET GLOBAL SQL_SLAVE_SKIP_COUNTER = 1;
-START SLAVE SQL_THREAD;
-source include/diff_master_slave.inc;
+--source include/wait_for_slave_sql_error_and_skip.inc
+SET GLOBAL SQL_SLAVE_SKIP_COUNTER= 1;
+include/start_slave.inc
 ########################################################################################
 #                             2 - BEGIN - IMPLICIT COMMIT by DDL
 ########################################################################################
@@ -119,6 +122,35 @@ BEGIN;
 Got one of the listed errors
 COMMIT;
 source include/diff_master_slave.inc;
+########################################################################
+#      8 - Bug#55375(Regression Bug) Transaction bigger than
+#          max_binlog_cache_size crashes slave
+########################################################################
+# [ On Slave ]
+SET GLOBAL max_binlog_cache_size = 4096;
+SET GLOBAL binlog_cache_size = 4096;
+include/stop_slave.inc
+include/start_slave.inc
+CALL mtr.add_suppression("Multi-statement transaction required more than 'max_binlog_cache_size' bytes of storage.*");
+CALL mtr.add_suppression("Writing one row to the row-based binary log failed.*");
+TRUNCATE t1;
+SET GLOBAL max_binlog_cache_size= ORIGINAL_VALUE;
+SET GLOBAL binlog_cache_size= ORIGINAL_VALUE;
+BEGIN;
+Repeat statement 'INSERT INTO t1 VALUES($n, repeat("a", 32))' 128 times
+COMMIT;
+SELECT count(*) FROM t1;
+count(*)
+0
+show binlog events in 'slave-bin.000001' from <binlog_start>;
+Log_name	Pos	Event_type	Server_id	End_log_pos	Info
+SET GLOBAL max_binlog_cache_size= ORIGINAL_VALUE;
+SET GLOBAL binlog_cache_size= ORIGINAL_VALUE;
+include/stop_slave.inc
+include/start_slave.inc
+SELECT count(*) FROM t1;
+count(*)
+128
 ########################################################################################
 #                                        CLEAN
 ########################################################################################

=== modified file 'mysql-test/suite/rpl/r/rpl_row_binlog_max_cache_size.result'
--- a/mysql-test/suite/rpl/r/rpl_row_binlog_max_cache_size.result	2010-04-28 12:47:49 +0000
+++ b/mysql-test/suite/rpl/r/rpl_row_binlog_max_cache_size.result	2010-10-09 10:18:16 +0000
@@ -5,6 +5,8 @@ reset slave;
 drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
 start slave;
 call mtr.add_suppression("Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT");
+SET GLOBAL max_binlog_cache_size = 4096;
+SET GLOBAL binlog_cache_size = 4096;
 CREATE TABLE t1(a INT PRIMARY KEY, data VARCHAR(30000)) ENGINE=Innodb;
 CREATE TABLE t2(a INT PRIMARY KEY, data VARCHAR(30000)) ENGINE=MyIsam;
 CREATE TABLE t3(a INT PRIMARY KEY, data VARCHAR(30000)) ENGINE=Innodb;
@@ -15,13 +17,14 @@ CREATE TABLE t3(a INT PRIMARY KEY, data
 Got one of the listed errors
 *** Single statement on non-transactional table ***
 Got one of the listed errors
-SET GLOBAL SQL_SLAVE_SKIP_COUNTER = 1;
-START SLAVE SQL_THREAD;
+--source include/wait_for_slave_sql_error_and_skip.inc
+SET GLOBAL SQL_SLAVE_SKIP_COUNTER=1;
+include/start_slave.inc
 *** Single statement on both transactional and non-transactional tables. ***
 Got one of the listed errors
-SET GLOBAL SQL_SLAVE_SKIP_COUNTER = 2;
-START SLAVE SQL_THREAD;
-source include/diff_master_slave.inc;
+--source include/wait_for_slave_sql_error_and_skip.inc
+SET GLOBAL SQL_SLAVE_SKIP_COUNTER= 2;
+include/start_slave.inc
 ########################################################################################
 #                             2 - BEGIN - IMPLICIT COMMIT by DDL
 ########################################################################################
@@ -39,8 +42,6 @@ Got one of the listed errors
 BEGIN;
 Got one of the listed errors
 Got one of the listed errors
-SET GLOBAL SQL_SLAVE_SKIP_COUNTER = 1;
-START SLAVE SQL_THREAD;
 source include/diff_master_slave.inc;
 ########################################################################################
 #                                     3 - BEGIN - COMMIT
@@ -122,6 +123,35 @@ BEGIN;
 Got one of the listed errors
 COMMIT;
 source include/diff_master_slave.inc;
+########################################################################
+#      8 - Bug#55375(Regression Bug) Transaction bigger than
+#          max_binlog_cache_size crashes slave
+########################################################################
+# [ On Slave ]
+SET GLOBAL max_binlog_cache_size = 4096;
+SET GLOBAL binlog_cache_size = 4096;
+include/stop_slave.inc
+include/start_slave.inc
+CALL mtr.add_suppression("Multi-statement transaction required more than 'max_binlog_cache_size' bytes of storage.*");
+CALL mtr.add_suppression("Writing one row to the row-based binary log failed.*");
+TRUNCATE t1;
+SET GLOBAL max_binlog_cache_size= ORIGINAL_VALUE;
+SET GLOBAL binlog_cache_size= ORIGINAL_VALUE;
+BEGIN;
+Repeat statement 'INSERT INTO t1 VALUES($n, repeat("a", 32))' 128 times
+COMMIT;
+SELECT count(*) FROM t1;
+count(*)
+0
+show binlog events in 'slave-bin.000001' from <binlog_start>;
+Log_name	Pos	Event_type	Server_id	End_log_pos	Info
+SET GLOBAL max_binlog_cache_size= ORIGINAL_VALUE;
+SET GLOBAL binlog_cache_size= ORIGINAL_VALUE;
+include/stop_slave.inc
+include/start_slave.inc
+SELECT count(*) FROM t1;
+count(*)
+128
 ########################################################################################
 #                                        CLEAN
 ########################################################################################

=== modified file 'mysql-test/suite/rpl/r/rpl_stm_binlog_max_cache_size.result'
--- a/mysql-test/suite/rpl/r/rpl_stm_binlog_max_cache_size.result	2010-06-30 15:25:13 +0000
+++ b/mysql-test/suite/rpl/r/rpl_stm_binlog_max_cache_size.result	2010-10-09 10:18:16 +0000
@@ -5,6 +5,8 @@ reset slave;
 drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
 start slave;
 call mtr.add_suppression("Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT");
+SET GLOBAL max_binlog_cache_size = 4096;
+SET GLOBAL binlog_cache_size = 4096;
 CREATE TABLE t1(a INT PRIMARY KEY, data VARCHAR(30000)) ENGINE=Innodb;
 CREATE TABLE t2(a INT PRIMARY KEY, data VARCHAR(30000)) ENGINE=MyIsam;
 CREATE TABLE t3(a INT PRIMARY KEY, data VARCHAR(30000)) ENGINE=Innodb;
@@ -15,13 +17,14 @@ CREATE TABLE t3(a INT PRIMARY KEY, data
 Got one of the listed errors
 *** Single statement on non-transactional table ***
 Got one of the listed errors
-SET GLOBAL SQL_SLAVE_SKIP_COUNTER = 1;
-START SLAVE SQL_THREAD;
+--source include/wait_for_slave_sql_error_and_skip.inc
+SET GLOBAL SQL_SLAVE_SKIP_COUNTER=1;
+include/start_slave.inc
 *** Single statement on both transactional and non-transactional tables. ***
 Got one of the listed errors
-SET GLOBAL SQL_SLAVE_SKIP_COUNTER = 1;
-START SLAVE SQL_THREAD;
-source include/diff_master_slave.inc;
+--source include/wait_for_slave_sql_error_and_skip.inc
+SET GLOBAL SQL_SLAVE_SKIP_COUNTER= 1;
+include/start_slave.inc
 ########################################################################################
 #                             2 - BEGIN - IMPLICIT COMMIT by DDL
 ########################################################################################
@@ -119,6 +122,35 @@ BEGIN;
 Got one of the listed errors
 COMMIT;
 source include/diff_master_slave.inc;
+########################################################################
+#      8 - Bug#55375(Regression Bug) Transaction bigger than
+#          max_binlog_cache_size crashes slave
+########################################################################
+# [ On Slave ]
+SET GLOBAL max_binlog_cache_size = 4096;
+SET GLOBAL binlog_cache_size = 4096;
+include/stop_slave.inc
+include/start_slave.inc
+CALL mtr.add_suppression("Multi-statement transaction required more than 'max_binlog_cache_size' bytes of storage.*");
+CALL mtr.add_suppression("Writing one row to the row-based binary log failed.*");
+TRUNCATE t1;
+SET GLOBAL max_binlog_cache_size= ORIGINAL_VALUE;
+SET GLOBAL binlog_cache_size= ORIGINAL_VALUE;
+BEGIN;
+Repeat statement 'INSERT INTO t1 VALUES($n, repeat("a", 32))' 128 times
+COMMIT;
+SELECT count(*) FROM t1;
+count(*)
+0
+show binlog events in 'slave-bin.000001' from <binlog_start>;
+Log_name	Pos	Event_type	Server_id	End_log_pos	Info
+SET GLOBAL max_binlog_cache_size= ORIGINAL_VALUE;
+SET GLOBAL binlog_cache_size= ORIGINAL_VALUE;
+include/stop_slave.inc
+include/start_slave.inc
+SELECT count(*) FROM t1;
+count(*)
+128
 ########################################################################################
 #                                        CLEAN
 ########################################################################################

=== removed file 'mysql-test/suite/rpl/t/rpl_mixed_binlog_max_cache_size-master.opt'
--- a/mysql-test/suite/rpl/t/rpl_mixed_binlog_max_cache_size-master.opt	2009-11-03 19:02:56 +0000
+++ b/mysql-test/suite/rpl/t/rpl_mixed_binlog_max_cache_size-master.opt	1970-01-01 00:00:00 +0000
@@ -1 +0,0 @@
---binlog_cache_size=4096 --max_binlog_cache_size=7680

=== removed file 'mysql-test/suite/rpl/t/rpl_row_binlog_max_cache_size-master.opt'
--- a/mysql-test/suite/rpl/t/rpl_row_binlog_max_cache_size-master.opt	2010-06-17 20:51:35 +0000
+++ b/mysql-test/suite/rpl/t/rpl_row_binlog_max_cache_size-master.opt	1970-01-01 00:00:00 +0000
@@ -1 +0,0 @@
---binlog_cache_size=4096 --max_binlog_cache_size=7680 --default-storage-engine=MyISAM

=== removed file 'mysql-test/suite/rpl/t/rpl_stm_binlog_max_cache_size-master.opt'
--- a/mysql-test/suite/rpl/t/rpl_stm_binlog_max_cache_size-master.opt	2009-11-03 19:02:56 +0000
+++ b/mysql-test/suite/rpl/t/rpl_stm_binlog_max_cache_size-master.opt	1970-01-01 00:00:00 +0000
@@ -1 +0,0 @@
---binlog_cache_size=4096 --max_binlog_cache_size=7680

=== modified file 'mysql-test/t/disabled.def'
--- a/mysql-test/t/disabled.def	2010-09-06 12:45:12 +0000
+++ b/mysql-test/t/disabled.def	2010-10-11 12:56:44 +0000
@@ -13,7 +13,6 @@ kill                     : Bug#37780 200
 lowercase_table3         : Bug#54845 2010-06-30 alik main.lowercase_table3 on Mac OSX
 mysqlhotcopy_myisam      : Bug#54129 2010-08-31 alik mysqlhotcopy* fails
 mysqlhotcopy_archive     : Bug#54129 2010-08-31 alik mysqlhotcopy* fails
-partition_innodb_plugin  : Bug#53307 2010-04-30 VasilDimov valgrind warnings
 query_cache_28249        : Bug#43861 2009-03-25 main.query_cache_28249 fails sporadically
 sp_sync                  : Bug#48157 2010-02-06 5.5-m3 demands a differnt solution
 ctype_utf8mb4_ndb	: Bug#55799, Bug#51907, disabled by Konstantin 2010-08-06

=== modified file 'sql-common/client.c'
--- a/sql-common/client.c	2010-10-04 12:54:41 +0000
+++ b/sql-common/client.c	2010-10-12 10:07:13 +0000
@@ -2923,7 +2923,7 @@ CLI_MYSQL_REAL_CONNECT(MYSQL *mysql,cons
 		       uint port, const char *unix_socket,ulong client_flag)
 {
   char		buff[NAME_LEN+USERNAME_LENGTH+100];
-  int           scramble_data_len, pkt_scramble_len;
+  int           scramble_data_len, pkt_scramble_len= 0;
   char          *end,*host_info= 0, *server_version_end, *pkt_end;
   char          *scramble_data;
   const char    *scramble_plugin;

=== modified file 'sql/log_event.cc'
--- a/sql/log_event.cc	2010-08-23 22:31:12 +0000
+++ b/sql/log_event.cc	2010-10-09 10:18:16 +0000
@@ -158,16 +158,21 @@ static void inline slave_rows_error_repo
                      " %s, Error_code: %d;", err->get_message_text(),
                      err->get_sql_errno());
   }
-  
-  rli->report(level, thd->is_error()? thd->stmt_da->sql_errno() : 0,
-              "Could not execute %s event on table %s.%s;"
-              "%s handler error %s; "
-              "the event's master log %s, end_log_pos %lu",
-              type, table->s->db.str,
-              table->s->table_name.str,
-              buff,
-              handler_error == NULL? "<unknown>" : handler_error,
-              log_name, pos);
+
+  if (ha_error != 0)
+    rli->report(level, thd->is_error() ? thd->stmt_da->sql_errno() : 0,
+                "Could not execute %s event on table %s.%s;"
+                "%s handler error %s; "
+                "the event's master log %s, end_log_pos %lu",
+                type, table->s->db.str, table->s->table_name.str,
+                buff, handler_error == NULL ? "<unknown>" : handler_error,
+                log_name, pos);
+  else
+    rli->report(level, thd->is_error() ? thd->stmt_da->sql_errno() : 0,
+                "Could not execute %s event on table %s.%s;"
+                "%s the event's master log %s, end_log_pos %lu",
+                type, table->s->db.str, table->s->table_name.str,
+                buff, log_name, pos);
 }
 #endif
 
@@ -7811,19 +7816,16 @@ int Rows_log_event::do_apply_event(Relay
       /Sven
     */
     thd->reset_current_stmt_binlog_format_row();
-    const_cast<Relay_log_info*>(rli)->cleanup_context(thd, error);
     thd->is_slave_error= 1;
     DBUG_RETURN(error);
   }
 
-  if (get_flags(STMT_END_F))
-    if ((error= rows_event_stmt_cleanup(rli, thd)))
-      rli->report(ERROR_LEVEL, error,
-                  "Error in %s event: commit of row events failed, "
-                  "table `%s`.`%s`",
-                  get_type_str(), m_table->s->db.str,
-                  m_table->s->table_name.str);
-
+  if (get_flags(STMT_END_F) && (error= rows_event_stmt_cleanup(rli, thd)))
+    slave_rows_error_report(ERROR_LEVEL,
+                            thd->is_error() ? 0 : error,
+                            rli, thd, table,
+                            get_type_str(),
+                            RPL_LOG_NAME, (ulong) log_pos);
   DBUG_RETURN(error);
 }
 

=== modified file 'sql/repl_failsafe.cc'
--- a/sql/repl_failsafe.cc	2010-07-23 20:13:36 +0000
+++ b/sql/repl_failsafe.cc	2010-10-11 14:50:14 +0000
@@ -41,7 +41,7 @@
 #define SLAVE_ERRMSG_SIZE (FN_REFLEN+64)
 
 
-RPL_STATUS rpl_status=RPL_NULL;
+ulong rpl_status=RPL_NULL;
 mysql_mutex_t LOCK_rpl_status;
 mysql_cond_t COND_rpl_status;
 HASH slave_list;
@@ -68,7 +68,7 @@ static Slave_log_event* find_slave_event
   functions like register_slave()) are working.
 */
 
-void change_rpl_status(RPL_STATUS from_status, RPL_STATUS to_status)
+void change_rpl_status(ulong from_status, ulong to_status)
 {
   mysql_mutex_lock(&LOCK_rpl_status);
   if (rpl_status == from_status || rpl_status == RPL_ANY)

=== modified file 'sql/repl_failsafe.h'
--- a/sql/repl_failsafe.h	2010-07-23 20:13:36 +0000
+++ b/sql/repl_failsafe.h	2010-10-11 14:50:14 +0000
@@ -26,7 +26,7 @@ typedef enum {RPL_AUTH_MASTER=0,RPL_IDLE
 	      RPL_LOST_SOLDIER,RPL_TROOP_SOLDIER,
 	      RPL_RECOVERY_CAPTAIN,RPL_NULL /* inactive */,
 	      RPL_ANY /* wild card used by change_rpl_status */ } RPL_STATUS;
-extern RPL_STATUS rpl_status;
+extern ulong rpl_status;
 
 extern mysql_mutex_t LOCK_rpl_status;
 extern mysql_cond_t COND_rpl_status;
@@ -34,7 +34,7 @@ extern TYPELIB rpl_role_typelib;
 extern const char* rpl_role_type[], *rpl_status_type[];
 
 pthread_handler_t handle_failsafe_rpl(void *arg);
-void change_rpl_status(RPL_STATUS from_status, RPL_STATUS to_status);
+void change_rpl_status(ulong from_status, ulong to_status);
 int find_recovery_captain(THD* thd, MYSQL* mysql);
 int update_slave_list(MYSQL* mysql, Master_info* mi);
 

=== modified file 'sql/slave.cc'
--- a/sql/slave.cc	2010-07-29 12:32:11 +0000
+++ b/sql/slave.cc	2010-10-09 10:18:16 +0000
@@ -2534,9 +2534,7 @@ static int exec_relay_log_event(THD* thd
           else
           {
             exec_res= 0;
-            trans_rollback(thd);
-            close_thread_tables(thd);
-            thd->mdl_context.release_transactional_locks();
+            rli->cleanup_context(thd, 1);
             /* chance for concurrent connection to get more locks */
             safe_sleep(thd, min(rli->trans_retries, MAX_SLAVE_RETRY_PAUSE),
                        (CHECK_KILLED_FUNC)sql_slave_killed, (void*)rli);
@@ -3385,6 +3383,7 @@ the slave SQL thread with \"SLAVE START\
     request is detected only by the present function, not by events), so we
     must "proactively" clear playgrounds:
   */
+  thd->clear_error();
   rli->cleanup_context(thd, 1);
   /*
     Some extra safety, which should not been needed (normally, event deletion

=== modified file 'sql/sp_head.cc'
--- a/sql/sp_head.cc	2010-10-07 11:57:12 +0000
+++ b/sql/sp_head.cc	2010-10-12 12:19:33 +0000
@@ -1228,12 +1228,13 @@ sp_head::execute(THD *thd)
     parsing and loading of another stored procedure into the cache
     (@sa db_load_routine() and Bug#10100).
     At the time of measuring, a recursive SP invocation required
-    3232 bytes of stack on 32 bit Linux and 6016 bytes on 64 bit Mac.
+    3232 bytes of stack on 32 bit Linux, 6016 bytes on 64 bit Mac
+    and 11152 on 64 bit Solaris sparc.
     The same with db_load_routine() required circa 7k bytes and
     14k bytes accordingly. Hence, here we book the stack with some
     reasonable margin.
   */
-  if (check_stack_overrun(thd, 2 * STACK_MIN_SIZE, (uchar*)&old_packet))
+  if (check_stack_overrun(thd, 4 * STACK_MIN_SIZE, (uchar*)&old_packet))
     DBUG_RETURN(TRUE);
 
   /* init per-instruction memroot */

=== modified file 'sql/sql_acl.cc'
--- a/sql/sql_acl.cc	2010-10-04 12:42:16 +0000
+++ b/sql/sql_acl.cc	2010-10-12 10:07:13 +0000
@@ -3936,7 +3936,7 @@ bool mysql_grant(THD *thd, const char *d
                  ulong rights, bool revoke_grant, bool is_proxy)
 {
   List_iterator <LEX_USER> str_list (list);
-  LEX_USER *Str, *tmp_Str, *proxied_user;
+  LEX_USER *Str, *tmp_Str, *proxied_user= NULL;
   char tmp_db[NAME_LEN+1];
   bool create_new_users=0;
   TABLE_LIST tables[2];

=== modified file 'sql/sql_cache.cc'
--- a/sql/sql_cache.cc	2010-10-08 12:16:20 +0000
+++ b/sql/sql_cache.cc	2010-10-12 10:07:13 +0000
@@ -412,7 +412,8 @@ struct Query_cache_wait_state
 
   Query_cache_wait_state(THD *thd, const char *func,
                          const char *file, unsigned int line)
-  : m_thd(thd)
+  : m_thd(thd),
+    m_proc_info(NULL)
   {
     if (m_thd)
       m_proc_info= set_thd_proc_info(m_thd,

=== modified file 'storage/innobase/handler/ha_innodb.cc'
--- a/storage/innobase/handler/ha_innodb.cc	2010-10-07 12:12:33 +0000
+++ b/storage/innobase/handler/ha_innodb.cc	2010-10-11 15:22:22 +0000
@@ -9635,7 +9635,11 @@ ha_innobase::innobase_peek_autoinc(void)
 
 	auto_inc = dict_table_autoinc_read(innodb_table);
 
-	ut_a(auto_inc > 0);
+	if (auto_inc == 0) {
+		ut_print_timestamp(stderr);
+		fprintf(stderr, "  InnoDB: AUTOINC next value generation "
+			"is disabled for '%s'\n", innodb_table->name);
+	}
 
 	dict_table_autoinc_unlock(innodb_table);
 

=== modified file 'storage/innobase/row/row0sel.c'
--- a/storage/innobase/row/row0sel.c	2010-10-07 10:01:51 +0000
+++ b/storage/innobase/row/row0sel.c	2010-10-11 15:22:22 +0000
@@ -3342,6 +3342,7 @@ row_search_for_mysql(
 	mem_heap_t*	heap				= NULL;
 	ulint		offsets_[REC_OFFS_NORMAL_SIZE];
 	ulint*		offsets				= offsets_;
+	ibool		table_lock_waited		= FALSE;
 
 	rec_offs_init(offsets_);
 
@@ -3728,13 +3729,15 @@ release_search_latch_if_needed:
 		trx_assign_read_view(trx);
 		prebuilt->sql_stat_start = FALSE;
 	} else {
+wait_table_again:
 		err = lock_table(0, index->table,
 				 prebuilt->select_lock_type == LOCK_S
 				 ? LOCK_IS : LOCK_IX, thr);
 
 		if (err != DB_SUCCESS) {
 
-			goto lock_wait_or_error;
+			table_lock_waited = TRUE;
+			goto lock_table_wait;
 		}
 		prebuilt->sql_stat_start = FALSE;
 	}
@@ -4545,6 +4548,7 @@ lock_wait_or_error:
 
 	btr_pcur_store_position(pcur, &mtr);
 
+lock_table_wait:
 	mtr_commit(&mtr);
 	mtr_has_extra_clust_latch = FALSE;
 
@@ -4562,6 +4566,14 @@ lock_wait_or_error:
 		thr->lock_state = QUE_THR_LOCK_NOLOCK;
 		mtr_start(&mtr);
 
+		/* Table lock waited, go try to obtain table lock
+		again */
+		if (table_lock_waited) {
+			table_lock_waited = FALSE;
+
+			goto wait_table_again;
+		}
+
 		sel_restore_position_for_mysql(&same_user_rec,
 					       BTR_SEARCH_LEAF, pcur,
 					       moves_up, &mtr);


Attachment: [text/bzr-bundle] bzr/jon.hauglid@oracle.com-20101012132635-o0tkkwwhylb6fo0f.bundle
Thread
bzr commit into mysql-5.5-runtime branch (jon.hauglid:3161) Jon Olav Hauglid13 Oct