Commit dc0a59a2 authored by unknown's avatar unknown

Fix for bug #25421: MySQL threads don't respond to the kill command

Calculating the estimated number of records for a range scan may take a
significant time, and it was impossible for a user to interrupt that
process by killing the connection or the query.

Fixed by checking the thread's 'killed' status in check_quick_keys() and
interrupting the calculation process if it is set to a non-zero value.


sql/opt_range.cc:
  Check the thread's 'killed' status in check_quick_keys() and
  interrupt the calculation process if it is set to a non-zero value.
parent e259d461
......@@ -7352,6 +7352,9 @@ check_quick_keys(PARAM *param, uint idx, SEL_ARG *key_tree,
tmp_max_flag= max_key_flag | key_tree->max_flag;
}
if (unlikely(param->thd->killed != 0))
return HA_POS_ERROR;
keynr=param->real_keynr[idx];
param->range_count++;
if (!tmp_min_flag && ! tmp_max_flag &&
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment