diff options
author | unknown <serg@janus.mylan> | 2007-12-20 22:11:37 +0100 |
---|---|---|
committer | unknown <serg@janus.mylan> | 2007-12-20 22:11:37 +0100 |
commit | 295732b580716b6b5a48a4a2ceb112b432c96551 (patch) | |
tree | 8e1c37da4cf89e91d901badb1c2e5f100be39ec1 /sql/sql_update.cc | |
parent | 3ab83a2e5efdb64b068243d11b6230ae5b11df29 (diff) | |
parent | 9bf488563d948ddc86ccef87ddaebc7d15afe1a4 (diff) | |
download | mariadb-git-295732b580716b6b5a48a4a2ceb112b432c96551.tar.gz |
Merge bk-internal.mysql.com:/home/bk/mysql-5.1-maint
into janus.mylan:/usr/home/serg/Abk/mysql-5.1
configure.in:
Auto merged
libmysql/CMakeLists.txt:
Auto merged
libmysqld/lib_sql.cc:
Auto merged
mysql-test/mysql-test-run.pl:
Auto merged
mysql-test/r/information_schema.result:
Auto merged
mysql-test/t/information_schema.test:
Auto merged
sql/Makefile.am:
Auto merged
sql/field.cc:
Auto merged
sql/handler.cc:
Auto merged
sql/item.cc:
Auto merged
sql/item_func.cc:
Auto merged
sql/item_geofunc.cc:
Auto merged
sql/item_subselect.cc:
Auto merged
sql/key.cc:
Auto merged
sql/lock.cc:
Auto merged
sql/log.cc:
Auto merged
sql/log_event.cc:
Auto merged
sql/mysql_priv.h:
Auto merged
sql/mysqld.cc:
Auto merged
sql/net_serv.cc:
Auto merged
sql/opt_sum.cc:
Auto merged
sql/protocol.h:
Auto merged
sql/repl_failsafe.cc:
Auto merged
sql/set_var.cc:
Auto merged
sql/set_var.h:
Auto merged
sql/sp_head.cc:
Auto merged
sql/sql_base.cc:
Auto merged
sql/sql_cache.cc:
Auto merged
sql/sql_class.cc:
Auto merged
sql/sql_delete.cc:
Auto merged
sql/sql_insert.cc:
Auto merged
sql/sql_lex.cc:
Auto merged
sql/sql_prepare.cc:
Auto merged
sql/sql_select.cc:
Auto merged
sql/sql_select.h:
Auto merged
sql/sql_show.cc:
Auto merged
sql/sql_table.cc:
Auto merged
sql/sql_update.cc:
Auto merged
sql/sql_yacc.yy:
Auto merged
sql/table.h:
Auto merged
storage/archive/ha_archive.cc:
Auto merged
storage/innobase/buf/buf0buf.c:
Auto merged
storage/innobase/buf/buf0flu.c:
Auto merged
storage/innobase/buf/buf0lru.c:
Auto merged
storage/innobase/include/buf0buf.h:
Auto merged
storage/innobase/include/buf0buf.ic:
Auto merged
storage/innobase/include/sync0arr.h:
Auto merged
storage/innobase/include/sync0rw.h:
Auto merged
storage/innobase/include/sync0rw.ic:
Auto merged
storage/innobase/include/sync0sync.h:
Auto merged
storage/innobase/os/os0sync.c:
Auto merged
storage/innobase/sync/sync0arr.c:
Auto merged
storage/innobase/sync/sync0rw.c:
Auto merged
storage/innobase/sync/sync0sync.c:
Auto merged
storage/myisam/ha_myisam.cc:
Auto merged
storage/myisam/mi_open.c:
Auto merged
storage/myisammrg/ha_myisammrg.cc:
Auto merged
sql/ha_ndbcluster.cc:
merged
sql/item_cmpfunc.cc:
merged
sql/protocol.cc:
merged
sql/slave.cc:
merged
sql/sql_class.h:
merged
sql/sql_parse.cc:
merged
Diffstat (limited to 'sql/sql_update.cc')
-rw-r--r-- | sql/sql_update.cc | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/sql/sql_update.cc b/sql/sql_update.cc index 6f178b6fcc1..78dea6b7cdb 100644 --- a/sql/sql_update.cc +++ b/sql/sql_update.cc @@ -1696,7 +1696,11 @@ void multi_update::send_error(uint errcode,const char *err) { /* First send error what ever it is ... */ my_error(errcode, MYF(0), err); +} + +void multi_update::abort() +{ /* the error was handled or nothing deleted and no side effects return */ if (error_handled || !thd->transaction.stmt.modified_non_trans_table && !updated) @@ -1725,7 +1729,7 @@ void multi_update::send_error(uint errcode,const char *err) todo/fixme: do_update() is never called with the arg 1. should it change the signature to become argless? */ - VOID(do_updates(0)); + VOID(do_updates()); } } if (thd->transaction.stmt.modified_non_trans_table) @@ -1756,7 +1760,7 @@ void multi_update::send_error(uint errcode,const char *err) } -int multi_update::do_updates(bool from_send_error) +int multi_update::do_updates() { TABLE_LIST *cur_table; int local_error= 0; @@ -1903,7 +1907,6 @@ int multi_update::do_updates(bool from_send_error) DBUG_RETURN(0); err: - if (!from_send_error) { thd->fatal_error(); prepare_record_for_error_message(local_error, table); @@ -1945,7 +1948,7 @@ bool multi_update::send_eof() Does updates for the last n - 1 tables, returns 0 if ok; error takes into account killed status gained in do_updates() */ - int local_error = (table_count) ? do_updates(0) : 0; + int local_error = (table_count) ? do_updates() : 0; /* if local_error is not set ON until after do_updates() then later carried out killing should not affect binlogging. |