Below is the list of changes that have just been committed into a local
6.0 repository of davi. When davi does a push these changes
will be propagated to the main repository and, within 24 hours after the
push, to the public repository.
For information on how to access the public repository
see http://dev.mysql.com/doc/mysql/en/installing-source-tree.html
ChangeSet@stripped, 2008-04-18 10:19:46-03:00, davi@stripped +1 -0
Bug#32140: wrong error code caught when an SF() call is interruped with KILL query
The problem is that killing a query which calls a stored function
could return a wrong error (table corrupt) instead of the query
interrupted error message.
The solution is to not set the table corrupt error if the query
is killed, the query interrupted error message will be set later
when the query is finished.
sql/sp.cc@stripped, 2008-04-18 10:19:44-03:00, davi@stripped +3 -0
Don't set a error if the thread was killed, the query
interrupted error will be set later.
diff -Nrup a/sql/sp.cc b/sql/sp.cc
--- a/sql/sp.cc 2008-04-08 13:35:58 -03:00
+++ b/sql/sp.cc 2008-04-18 10:19:44 -03:00
@@ -1694,6 +1694,9 @@ sp_cache_routines_and_add_tables_aux(THD
ret= SP_OK;
break;
default:
+ /* Query might have been killed, don't set error. */
+ if (thd->killed)
+ break;
/*
Any error when loading an existing routine is either some problem
with the mysql.proc table, or a parse error because the contents