List:Commits« Previous MessageNext Message »
From:Davi Arnaut Date:July 27 2008 3:15pm
Subject:bzr push into mysql-6.0-runtime branch (davi:2687 to 2688) WL#4284
View as plain text  
 2688 Davi Arnaut	2008-07-27
      Post-merge fixes:
      
      Remove dependency on binlog, require not embedded as test uses
      the event scheduler and disable abort on error for syntax only
      available on servers built with debugging support.
modified:
  mysql-test/t/implicit_commit.test

 2687 Davi Arnaut	2008-07-26
      WL#4284: Transactional DDL locking
      
      SQL statements' effect on transactions.
      
      Currently the MySQL server and its storage engines are not
      capable of rolling back operations that define or modify data
      structures (also known as DDL statements) or operations that
      alter any of the system tables (the mysql database). Allowing
      these group of statements to participate in transactions
      is unfeasible at this time (since rollback has no effect
      whatsoever on them) and goes against the design of our metadata
      locking subsystem.
      
      The solution is to issue implicit commits before and after
      those statements execution. This effectively confines each of
      those statements to its own special transaction and ensures
      that metadata locks taken during this special transaction
      are not leaked into posterior statements/transactions.
added:
  mysql-test/include/implicit_commit_helper.inc
  mysql-test/r/implicit_commit.result
  mysql-test/t/implicit_commit.test
modified:
  mysql-test/include/commit.inc
  mysql-test/r/commit_1innodb.result
  sql/events.cc
  sql/mysql_priv.h
  sql/sql_class.h
  sql/sql_delete.cc
  sql/sql_parse.cc
  sql/sql_table.cc
  tests/mysql_client_test.c

=== modified file 'mysql-test/t/implicit_commit.test'
--- a/mysql-test/t/implicit_commit.test	2008-07-26 16:38:20 +0000
+++ b/mysql-test/t/implicit_commit.test	2008-07-27 13:14:46 +0000
@@ -1,5 +1,5 @@
 source include/have_innodb.inc;
-source include/have_log_bin.inc;
+source include/not_embedded.inc;
 
 SET GLOBAL EVENT_SCHEDULER = OFF;
 SET BINLOG_FORMAT = STATEMENT;
@@ -879,9 +879,15 @@ source include/implicit_commit_helper.in
 --echo # SQLCOM_SHOW_PROC_CODE
 --echo #
 
+#
+# Available only on servers with debugging support.
+#
+
+--disable_abort_on_error
 let $statement=
   show procedure code p1;
 source include/implicit_commit_helper.inc;
+--enable_abort_on_error
 
 --echo #
 --echo # SQLCOM_DROP_PROCEDURE
@@ -935,9 +941,15 @@ source include/implicit_commit_helper.in
 --echo # SQLCOM_SHOW_FUNC_CODE
 --echo #
 
+#
+# Available only on servers with debugging support.
+#
+
+--disable_abort_on_error
 let $statement=
   show function code f1;
 source include/implicit_commit_helper.inc;
+--enable_abort_on_error
 
 --echo #
 --echo # SQLCOM_PREPARE

Thread
bzr push into mysql-6.0-runtime branch (davi:2687 to 2688) WL#4284Davi Arnaut27 Jul