summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorunknown <igor@rurik.mysql.com>2003-06-12 04:29:02 -0700
committerunknown <igor@rurik.mysql.com>2003-06-12 04:29:02 -0700
commitf7aed0240511510dfe51083bd7ff12482d8716bc (patch)
tree0a5a6a2ab9cef24b378ef32a9096714667680cc5 /include
parent767f0a9f0e124667275a3a4f4a4874974444b842 (diff)
downloadmariadb-git-f7aed0240511510dfe51083bd7ff12482d8716bc.tar.gz
Many files:
New feature: preload indexes into key cache. mi_preload.c: new file Many files: Added preload statement. sql/ha_myisam.h: Added preload statement. sql/handler.cc: Added preload statement. sql/lex.h: Added preload statement. sql/mysql_priv.h: Added preload statement. sql/sql_lex.h: Added preload statement. sql/sql_base.cc: Added preload statement. sql/sql_table.cc: New feature: preload indexes into key cache. sql/sql_parse.cc: New feature: preload indexes into key cache. sql/mysqld.cc: New feature: preload indexes into key cache. sql/set_var.cc: New feature: preload indexes into key cache. sql/sql_yacc.yy: New feature: preload indexes into key cache. sql/ha_myisam.cc: New feature: preload indexes into key cache. sql/table.h: New feature: preload indexes into key cache. mysys/mf_keycache.c: New feature: preload indexes into key cache. myisam/myisamdef.h: New feature: preload indexes into key cache. myisam/mi_extra.c: New feature: preload indexes into key cache. myisam/Makefile.am: New feature: preload indexes into key cache. include/my_base.h: New feature: preload indexes into key cache. include/my_sys.h: New feature: preload indexes into key cache. include/myisam.h: New feature: preload indexes into key cache.
Diffstat (limited to 'include')
-rw-r--r--include/my_base.h4
-rw-r--r--include/my_sys.h2
-rw-r--r--include/myisam.h1
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
}