summaryrefslogtreecommitdiff
path: root/sql/sql_class.cc
diff options
context:
space:
mode:
authorAlexander Barkov <bar@mariadb.org>2017-07-13 07:21:21 +0400
committerAlexander Barkov <bar@mariadb.org>2017-07-13 07:21:21 +0400
commit29acdcd5427e13bc3aefbbeee17b42bfe23dea84 (patch)
treef8f5365594c3b43e01891b7017f47fa6b934c646 /sql/sql_class.cc
parente33bda183e80ff63a984ed2a938467950b23a3fd (diff)
parentdaec0004502a1f8c2ff7d46de92a61b5c4da1d6c (diff)
downloadmariadb-git-MDEV-9804.tar.gz
Merge remote-tracking branch 'origin/bb-10.2-ext' into 10.3MDEV-9804
Conflicts: VERSION debian/mariadb-backup-10.2.files debian/mariadb-backup-10.2.install debian/mariadb-backup-10.3.files mysql-test/unstable-tests
Diffstat (limited to 'sql/sql_class.cc')
-rw-r--r--sql/sql_class.cc12
1 files changed, 10 insertions, 2 deletions
diff --git a/sql/sql_class.cc b/sql/sql_class.cc
index 449aded32bd..145ccb76d11 100644
--- a/sql/sql_class.cc
+++ b/sql/sql_class.cc
@@ -4140,7 +4140,7 @@ void Security_context::destroy()
if (external_user)
{
my_free(external_user);
- user= NULL;
+ external_user= NULL;
}
my_free((char*) ip);
@@ -4358,6 +4358,10 @@ extern "C" enum thd_kill_levels thd_kill_level(const MYSQL_THD thd)
however not more often than global.progress_report_time.
If global.progress_report_time is 0, then don't send progress reports, but
check every second if the value has changed
+
+ We clear any errors that we get from sending the progress packet to
+ the client as we don't want to set an error without the caller knowing
+ about it.
*/
static void thd_send_progress(THD *thd)
@@ -4374,8 +4378,12 @@ static void thd_send_progress(THD *thd)
thd->progress.next_report_time= (report_time +
seconds_to_next * 1000000000ULL);
if (global_system_variables.progress_report_time &&
- thd->variables.progress_report_time)
+ thd->variables.progress_report_time && !thd->is_error())
+ {
net_send_progress_packet(thd);
+ if (thd->is_error())
+ thd->clear_error();
+ }
}
}