summaryrefslogtreecommitdiff
path: root/mysys/mf_keycache.c
diff options
context:
space:
mode:
authorunknown <istruewing@chilla.local>2007-06-11 19:25:12 +0200
committerunknown <istruewing@chilla.local>2007-06-11 19:25:12 +0200
commitb6f1596972e85cbb49a9e76a16cdb53ffd3dc672 (patch)
tree215fc8c9bbac49d30e1c421aaa9b844023779204 /mysys/mf_keycache.c
parent73016f8f90edecb433e7ebbf09f0b261c19dce84 (diff)
parent5f26429db469128d189488fa161aedeb4eb7090a (diff)
downloadmariadb-git-b6f1596972e85cbb49a9e76a16cdb53ffd3dc672.tar.gz
Merge chilla.local:/home/mydev/mysql-5.1-amain
into chilla.local:/home/mydev/mysql-5.1-axmrg configure.in: Auto merged mysql-test/mysql-test-run.pl: Auto merged mysys/mf_keycache.c: Auto merged sql/ha_ndbcluster.cc: Auto merged
Diffstat (limited to 'mysys/mf_keycache.c')
-rw-r--r--mysys/mf_keycache.c11
1 files changed, 5 insertions, 6 deletions
diff --git a/mysys/mf_keycache.c b/mysys/mf_keycache.c
index 473aabe0c01..1fef8aac170 100644
--- a/mysys/mf_keycache.c
+++ b/mysys/mf_keycache.c
@@ -234,7 +234,7 @@ static void test_key_cache(KEY_CACHE *keycache,
#endif
#define KEYCACHE_HASH(f, pos) \
-(((ulong) ((pos) >> keycache->key_cache_shift)+ \
+(((ulong) ((pos) / keycache->key_cache_block_size) + \
(ulong) (f)) & (keycache->hash_entries-1))
#define FILE_HASH(f) ((uint) (f) & (CHANGED_BLOCKS_HASH-1))
@@ -402,7 +402,6 @@ int init_key_cache(KEY_CACHE *keycache, uint key_cache_block_size,
keycache->key_cache_mem_size= use_mem;
keycache->key_cache_block_size= key_cache_block_size;
- keycache->key_cache_shift= my_bit_log2(key_cache_block_size);
DBUG_PRINT("info", ("key_cache_block_size: %u",
key_cache_block_size));
@@ -425,7 +424,7 @@ int init_key_cache(KEY_CACHE *keycache, uint key_cache_block_size,
ALIGN_SIZE(hash_links * sizeof(HASH_LINK)) +
ALIGN_SIZE(sizeof(HASH_LINK*) *
keycache->hash_entries))) +
- ((ulong) blocks << keycache->key_cache_shift) > use_mem)
+ ((ulong) blocks * keycache->key_cache_block_size) > use_mem)
blocks--;
/* Allocate memory for cache page buffers */
if ((keycache->block_mem=
@@ -2561,7 +2560,7 @@ uchar *key_cache_read(KEY_CACHE *keycache,
inc_counter_for_resize_op(keycache);
locked_and_incremented= TRUE;
/* Requested data may not always be aligned to cache blocks. */
- offset= (uint) (filepos & (keycache->key_cache_block_size-1));
+ offset= (uint) (filepos % keycache->key_cache_block_size);
/* Read data in key_cache_block_size increments */
do
{
@@ -2759,7 +2758,7 @@ int key_cache_insert(KEY_CACHE *keycache,
inc_counter_for_resize_op(keycache);
locked_and_incremented= TRUE;
/* Loaded data may not always be aligned to cache blocks. */
- offset= (uint) (filepos & (keycache->key_cache_block_size-1));
+ offset= (uint) (filepos % keycache->key_cache_block_size);
/* Load data in key_cache_block_size increments. */
do
{
@@ -3033,7 +3032,7 @@ int key_cache_write(KEY_CACHE *keycache,
inc_counter_for_resize_op(keycache);
locked_and_incremented= TRUE;
/* Requested data may not always be aligned to cache blocks. */
- offset= (uint) (filepos & (keycache->key_cache_block_size-1));
+ offset= (uint) (filepos % keycache->key_cache_block_size);
/* Write data in key_cache_block_size increments. */
do
{