diff options
author | Jon Olav Hauglid <jon.hauglid@sun.com> | 2010-01-20 09:17:31 +0100 |
---|---|---|
committer | Jon Olav Hauglid <jon.hauglid@sun.com> | 2010-01-20 09:17:31 +0100 |
commit | 661fd506a3bf3d195db6dc0b718821ea1ca41e3a (patch) | |
tree | 54342e8a969124f39c62ab440920776045cb897c /sql/sp.h | |
parent | 2a340691ff3839a37094f139a5c419b7d4007cb8 (diff) | |
download | mariadb-git-661fd506a3bf3d195db6dc0b718821ea1ca41e3a.tar.gz |
Bug #50412 Assertion `! is_set()' failed in
Diagnostics_area::set_ok_status at PREPARE
The problem occured during processing of stored routines.
Routines are loaded from mysql.proc, parsed and put into the sp cache by
sp_cache_routine(). The assert occured because the return value from
sp_cache_routine() was not checked for top level CALLs. This meant that any
errors during sp_cache_routine() went unoticed and triggered the assert when
my_ok() was later called.
This is a regression introduced by the patch for Bug#30977, only visible in
source trees with MDL and using debug builds of the server.
This patch fixes the problem by checking the return value from sp_cache_routine()
for top level CALLs and propagating any errors similar to what is done for other
calls to sp_cache_routine().
No test case added.
Diffstat (limited to 'sql/sp.h')
0 files changed, 0 insertions, 0 deletions