mirror of
https://github.com/MariaDB/server.git
synced 2025-07-30 16:24:05 +03:00
Merge with 4.1
BitKeeper/etc/logging_ok: auto-union configure.in: Auto merged include/config-win.h: Auto merged include/my_global.h: Auto merged mysql-test/r/drop.result: Auto merged mysys/default.c: Auto merged mysys/mf_keycache.c: Auto merged sql/field.h: Auto merged sql/item.h: Auto merged sql/item_func.cc: Auto merged sql/item_func.h: Auto merged sql/mysqld.cc: Auto merged BitKeeper/deleted/.del-errmsg.txt~f96b7055cac394e: Auto merged mysql-test/r/cast.result: Merge mysql-test/t/cast.test: Merge sql/sql_insert.cc: Merge sql/sql_select.cc: Merge
This commit is contained in:
@ -1025,8 +1025,8 @@ static void reg_requests(KEY_CACHE *keycache, BLOCK_LINK *block, int count)
|
||||
for a too long time (this time is determined by parameter age_threshold).
|
||||
*/
|
||||
|
||||
static inline void unreg_request(KEY_CACHE *keycache,
|
||||
BLOCK_LINK *block, int at_end)
|
||||
static void unreg_request(KEY_CACHE *keycache,
|
||||
BLOCK_LINK *block, int at_end)
|
||||
{
|
||||
if (! --block->requests)
|
||||
{
|
||||
@ -1045,10 +1045,13 @@ static inline void unreg_request(KEY_CACHE *keycache,
|
||||
}
|
||||
link_block(keycache, block, hot, (my_bool)at_end);
|
||||
block->last_hit_time= keycache->keycache_time;
|
||||
if (++keycache->keycache_time - keycache->used_ins->last_hit_time >
|
||||
keycache->keycache_time++;
|
||||
|
||||
block= keycache->used_ins;
|
||||
/* Check if we should link a hot block to the warm block */
|
||||
if (block && keycache->keycache_time - block->last_hit_time >
|
||||
keycache->age_threshold)
|
||||
{
|
||||
block= keycache->used_ins;
|
||||
unlink_block(keycache, block);
|
||||
link_block(keycache, block, 0, 0);
|
||||
if (block->temperature != BLOCK_WARM)
|
||||
|
Reference in New Issue
Block a user