diff options
author | igor@rurik.mysql.com <> | 2003-06-12 04:29:02 -0700 |
---|---|---|
committer | igor@rurik.mysql.com <> | 2003-06-12 04:29:02 -0700 |
commit | f547f2769f6419384d2def370d579e1d672dec5e (patch) | |
tree | 0a5a6a2ab9cef24b378ef32a9096714667680cc5 /include | |
parent | 7009100cde6a20913eee42f9dba6d81ad3014e70 (diff) | |
download | mariadb-git-f547f2769f6419384d2def370d579e1d672dec5e.tar.gz |
Many files:
New feature: preload indexes into key cache.
mi_preload.c:
new file
Many files:
Added preload statement.
Diffstat (limited to 'include')
-rw-r--r-- | include/my_base.h | 4 | ||||
-rw-r--r-- | include/my_sys.h | 2 | ||||
-rw-r--r-- | include/myisam.h | 1 |
3 files changed, 6 insertions, 1 deletions
diff --git a/include/my_base.h b/include/my_base.h index b806436fe0e..167c062deb5 100644 --- a/include/my_base.h +++ b/include/my_base.h @@ -123,7 +123,8 @@ enum ha_extra_function { HA_EXTRA_NO_IGNORE_DUP_KEY, HA_EXTRA_DONT_USE_CURSOR_TO_UPDATE, /* Cursor will not be used for update */ HA_EXTRA_PREPARE_FOR_DELETE, - HA_EXTRA_PREPARE_FOR_UPDATE /* Remove read cache if problems */ + HA_EXTRA_PREPARE_FOR_UPDATE, /* Remove read cache if problems */ + HA_EXTRA_PRELOAD_BUFFER_SIZE /* Set buffer size for preloading */ }; /* The following is parameter to ha_panic() */ @@ -255,6 +256,7 @@ enum ha_base_keytype { #define HA_ERR_CANNOT_ADD_FOREIGN 150 /* Cannot add a foreign key constr. */ #define HA_ERR_NO_REFERENCED_ROW 151 /* Cannot add a child row */ #define HA_ERR_ROW_IS_REFERENCED 152 /* Cannot delete a parent row */ +#define HA_ERR_NON_UNIQUE_BLOCK_SIZE 153 /* Non unique key block size */ /* Other constants */ diff --git a/include/my_sys.h b/include/my_sys.h index 86ca6ec6a1f..75a7627dc07 100644 --- a/include/my_sys.h +++ b/include/my_sys.h @@ -644,6 +644,8 @@ extern int init_key_cache(ulong use_mem); extern int resize_key_cache(ulong use_mem); extern byte *key_cache_read(File file,my_off_t filepos,byte* buff,uint length, uint block_length,int return_buffer); +extern int key_cache_insert(File file, my_off_t filepos, + byte *buff, uint length); extern int key_cache_write(File file,my_off_t filepos,byte* buff,uint length, uint block_length,int force_write); extern int flush_key_blocks(int file, enum flush_type type); diff --git a/include/myisam.h b/include/myisam.h index 33aa6aa3f31..e85d3057672 100644 --- a/include/myisam.h +++ b/include/myisam.h @@ -410,6 +410,7 @@ my_bool mi_test_if_sort_rep(MI_INFO *info, ha_rows rows, ulonglong key_map, int mi_init_bulk_insert(MI_INFO *info, ulong cache_size, ha_rows rows); void mi_flush_bulk_insert(MI_INFO *info, uint inx); void mi_end_bulk_insert(MI_INFO *info); +int mi_preload(MI_INFO *info, ulonglong key_map, my_bool ignore_leaves); #ifdef __cplusplus } |