diff options
author | unknown <istruewing@chilla.local> | 2007-06-11 19:25:12 +0200 |
---|---|---|
committer | unknown <istruewing@chilla.local> | 2007-06-11 19:25:12 +0200 |
commit | b6f1596972e85cbb49a9e76a16cdb53ffd3dc672 (patch) | |
tree | 215fc8c9bbac49d30e1c421aaa9b844023779204 /mysys/mf_keycache.c | |
parent | 73016f8f90edecb433e7ebbf09f0b261c19dce84 (diff) | |
parent | 5f26429db469128d189488fa161aedeb4eb7090a (diff) | |
download | mariadb-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.c | 11 |
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 { |