mirror of
https://github.com/MariaDB/server.git
synced 2025-01-28 01:34:17 +01:00
BUG#16207679: MISSING ERROR WHEN RESIGNAL TO MYSQL_ERROR=5
Analysis: -------- As part of the fix for Bug#11757464, the 'out of memory' error condition was not pushed to the diagnostic area as it requires memory allocation. However in cases of SIGNAL/RESIGNAL 'out of memory' error, the server may not be out of memory. Hence it would be good to report the error in such cases. Fix: --- Push only non fatal 'out of memory' errors to the diagnostic area. Since SIGNAL/RESIGNAL of 'out of memory' error may not be fatal, the error is reported.
This commit is contained in:
parent
4743ba00bb
commit
8fd9e920eb
1 changed files with 5 additions and 3 deletions
|
@ -1137,10 +1137,12 @@ MYSQL_ERROR* THD::raise_condition(uint sql_errno,
|
||||||
query_cache_abort(&query_cache_tls);
|
query_cache_abort(&query_cache_tls);
|
||||||
|
|
||||||
/*
|
/*
|
||||||
Avoid pushing a condition for out of memory errors as this will require
|
Avoid pushing a condition for fatal out of memory errors as this will
|
||||||
memory allocation and therefore might fail.
|
require memory allocation and therefore might fail. Non fatal out of
|
||||||
|
memory errors can occur if raised by SIGNAL/RESIGNAL statement.
|
||||||
*/
|
*/
|
||||||
if (sql_errno != EE_OUTOFMEMORY && sql_errno != ER_OUTOFMEMORY)
|
if (!(is_fatal_error && (sql_errno == EE_OUTOFMEMORY ||
|
||||||
|
sql_errno == ER_OUTOFMEMORY)))
|
||||||
{
|
{
|
||||||
cond= warning_info->push_warning(this, sql_errno, sqlstate, level, msg);
|
cond= warning_info->push_warning(this, sql_errno, sqlstate, level, msg);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Reference in a new issue