1
0
mirror of https://github.com/MariaDB/server.git synced 2025-07-29 05:21:33 +03:00

Fix for MDEV-13191. Assert for !is_set() when doing LOAD DATA

This could happen when the client connection dies while sending a progress
report packet.
Fixed by not raising any errors when sending progress packets.
This commit is contained in:
Monty
2017-07-02 14:59:06 +03:00
parent 21689d1252
commit 46d6f74c48

View File

@ -4084,6 +4084,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)
@ -4100,8 +4104,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();
}
}
}