mirror of
https://github.com/MariaDB/server.git
synced 2025-08-08 11:22:35 +03:00
Merge tag 'mariadb-10.0.22' into 10.0-galera
This commit is contained in:
@@ -30,7 +30,6 @@
|
||||
|
||||
#include <my_global.h> /* NO_EMBEDDED_ACCESS_CHECKS */
|
||||
#include "sql_priv.h"
|
||||
#include "unireg.h" // REQUIRED: for other includes
|
||||
#include "sql_class.h"
|
||||
#include "sql_cache.h" // query_cache_abort
|
||||
#include "sql_base.h" // close_thread_tables
|
||||
@@ -5432,16 +5431,13 @@ void xid_cache_delete(XID_STATE *xid_state)
|
||||
BINLOG_FORMAT = STATEMENT and at least one table uses a storage
|
||||
engine limited to row-logging.
|
||||
|
||||
6. Error: Cannot execute row injection: binlogging impossible since
|
||||
BINLOG_FORMAT = STATEMENT.
|
||||
|
||||
7. Warning: Unsafe statement binlogged in statement format since
|
||||
6. Warning: Unsafe statement binlogged in statement format since
|
||||
BINLOG_FORMAT = STATEMENT.
|
||||
|
||||
In addition, we can produce the following error (not depending on
|
||||
the variables of the decision diagram):
|
||||
|
||||
8. Error: Cannot execute statement: binlogging impossible since more
|
||||
7. Error: Cannot execute statement: binlogging impossible since more
|
||||
than one engine is involved and at least one engine is
|
||||
self-logging.
|
||||
|
||||
@@ -5720,10 +5716,10 @@ int THD::decide_logging_format(TABLE_LIST *tables)
|
||||
if (lex->is_stmt_row_injection())
|
||||
{
|
||||
/*
|
||||
6. Error: Cannot execute row injection since
|
||||
BINLOG_FORMAT = STATEMENT
|
||||
We have to log the statement as row or give an error.
|
||||
Better to accept what master gives us than stopping replication.
|
||||
*/
|
||||
my_error((error= ER_BINLOG_ROW_INJECTION_AND_STMT_MODE), MYF(0));
|
||||
set_current_stmt_binlog_format_row();
|
||||
}
|
||||
else if ((flags_write_all_set & HA_BINLOG_STMT_CAPABLE) == 0 &&
|
||||
sqlcom_can_generate_row_events(this))
|
||||
@@ -5755,7 +5751,7 @@ int THD::decide_logging_format(TABLE_LIST *tables)
|
||||
DBUG_PRINT("info", ("binlog_unsafe_warning_flags: 0x%x",
|
||||
binlog_unsafe_warning_flags));
|
||||
}
|
||||
/* log in statement format! */
|
||||
/* log in statement format (or row if row event)! */
|
||||
}
|
||||
/* No statement-only engines and binlog_format != STATEMENT.
|
||||
I.e., nothing prevents us from row logging if needed. */
|
||||
|
Reference in New Issue
Block a user