diff options
author | unknown <tsmith@ramayana.hindu.god> | 2007-08-01 18:59:41 -0600 |
---|---|---|
committer | unknown <tsmith@ramayana.hindu.god> | 2007-08-01 18:59:41 -0600 |
commit | 48eb7f8c857493ca7d30da4b78b279e4938f8c83 (patch) | |
tree | 1fa7c6a583124fd9e3ba466b15acf7b8518f3303 /sql/sql_class.h | |
parent | 15835a5693da749cc9635d127ff708286831872e (diff) | |
parent | d07385965a42e086f53b94b8f0f435c1e586d28d (diff) | |
download | mariadb-git-48eb7f8c857493ca7d30da4b78b279e4938f8c83.tar.gz |
Merge 50 -> 51 (-opt changesets)
sql/handler.cc:
Auto merged
sql/handler.h:
Auto merged
sql/sp_head.cc:
Auto merged
sql/sp_rcontext.cc:
Auto merged
sql/sql_base.cc:
Auto merged
sql/sql_select.cc:
Auto merged
sql/sql_select.h:
Auto merged
sql/sql_table.cc:
Auto merged
sql/sql_union.cc:
Auto merged
sql/sql_yacc.yy:
Auto merged
sql/table.cc:
Auto merged
mysql-test/include/read_many_rows.inc:
Manual merge
mysql-test/r/read_many_rows_innodb.result:
Manual merge
sql/sql_class.cc:
Manual merge
sql/sql_class.h:
Manual merge
storage/innobase/handler/ha_innodb.cc:
Manual merge
Diffstat (limited to 'sql/sql_class.h')
-rw-r--r-- | sql/sql_class.h | 30 |
1 files changed, 29 insertions, 1 deletions
diff --git a/sql/sql_class.h b/sql/sql_class.h index 00b68420f56..996009f3f5d 100644 --- a/sql/sql_class.h +++ b/sql/sql_class.h @@ -1411,7 +1411,33 @@ public: bool current_stmt_binlog_row_based; bool locked, some_tables_deleted; bool last_cuted_field; - bool no_errors, password, is_fatal_error; + bool no_errors, password; + /** + Set to TRUE if execution of the current compound statement + can not continue. In particular, disables activation of + CONTINUE or EXIT handlers of stored routines. + Reset in the end of processing of the current user request, in + @see mysql_reset_thd_for_next_command(). + */ + bool is_fatal_error; + /** + Set by a storage engine to request the entire + transaction (that possibly spans multiple engines) to + rollback. Reset in ha_rollback. + */ + bool transaction_rollback_request; + /** + TRUE if we are in a sub-statement and the current error can + not be safely recovered until we left the sub-statement mode. + In particular, disables activation of CONTINUE and EXIT + handlers inside sub-statements. E.g. if it is a deadlock + error and requires a transaction-wide rollback, this flag is + raised (traditionally, MySQL first has to close all the reads + via @see handler::ha_index_or_rnd_end() and only then perform + the rollback). + Reset to FALSE when we leave the sub-statement mode. + */ + bool is_fatal_sub_stmt_error; bool query_start_used, rand_used, time_zone_used; /* for IS NULL => = last_insert_id() fix in remove_eq_conds() */ bool substitute_null_with_insert_id; @@ -2455,4 +2481,6 @@ public: void add_to_status(STATUS_VAR *to_var, STATUS_VAR *from_var); void add_diff_to_status(STATUS_VAR *to_var, STATUS_VAR *from_var, STATUS_VAR *dec_var); +void mark_transaction_to_rollback(THD *thd, bool all); + #endif /* MYSQL_SERVER */ |