Commit bae820dc authored by unknown's avatar unknown

make LOAD INDEX to work

parent b39c0367
...@@ -71,15 +71,15 @@ int mi_preload(MI_INFO *info, ulonglong key_map, my_bool ignore_leaves) ...@@ -71,15 +71,15 @@ int mi_preload(MI_INFO *info, ulonglong key_map, my_bool ignore_leaves)
if (flush_key_blocks(share->key_cache,share->kfile, FLUSH_RELEASE)) if (flush_key_blocks(share->key_cache,share->kfile, FLUSH_RELEASE))
goto err; goto err;
do do
{ {
/* Read the next block of index file into the preload buffer */ /* Read the next block of index file into the preload buffer */
if ((my_off_t) length > (key_file_length-pos)) if ((my_off_t) length > (key_file_length-pos))
length= (ulong) (key_file_length-pos); length= (ulong) (key_file_length-pos);
if (my_pread(share->kfile, (byte*) buff, length, pos, MYF(MY_FAE))) if (my_pread(share->kfile, (byte*) buff, length, pos, MYF(MY_FAE|MY_FNABP)))
goto err; goto err;
if (ignore_leaves) if (ignore_leaves)
{ {
uchar *end= buff+length; uchar *end= buff+length;
...@@ -88,7 +88,7 @@ int mi_preload(MI_INFO *info, ulonglong key_map, my_bool ignore_leaves) ...@@ -88,7 +88,7 @@ int mi_preload(MI_INFO *info, ulonglong key_map, my_bool ignore_leaves)
if (mi_test_if_nod(buff)) if (mi_test_if_nod(buff))
{ {
if (key_cache_insert(share->key_cache, if (key_cache_insert(share->key_cache,
share->kfile, pos, DFLT_INIT_HITS, share->kfile, pos, DFLT_INIT_HITS,
(byte*) buff, block_length)) (byte*) buff, block_length))
goto err; goto err;
} }
......
...@@ -74,15 +74,15 @@ Table Op Msg_type Msg_text ...@@ -74,15 +74,15 @@ Table Op Msg_type Msg_text
test.t1 preload_keys status OK test.t1 preload_keys status OK
show status like "key_read%"; show status like "key_read%";
Variable_name Value Variable_name Value
Key_read_requests 0 Key_read_requests 581
Key_reads 0 Key_reads 581
select count(*) from t1 where b = 'test1'; select count(*) from t1 where b = 'test1';
count(*) count(*)
4181 4181
show status like "key_read%"; show status like "key_read%";
Variable_name Value Variable_name Value
Key_read_requests 217 Key_read_requests 798
Key_reads 45 Key_reads 581
flush tables; flush tables;
flush status; flush status;
show status like "key_read%"; show status like "key_read%";
...@@ -98,15 +98,15 @@ Table Op Msg_type Msg_text ...@@ -98,15 +98,15 @@ Table Op Msg_type Msg_text
test.t1 preload_keys status OK test.t1 preload_keys status OK
show status like "key_read%"; show status like "key_read%";
Variable_name Value Variable_name Value
Key_read_requests 0 Key_read_requests 10
Key_reads 0 Key_reads 10
select count(*) from t1 where b = 'test1'; select count(*) from t1 where b = 'test1';
count(*) count(*)
4181 4181
show status like "key_read%"; show status like "key_read%";
Variable_name Value Variable_name Value
Key_read_requests 217 Key_read_requests 227
Key_reads 45 Key_reads 52
flush tables; flush tables;
flush status; flush status;
show status like "key_read%"; show status like "key_read%";
...@@ -123,8 +123,8 @@ test.t1 preload_keys status OK ...@@ -123,8 +123,8 @@ test.t1 preload_keys status OK
test.t2 preload_keys status OK test.t2 preload_keys status OK
show status like "key_read%"; show status like "key_read%";
Variable_name Value Variable_name Value
Key_read_requests 0 Key_read_requests 587
Key_reads 0 Key_reads 587
select count(*) from t1 where b = 'test1'; select count(*) from t1 where b = 'test1';
count(*) count(*)
4181 4181
...@@ -133,8 +133,8 @@ count(*) ...@@ -133,8 +133,8 @@ count(*)
2584 2584
show status like "key_read%"; show status like "key_read%";
Variable_name Value Variable_name Value
Key_read_requests 351 Key_read_requests 938
Key_reads 73 Key_reads 613
flush tables; flush tables;
flush status; flush status;
show status like "key_read%"; show status like "key_read%";
...@@ -147,8 +147,8 @@ test.t3 preload_keys error Table 'test.t3' doesn't exist ...@@ -147,8 +147,8 @@ test.t3 preload_keys error Table 'test.t3' doesn't exist
test.t2 preload_keys status OK test.t2 preload_keys status OK
show status like "key_read%"; show status like "key_read%";
Variable_name Value Variable_name Value
Key_read_requests 0 Key_read_requests 355
Key_reads 0 Key_reads 355
flush tables; flush tables;
flush status; flush status;
show status like "key_read%"; show status like "key_read%";
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment