summaryrefslogtreecommitdiff
path: root/sql/rpl_rli.cc
diff options
context:
space:
mode:
authorKonstantin Osipov <kostja@sun.com>2009-12-03 21:37:38 +0300
committerKonstantin Osipov <kostja@sun.com>2009-12-03 21:37:38 +0300
commitc43f894c51bb7b091dd668f069fb5e5e44dcb0b1 (patch)
treee72864841720da65102a5acd0ba5cc908cc8dec8 /sql/rpl_rli.cc
parent3a8a7509199b15c26a88bab5ed97ec093a29f387 (diff)
downloadmariadb-git-c43f894c51bb7b091dd668f069fb5e5e44dcb0b1.tar.gz
Backport of:
------------------------------------------------------------ revno: 2630.22.3 committer: Davi Arnaut <Davi.Arnaut@Sun.COM> branch nick: 4284-6.0 timestamp: Thu 2008-08-07 22:33:43 -0300 message: WL#4284: Transactional DDL locking Make transaction management more modular through a new interface. The overall objective of this change is to provide groundwork for the design of transactional DDL locking by cleaning up the transaction high level API to better distinguish operations implicit and explicit, and single statement transaction from operations on the normal transaction. Having a a high-level interface for transaction management provides a better base for implementing transactional concepts that are not always tied to storage engines and also makes it easier to interect with other higher level modules of the server.
Diffstat (limited to 'sql/rpl_rli.cc')
-rw-r--r--sql/rpl_rli.cc5
1 files changed, 3 insertions, 2 deletions
diff --git a/sql/rpl_rli.cc b/sql/rpl_rli.cc
index 42cd12bd66c..0a703475aa7 100644
--- a/sql/rpl_rli.cc
+++ b/sql/rpl_rli.cc
@@ -20,6 +20,7 @@
#include <my_dir.h> // For MY_STAT
#include "sql_repl.h" // For check_binlog_magic
#include "rpl_utility.h"
+#include "transaction.h"
static int count_relay_log_space(Relay_log_info* rli);
@@ -1183,8 +1184,8 @@ void Relay_log_info::cleanup_context(THD *thd, bool error)
*/
if (error)
{
- ha_autocommit_or_rollback(thd, 1); // if a "statement transaction"
- end_trans(thd, ROLLBACK); // if a "real transaction"
+ trans_rollback_stmt(thd); // if a "statement transaction"
+ trans_rollback(thd); // if a "real transaction"
}
m_table_map.clear_tables();
slave_close_thread_tables(thd);