summaryrefslogtreecommitdiff
path: root/sql/handler.cc
diff options
context:
space:
mode:
authorSergei Golubchik <serg@mariadb.org>2015-02-27 21:42:03 +0100
committerSergei Golubchik <serg@mariadb.org>2015-02-28 19:48:22 +0100
commit7ba2916c552638e3f8ab4cf2945bbfe99f745dd4 (patch)
tree9feabc275a9a734f675df1e6df525af64cae1ce5 /sql/handler.cc
parentba80708f66fca32c7c2fbc66879177e5590e53fb (diff)
downloadmariadb-git-7ba2916c552638e3f8ab4cf2945bbfe99f745dd4.tar.gz
MDEV-7000 Assertion `0' failed in Protocol::end_statement() on executing DDL under innodb_fake_changes=1
correct the if() condition to match the behavior of the old code that this if() was supposed to replace
Diffstat (limited to 'sql/handler.cc')
-rw-r--r--sql/handler.cc5
1 files changed, 2 insertions, 3 deletions
diff --git a/sql/handler.cc b/sql/handler.cc
index 41e686003c5..7c70babfea8 100644
--- a/sql/handler.cc
+++ b/sql/handler.cc
@@ -1152,9 +1152,8 @@ static int prepare_or_error(handlerton *ht, THD *thd, bool all)
{
/* avoid sending error, if we're going to replay the transaction */
#ifdef WITH_WSREP
- if (ht == wsrep_hton &&
- err != EMSGSIZE &&
- thd->wsrep_conflict_state != MUST_REPLAY)
+ if (ht != wsrep_hton ||
+ err == EMSGSIZE || thd->wsrep_conflict_state != MUST_REPLAY)
#endif
my_error(ER_ERROR_DURING_COMMIT, MYF(0), err);
}