diff options
author | pem@mysql.comhem.se <> | 2005-02-08 20:52:50 +0100 |
---|---|---|
committer | pem@mysql.comhem.se <> | 2005-02-08 20:52:50 +0100 |
commit | 2c26ebe3594077cd90b95aaf591eaacc4eb2cdbe (patch) | |
tree | e0f8f8584de8f0be190160f0562d6a75d0039e60 /sql/sp.h | |
parent | 6e6daf818943e34d72017f64e496d6d94c90134f (diff) | |
download | mariadb-git-2c26ebe3594077cd90b95aaf591eaacc4eb2cdbe.tar.gz |
WL#2130: Table locking for stored FUNCTIONs
Collect all tables and SPs refered by a statement, and open all tables
with an implicit LOCK TABLES. Do find things refered by triggers and views,
we open them first (and then repeat this until nothing new is found), before
doing the actual lock tables.
Diffstat (limited to 'sql/sp.h')
-rw-r--r-- | sql/sp.h | 13 |
1 files changed, 7 insertions, 6 deletions
@@ -56,7 +56,7 @@ int sp_show_status_procedure(THD *thd, const char *wild); sp_head * -sp_find_function(THD *thd, sp_name *name); +sp_find_function(THD *thd, sp_name *name, bool cache_only = 0); int sp_create_function(THD *thd, sp_head *sp); @@ -77,14 +77,15 @@ bool sp_function_exists(THD *thd, sp_name *name); -// This is needed since we have to read the functions before we -// do anything else. +/* + * For precaching of functions and procedures + */ void -sp_add_fun_to_lex(LEX *lex, sp_name *fun); +sp_add_to_hash(HASH *h, sp_name *fun); void -sp_merge_funs(LEX *dst, LEX *src); +sp_merge_hash(HASH *dst, HASH *src); int -sp_cache_functions(THD *thd, LEX *lex); +sp_cache_routines(THD *thd, LEX *lex, int type); // |