diff options
Diffstat (limited to 'sql/handler.h')
-rw-r--r-- | sql/handler.h | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/sql/handler.h b/sql/handler.h index c24bf777f01..40773c67605 100644 --- a/sql/handler.h +++ b/sql/handler.h @@ -145,6 +145,7 @@ enum row_type { ROW_TYPE_NOT_USED=-1, ROW_TYPE_DEFAULT, ROW_TYPE_FIXED, #define HA_CREATE_USED_AVG_ROW_LENGTH 64 #define HA_CREATE_USED_PACK_KEYS 128 #define HA_CREATE_USED_CHARSET 256 +#define HA_CREATE_USED_DEFAULT_CHARSET 512 typedef struct st_thd_trans { void *bdb_tid; @@ -157,7 +158,7 @@ enum enum_tx_isolation { ISO_READ_UNCOMMITTED, ISO_READ_COMMITTED, typedef struct st_ha_create_information { - CHARSET_INFO *table_charset; + CHARSET_INFO *table_charset, *default_table_charset; char *comment,*password; char *data_file_name, *index_file_name; ulonglong max_rows,min_rows; @@ -180,15 +181,18 @@ typedef struct st_ha_create_information struct st_table; typedef struct st_table TABLE; +typedef struct st_key_cache_asmt KEY_CACHE_ASMT; typedef struct st_ha_check_opt { ulong sort_buffer_size; uint flags; /* isam layer flags (e.g. for myisamchk) */ uint sql_flags; /* sql layer flags - for something myisamchk cannot do */ + KEY_CACHE_VAR *key_cache; /* new key cache when changing key cache */ void init(); } HA_CHECK_OPT; + class handler :public Sql_alloc { protected: @@ -390,7 +394,7 @@ int ha_create_table(const char *name, HA_CREATE_INFO *create_info, bool update_create_info); int ha_delete_table(enum db_type db_type, const char *path); void ha_drop_database(char* path); -int ha_key_cache(KEY_CACHE_VAR *key_cache); +int ha_init_key_cache(const char *name, KEY_CACHE_VAR *key_cache); int ha_resize_key_cache(KEY_CACHE_VAR *key_cache); int ha_change_key_cache_param(KEY_CACHE_VAR *key_cache); int ha_end_key_cache(KEY_CACHE_VAR *key_cache); @@ -407,3 +411,5 @@ int ha_autocommit_or_rollback(THD *thd, int error); void ha_set_spin_retries(uint retries); bool ha_flush_logs(void); int ha_recovery_logging(THD *thd, bool on); +int ha_change_key_cache(KEY_CACHE_VAR *old_key_cache, + KEY_CACHE_VAR *new_key_cache); |