From 19fe10c3e9609d48c1240667e4400395dd8e9a3b Mon Sep 17 00:00:00 2001 From: Sergei Golubchik Date: Wed, 3 Aug 2016 20:39:47 +0200 Subject: [PATCH] MDEV-6581 Writing to TEMPORARY TABLE not possible in read-only don't mark transactions read-write if no real storage engine is affected (only binlog writes). --- sql/handler.cc | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/sql/handler.cc b/sql/handler.cc index d528c0aea7aaa..5fc756020398e 100644 --- a/sql/handler.cc +++ b/sql/handler.cc @@ -1238,7 +1238,8 @@ int ha_commit_trans(THD *thd, bool all) uint rw_ha_count= ha_check_and_coalesce_trx_read_only(thd, ha_info, all); /* rw_trans is TRUE when we in a transaction changing data */ - bool rw_trans= is_real_trans && (rw_ha_count > 0); + bool rw_trans= is_real_trans && + (rw_ha_count > !thd->is_current_stmt_binlog_disabled()); MDL_request mdl_request; if (rw_trans)