diff options
author | unknown <guilhem@mysql.com> | 2004-11-10 15:07:55 +0100 |
---|---|---|
committer | unknown <guilhem@mysql.com> | 2004-11-10 15:07:55 +0100 |
commit | 12fbc41f5f76b84cf6b7f174f0b9d27e187d104b (patch) | |
tree | aaa1df2c201233d205d73ccc1ba2e041ddea1b74 /sql/sql_table.cc | |
parent | 442b2d89b1992dd727eae1c59c16499d052ceb54 (diff) | |
download | mariadb-git-12fbc41f5f76b84cf6b7f174f0b9d27e187d104b.tar.gz |
Fix for BUG#6522 "Replication fails due to a rolled back transaction in the binlog"
When we are writing a transaction to the binlog, we log BEGIN/COMMIT with zero error code.
Example: all statements of trans succeeded, connection lost and so implicit rollback:
we don't want ER_NET* errors to be logged in the BEGIN/ROLLBACK events, while statement
events have 0. If there was really a serious error code, it's already in the statement events.
sql/log.cc:
When we write the cached binlog segment to disk binlog at COMMIT/ROLLBACK time:
imagine this is rollback due to net timeout, after all statements of
the transaction succeeded. Then we want a zero-error code in BEGIN.
In other words, if there was a really serious error code it's already
in the transaction's statement events.
sql/sql_table.cc:
out of date comment
Diffstat (limited to 'sql/sql_table.cc')
-rw-r--r-- | sql/sql_table.cc | 1 |
1 files changed, 0 insertions, 1 deletions
diff --git a/sql/sql_table.cc b/sql/sql_table.cc index 65690e56039..1e5237b1428 100644 --- a/sql/sql_table.cc +++ b/sql/sql_table.cc @@ -911,7 +911,6 @@ TABLE *create_table_from_items(THD *thd, HA_CREATE_INFO *create_info, } table->file->extra(HA_EXTRA_WRITE_CACHE); DBUG_RETURN(table); - /* Note that leaving the function resets binlogging properties */ } |