mirror of
https://github.com/MariaDB/server.git
synced 2026-04-25 17:55:31 +02:00
Merge adventure.(none):/home/thek/Development/cpp/bug28249/my50-bug28249
into adventure.(none):/home/thek/Development/cpp/mysql-5.0-runtime mysql-test/t/query_cache.test: Auto merged sql/ha_myisam.cc: Auto merged sql/handler.h: Auto merged mysql-test/r/query_cache.result: SCCS merged
This commit is contained in:
commit
5ee37c1439
5 changed files with 232 additions and 6 deletions
|
|
@ -843,16 +843,49 @@ public:
|
|||
|
||||
/* Type of table for caching query */
|
||||
virtual uint8 table_cache_type() { return HA_CACHE_TBL_NONTRANSACT; }
|
||||
/* ask handler about permission to cache table when query is to be cached */
|
||||
|
||||
|
||||
/**
|
||||
@brief Register a named table with a call back function to the query cache.
|
||||
|
||||
@param thd The thread handle
|
||||
@param table_key A pointer to the table name in the table cache
|
||||
@param key_length The length of the table name
|
||||
@param[out] engine_callback The pointer to the storage engine call back
|
||||
function
|
||||
@param[out] engine_data Storage engine specific data which could be
|
||||
anything
|
||||
|
||||
This method offers the storage engine, the possibility to store a reference
|
||||
to a table name which is going to be used with query cache.
|
||||
The method is called each time a statement is written to the cache and can
|
||||
be used to verify if a specific statement is cachable. It also offers
|
||||
the possibility to register a generic (but static) call back function which
|
||||
is called each time a statement is matched against the query cache.
|
||||
|
||||
@note If engine_data supplied with this function is different from
|
||||
engine_data supplied with the callback function, and the callback returns
|
||||
FALSE, a table invalidation on the current table will occur.
|
||||
|
||||
@return Upon success the engine_callback will point to the storage engine
|
||||
call back function, if any, and engine_data will point to any storage
|
||||
engine data used in the specific implementation.
|
||||
@retval TRUE Success
|
||||
@retval FALSE The specified table or current statement should not be
|
||||
cached
|
||||
*/
|
||||
|
||||
virtual my_bool register_query_cache_table(THD *thd, char *table_key,
|
||||
uint key_length,
|
||||
qc_engine_callback
|
||||
*engine_callback,
|
||||
ulonglong *engine_data)
|
||||
uint key_length,
|
||||
qc_engine_callback
|
||||
*engine_callback,
|
||||
ulonglong *engine_data)
|
||||
{
|
||||
*engine_callback= 0;
|
||||
return 1;
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
RETURN
|
||||
true Primary key (if there is one) is clustered key covering all fields
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue