summaryrefslogtreecommitdiff
path: root/sql/sql_class.h
diff options
context:
space:
mode:
authorunknown <df@pippilotta.erinye.com>2007-11-28 19:49:29 +0100
committerunknown <df@pippilotta.erinye.com>2007-11-28 19:49:29 +0100
commit9b6dc66ede4f939ad123f4a18a0a883f529d4963 (patch)
tree4f47aa2b6f09e1699ea25d02dee1b3ca0f3c9255 /sql/sql_class.h
parenta24bfb485c8f443ae2ea6a13d4f1131baa6ddfdb (diff)
parentdf722475e7e8bcfb8c86939eba63cbc640518c5a (diff)
downloadmariadb-git-9b6dc66ede4f939ad123f4a18a0a883f529d4963.tar.gz
Merge bk-internal.mysql.com:/home/bk/mysql-5.1
into pippilotta.erinye.com:/shared/home/df/mysql/build/mysql-5.1-build client/mysql.cc: Auto merged configure.in: Auto merged mysql-test/lib/mtr_report.pl: Auto merged mysql-test/r/innodb_mysql.result: Auto merged mysql-test/suite/rpl/include/rpl_mixed_dml.inc: Auto merged mysql-test/t/disabled.def: Auto merged sql/handler.cc: Auto merged sql/sql_base.cc: Auto merged sql/sql_class.h: Auto merged sql/sql_parse.cc: Auto merged sql/sql_table.cc: Auto merged sql/table.cc: Auto merged sql/table.h: Auto merged
Diffstat (limited to 'sql/sql_class.h')
-rw-r--r--sql/sql_class.h22
1 files changed, 17 insertions, 5 deletions
diff --git a/sql/sql_class.h b/sql/sql_class.h
index f09759ddde6..bbe6c589c97 100644
--- a/sql/sql_class.h
+++ b/sql/sql_class.h
@@ -1262,14 +1262,16 @@ public:
We follow this logic:
- when stmt starts, first_successful_insert_id_in_prev_stmt contains the
first insert id successfully inserted by the previous stmt.
- - as stmt makes progress, handler::insert_id_for_cur_row changes; every
- time get_auto_increment() is called, auto_inc_intervals_for_binlog is
- augmented with the reserved interval (if statement-based binlogging).
+ - as stmt makes progress, handler::insert_id_for_cur_row changes;
+ every time get_auto_increment() is called,
+ auto_inc_intervals_in_cur_stmt_for_binlog is augmented with the
+ reserved interval (if statement-based binlogging).
- at first successful insertion of an autogenerated value,
first_successful_insert_id_in_cur_stmt is set to
handler::insert_id_for_cur_row.
- - when stmt goes to binlog, auto_inc_intervals_for_binlog is
- binlogged if non-empty.
+ - when stmt goes to binlog,
+ auto_inc_intervals_in_cur_stmt_for_binlog is binlogged if
+ non-empty.
- when stmt ends, first_successful_insert_id_in_prev_stmt is set to
first_successful_insert_id_in_cur_stmt.
*/
@@ -2489,6 +2491,11 @@ class multi_delete :public select_result_interceptor
/* True if at least one table we delete from is not transactional */
bool normal_tables;
bool delete_while_scanning;
+ /*
+ error handling (rollback and binlogging) can happen in send_eof()
+ so that afterward send_error() needs to find out that.
+ */
+ bool error_handled;
public:
multi_delete(TABLE_LIST *dt, uint num_of_tables);
@@ -2524,6 +2531,11 @@ class multi_update :public select_result_interceptor
/* True if the update operation has made a change in a transactional table */
bool transactional_tables;
bool ignore;
+ /*
+ error handling (rollback and binlogging) can happen in send_eof()
+ so that afterward send_error() needs to find out that.
+ */
+ bool error_handled;
public:
multi_update(TABLE_LIST *ut, TABLE_LIST *leaves_list,