31#ifndef STORAGE_MYISAM_MYISAMDEF_INCLUDED
32#define STORAGE_MYISAM_MYISAMDEF_INCLUDED 1
117#define MI_STATE_INFO_SIZE (24 + 14 * 8 + 7 * 4 + 2 * 2 + 8)
118#define MI_STATE_KEY_SIZE 8
119#define MI_STATE_KEYBLOCK_SIZE 8
120#define MI_STATE_KEYSEG_SIZE 4
121#define MI_STATE_EXTRA_SIZE \
122 ((MI_MAX_KEY + MI_MAX_KEY_BLOCK_SIZE) * MI_STATE_KEY_SIZE + \
123 MI_MAX_KEY * MI_MAX_KEY_SEG * MI_STATE_KEYSEG_SIZE)
124#define MI_KEYDEF_SIZE (2 + 5 * 2)
125#define MI_UNIQUEDEF_SIZE (2 + 1 + 1)
126#define HA_KEYSEG_SIZE (6 + 2 * 2 + 4 * 2)
127#define MI_COLUMNDEF_SIZE (2 * 3 + 1)
128#define MI_BASE_INFO_SIZE (5 * 8 + 8 * 4 + 4 + 4 * 2 + 16)
129#define MI_INDEX_BLOCK_MARGIN 16
175#define MAX_NONMAPPED_INSERTS 1000
376#define USE_WHOLE_KEY MI_MAX_KEY_BUFF * 2
377#define F_EXTRA_LCK -1
380#define MEMMAP_USED 32
381#define REMEMBER_OLD_POS 64
383#define WRITEINFO_UPDATE_KEYFILE 1
384#define WRITEINFO_NO_UNLOCK 2
387#define USE_PACKED_KEYS 1
388#define RRND_PRESERVE_LASTINX 2
392#define STATE_CHANGED 1
393#define STATE_CRASHED 2
394#define STATE_CRASHED_ON_REPAIR 4
395#define STATE_NOT_ANALYZED 8
396#define STATE_NOT_OPTIMIZED_KEYS 16
397#define STATE_NOT_SORTED_PAGES 32
401#define READING_NEXT 1
402#define READING_HEADER 2
404#define mi_getint(x) ((uint)mi_uint2korr(x) & 32767)
405#define mi_putint(x, y, nod) \
407 uint16 boh = (nod ? (uint16)32768 : 0) + (uint16)(y); \
408 mi_int2store(x, boh); \
410#define mi_test_if_nod(x) (x[0] & 128 ? info->s->base.key_reflength : 0)
411#define mi_report_crashed(A, B) _mi_report_crashed((A), (B), __FILE__, __LINE__)
412#define mi_mark_crashed(x) \
414 (x)->s->state.changed |= STATE_CRASHED; \
415 DBUG_PRINT("error", ("Marked table crashed")); \
416 mi_report_crashed((x), 0); \
418#define mi_mark_crashed_on_repair(x) \
420 (x)->s->state.changed |= STATE_CRASHED | STATE_CRASHED_ON_REPAIR; \
421 (x)->update |= HA_STATE_CHANGED; \
422 DBUG_PRINT("error", ("Marked table crashed")); \
424#define mi_is_crashed(x) ((x)->s->state.changed & STATE_CRASHED)
425#define mi_is_crashed_on_repair(x) \
426 ((x)->s->state.changed & STATE_CRASHED_ON_REPAIR)
427#define mi_print_error(SHARE, ERRNO) \
428 mi_report_error((ERRNO), (SHARE)->index_file_name)
432#define store_key_length(key, length) \
434 if ((length) < 255) { \
438 mi_int2store((key) + 1, (length)); \
442#define get_key_full_length(length, key) \
444 if ((uchar) * (key) != 255) \
445 length = ((uint)(uchar) * ((key)++)) + 1; \
447 length = mi_uint2korr((key) + 1) + 3; \
452#define get_key_full_length_rdonly(length, key) \
454 if ((uchar) * (key) != 255) \
455 length = ((uint)(uchar) * ((key))) + 1; \
457 length = mi_uint2korr((key) + 1) + 3; \
461#define get_pack_length(length) ((length) >= 255 ? 3 : 1)
463#define MI_MIN_BLOCK_LENGTH 20U
464#define MI_EXTEND_BLOCK_LENGTH 20
465#define MI_SPLIT_LENGTH ((MI_EXTEND_BLOCK_LENGTH + 4) * 2)
466#define MI_MAX_DYN_BLOCK_HEADER 20
467#define MI_BLOCK_INFO_HEADER_LENGTH 20
468#define MI_DYN_DELETE_BLOCK_HEADER 20
469#define MI_DYN_MAX_BLOCK_LENGTH ((1L << 24) - 4L)
470#define MI_DYN_MAX_ROW_LENGTH (MI_DYN_MAX_BLOCK_LENGTH - MI_SPLIT_LENGTH)
471#define MI_DYN_ALIGN_SIZE 4
472#define MI_MAX_DYN_HEADER_BYTE 13
473#define MI_MAX_BLOCK_LENGTH \
474 ((((ulong)1 << 24) - 1) & (~(ulong)(MI_DYN_ALIGN_SIZE - 1)))
475#define MI_REC_BUFF_OFFSET \
476 ALIGN_SIZE(MI_DYN_DELETE_BLOCK_HEADER + sizeof(uint32))
478#define PACK_TYPE_SELECTED 1
479#define PACK_TYPE_SPACE_FIELDS 2
480#define PACK_TYPE_ZERO_FILL 4
481#define MI_FOUND_WRONG_KEY 32738
483#define MI_MAX_KEY_BLOCK_SIZE \
484 (MI_MAX_KEY_BLOCK_LENGTH / MI_MIN_KEY_BLOCK_LENGTH)
485#define MI_BLOCK_SIZE(key_length, data_pointer, key_pointer, block_size) \
486 (((((key_length) + (data_pointer) + (key_pointer)) * 4 + (key_pointer) + \
491#define MI_MAX_KEYPTR_SIZE 5
492#define MI_MIN_KEYBLOCK_LENGTH 50
494#define MI_MIN_SIZE_BULK_INSERT_TREE 16384
495#define MI_MIN_ROWS_TO_USE_BULK_INSERT 100
496#define MI_MIN_ROWS_TO_DISABLE_INDEXES 100
497#define MI_MIN_ROWS_TO_USE_WRITE_CACHE 10
501#define MI_UNIQUE_HASH_TYPE HA_KEYTYPE_ULONG_INT
502#define mi_unique_store(A, B) mi_int4store((A), (B))
554 my_off_t father_page,
bool insert_last);
556 uchar *buff,
uchar *key_buff,
bool insert_last);
595 uchar **ret_pos,
uchar *buff,
bool *was_last_key);
598 uchar **ret_pos,
uchar *buff,
bool *was_last_key);
601 uchar **ret_pos,
uchar *buff,
bool *was_last_key);
615 uint *return_key_length);
630 int level,
uchar *buff);
645#define mi_get_rec_buff_ptr(info, buf) \
646 ((((info)->s->options & HA_OPTION_PACK_RECORD) && (buf)) \
647 ? (buf)-MI_REC_BUFF_OFFSET \
649#define mi_get_rec_buff_len(info, buf) \
650 (*((uint32 *)(mi_get_rec_buff_ptr(info, buf))))
655 ulong packed_length,
bool with_checkum);
692#define BLOCK_DELETED 4
694#define BLOCK_SYNC_ERROR 16
695#define BLOCK_FATAL_ERROR 32
698 ((uint)10 * 4 * (IO_SIZE + 32) + 32)
701#define BUFFERS_WHEN_SORTING 16
702#define MY_HOW_OFTEN_TO_WRITE 1000
703#define WRITE_COUNT MY_HOW_OFTEN_TO_WRITE
704#define INDEX_TMP_EXT ".TMM"
705#define DATA_TMP_EXT ".TMD"
710#define UPDATE_AUTO_INC 8
711#define UPDATE_OPEN_COUNT 16
713#define USE_BUFFER_INIT (((1024L * 512L - MALLOC_OVERHEAD) / IO_SIZE) * IO_SIZE)
714#define READ_BUFFER_INIT (1024L * 256L - MALLOC_OVERHEAD)
715#define SORT_BUFFER_INIT (2048L * 1024L - MALLOC_OVERHEAD)
716#define MIN_SORT_BUFFER (4096ULL - MALLOC_OVERHEAD)
729#define myisam_log(a, b, c, d) \
730 if (myisam_log_file >= 0) _myisam_log(a, b, c, d)
731#define myisam_log_command(a, b, c, d, e) \
732 if (myisam_log_file >= 0) _myisam_log_command(a, b, c, d, e)
733#define myisam_log_record(a, b, c, d, e) \
734 if (myisam_log_file >= 0) _myisam_log_record(a, b, c, d, e)
736#define fast_mi_writeinfo(INFO) \
737 if (!(INFO)->s->tot_locks) (void)_mi_writeinfo((INFO), 0)
738#define fast_mi_readinfo(INFO) \
739 ((INFO)->lock_type == F_UNLCK) && _mi_readinfo((INFO), F_RDLCK, 1)
800 bool null_are_equal);
825 MY_ATTRIBUTE((format(printf, 2, 3)));
827 MY_ATTRIBUTE((format(printf, 2, 3)));
829 MY_ATTRIBUTE((format(printf, 2, 3)));
845#ifdef HAVE_PSI_INTERFACE
int page
Definition: ctype-mb.cc:1236
ulonglong unique_hash(const Field *field, ulonglong *hash_val)
Generate hash for a field.
Definition: sql_executor.cc:3993
unsigned int PSI_cond_key
Instrumented cond key.
Definition: psi_cond_bits.h:44
unsigned int PSI_file_key
Instrumented file key.
Definition: psi_file_bits.h:48
unsigned int PSI_memory_key
Instrumented memory key.
Definition: psi_memory_bits.h:49
unsigned int PSI_mutex_key
Instrumented mutex key.
Definition: psi_mutex_bits.h:52
unsigned int PSI_rwlock_key
Instrumented rwlock key.
Definition: psi_rwlock_bits.h:44
unsigned int PSI_thread_key
Instrumented thread key.
Definition: psi_thread_bits.h:50
static int flag
Definition: hp_test1.cc:40
static int reclength
Definition: hp_test2.cc:49
Instrumentation helpers for mysys threads.
This file follows Google coding style, except for the name MEM_ROOT (which is kept for historical rea...
data_file_type
Definition: my_base.h:1069
ha_rkey_function
Definition: my_base.h:78
ulong key_part_map
Definition: my_base.h:1007
my_off_t ha_rows
Definition: my_base.h:1140
Abstraction functions over zlib/intrinsics.
std::uint32_t ha_checksum
Definition: my_checksum.h:106
enum icp_result ICP_RESULT
Values returned by index_cond_func_xxx functions.
int myf
Definition: my_inttypes.h:94
unsigned long long int ulonglong
Definition: my_inttypes.h:56
uint8_t uint8
Definition: my_inttypes.h:63
ulonglong my_off_t
Definition: my_inttypes.h:72
unsigned char uchar
Definition: my_inttypes.h:52
uint16_t uint16
Definition: my_inttypes.h:65
uint32_t uint32
Definition: my_inttypes.h:67
int File
Definition: my_io_bits.h:51
Some macros for dealing with pointer arithmetic, e.g., aligning of buffers to a given size.
This file should be included when using myisam functions.
#define MI_MAX_KEY_SEG
Definition: myisam.h:65
void _mi_print_key(FILE *stream, HA_KEYSEG *keyseg, const uchar *key, uint length)
Definition: mi_dbug.cc:34
uint myisam_quick_table_bits
Definition: mi_static.cc:56
PSI_memory_key mi_key_memory_ft_stopwords
Definition: mi_static.cc:106
size_t mi_nommap_pread(MI_INFO *info, uchar *Buffer, size_t Count, my_off_t offset, myf MyFlags)
Definition: mi_dynrec.cc:194
int _mi_decrement_open_count(MI_INFO *info)
Definition: mi_locking.cc:501
int flush_pending_blocks(MI_SORT_PARAM *param)
Definition: mi_check.cc:3244
ulong myisam_pid
Definition: mi_log.cc:48
int mi_munmap_file(MI_INFO *info)
Definition: mi_dynrec.cc:125
uint mi_uniquedef_write(File file, MI_UNIQUEDEF *keydef)
Definition: mi_open.cc:1173
PSI_memory_key mi_key_memory_FTPARSER_PARAM
Definition: mi_static.cc:104
int _mi_read_cache(IO_CACHE *info, uchar *buff, my_off_t pos, uint length, int re_read_if_possibly)
Definition: mi_cache.cc:53
void init_myisam_psi_keys()
Definition: mi_static.cc:202
uint _mi_get_block_info(MI_BLOCK_INFO *, File, my_off_t)
Definition: mi_dynrec.cc:1642
myisam_log_commands
Definition: myisamdef.h:717
@ MI_LOG_EXTRA
Definition: myisamdef.h:723
@ MI_LOG_UPDATE
Definition: myisamdef.h:720
@ MI_LOG_DELETE_ALL
Definition: myisamdef.h:725
@ MI_LOG_DELETE
Definition: myisamdef.h:721
@ MI_LOG_OPEN
Definition: myisamdef.h:718
@ MI_LOG_LOCK
Definition: myisamdef.h:724
@ MI_LOG_WRITE
Definition: myisamdef.h:719
@ MI_LOG_CLOSE
Definition: myisamdef.h:722
int flush_blocks(MI_CHECK *param, KEY_CACHE *key_cache, File file)
Definition: mi_check.cc:1738
void _myisam_log_record(enum myisam_log_commands command, MI_INFO *info, const uchar *record, my_off_t filepos, int result)
Definition: mi_log.cc:116
PSI_file_key mi_key_file_kfile
Definition: myisamdef.h:853
int _mi_update_static_record(MI_INFO *, my_off_t, const uchar *)
Definition: mi_statrec.cc:88
uchar * mi_recinfo_read(uchar *ptr, MI_COLUMNDEF *recinfo)
Definition: mi_open.cc:1210
size_t mi_nommap_pwrite(MI_INFO *info, const uchar *Buffer, size_t Count, my_off_t offset, myf MyFlags)
Definition: mi_dynrec.cc:240
thread_local st_keycache_thread_var * keycache_tls
Definition: mi_static.cc:68
PSI_file_key mi_key_file_datatmp
Definition: mi_static.cc:147
int _mi_pack_rec_unpack(MI_INFO *info, MI_BIT_BUFF *bit_buff, uchar *to, uchar *from, ulong reclength)
Definition: mi_packrec.cc:700
ha_checksum mi_checksum(MI_INFO *info, const uchar *buf)
Definition: mi_checksum.cc:33
uchar * _mi_get_last_key(MI_INFO *info, MI_KEYDEF *keyinfo, uchar *keypos, uchar *lastkey, uchar *endpos, uint *return_key_length)
Definition: mi_search.cc:1010
PSI_memory_key mi_key_memory_MI_INFO_bulk_insert
Definition: mi_static.cc:100
void _mi_store_var_pack_key(MI_KEYDEF *keyinfo, uchar *key_pos, MI_KEY_PARAM *s_temp)
Definition: mi_search.cc:1643
bool _mi_memmap_file(MI_INFO *info)
Definition: mi_packrec.cc:1339
my_off_t _mi_kpos(uint nod_flag, uchar *after_key)
Definition: mi_search.cc:515
bool _mi_read_pack_info(MI_INFO *info, bool fix_keys)
Definition: mi_packrec.cc:154
int _mi_enlarge_root(MI_INFO *info, MI_KEYDEF *keyinfo, uchar *key, my_off_t *root)
Definition: mi_write.cc:264
bool _mi_rec_check(MI_INFO *info, const uchar *record, uchar *packpos, ulong packed_length, bool with_checkum)
Definition: mi_dynrec.cc:955
PSI_memory_key mi_key_memory_FT_INFO
Definition: mi_static.cc:103
PSI_memory_key mi_key_memory_SORT_INFO_buffer
Definition: mi_static.cc:112
uint myisam_read_vec[]
Definition: mi_static.cc:79
PSI_mutex_key mi_key_mutex_MYISAM_SHARE_intern_lock
Definition: mi_static.cc:120
uint mi_base_info_write(File file, MI_BASE_INFO *base)
Definition: mi_open.cc:972
PSI_memory_key mi_key_memory_stPageList_pages
Definition: mi_static.cc:116
PSI_memory_key mi_key_memory_preload_buffer
Definition: mi_static.cc:115
int mi_unique_comp(MI_UNIQUEDEF *def, const uchar *a, const uchar *b, bool null_are_equal)
Definition: mi_unique.cc:143
void mi_restore_status(void *param)
Definition: mi_locking.cc:319
int _mi_read_rnd_dynamic_record(MI_INFO *, uchar *, my_off_t, bool)
Definition: mi_dynrec.cc:1481
int _mi_update_dynamic_record(MI_INFO *, my_off_t, const uchar *)
Definition: mi_dynrec.cc:250
int mi_open_datafile(MI_INFO *info, MYISAM_SHARE *share, const char *orn_name, File file_to_dup)
Definition: mi_open.cc:1230
int _mi_ft_update(MI_INFO *info, uint keynr, uchar *keybuf, const uchar *oldrec, const uchar *newrec, my_off_t pos)
Definition: ft_update.cc:187
uchar * mi_state_info_read(uchar *ptr, MI_STATE_INFO *state)
Definition: mi_open.cc:880
void mi_check_print_warning(MI_CHECK *param, const char *fmt,...)
Definition: ha_myisam.cc:575
PSI_memory_key mi_key_memory_MI_SORT_PARAM_wordroot
Definition: mi_static.cc:108
int mi_check_index_cond(MI_INFO *info, uint keynr, uchar *record)
Definition: mi_key.cc:422
PSI_memory_key mi_key_memory_record_buffer
Definition: mi_static.cc:101
mysql_mutex_t THR_LOCK_myisam
Definition: my_thr_init.cc:73
uchar * my_n_base_info_read(uchar *ptr, MI_BASE_INFO *base)
Definition: mi_open.cc:1021
void _myisam_log_command(enum myisam_log_commands command, MI_INFO *info, const uchar *buffert, uint length, int result)
Definition: mi_log.cc:96
uchar * mi_uniquedef_read(uchar *ptr, MI_UNIQUEDEF *keydef)
Definition: mi_open.cc:1185
void _mi_unmap_file(MI_INFO *info)
Definition: mi_packrec.cc:1387
int mi_open_keyfile(MYISAM_SHARE *share)
Definition: mi_open.cc:1260
uint mi_recinfo_write(File file, MI_COLUMNDEF *recinfo)
Definition: mi_open.cc:1196
uchar * _mi_fetch_keypage(MI_INFO *info, MI_KEYDEF *keyinfo, my_off_t page, int level, uchar *buff, int return_buffer)
Definition: mi_page.cc:37
void _mi_store_static_key(MI_KEYDEF *keyinfo, uchar *key_pos, MI_KEY_PARAM *s_temp)
Definition: mi_search.cc:1626
int _mi_write_part_record(MI_INFO *info, my_off_t filepos, ulong length, my_off_t next_filepos, uchar **record, ulong *reclength, int *flag)
Definition: mi_dynrec.cc:544
void _mi_report_crashed(MI_INFO *file, const char *message, const char *sfile, uint sline)
Report list of threads (and queries) accessing a table, thread_id of a thread that detected corruptio...
Definition: ha_myisam.cc:597
void _mi_store_blob_length(uchar *pos, uint pack_length, uint length)
Definition: mi_dynrec.cc:1182
int _mi_read_rnd_static_record(MI_INFO *, uchar *, my_off_t, bool)
Definition: mi_statrec.cc:174
void _mi_kpointer(MI_INFO *info, uchar *buff, my_off_t pos)
Definition: mi_search.cc:540
int _mi_ck_write(MI_INFO *info, uint keynr, uchar *key, uint length)
Definition: mi_write.cc:209
PSI_memory_key mi_key_memory_SORT_FT_BUF
Definition: mi_static.cc:109
void _mi_dpointer(MI_INFO *info, uchar *buff, my_off_t pos)
Definition: mi_search.cc:651
PSI_memory_key mi_key_memory_keycache_thread_var
Definition: mi_static.cc:117
int _mi_seq_search(MI_INFO *info, MI_KEYDEF *keyinfo, uchar *page, uchar *key, uint key_len, uint comp_flag, uchar **ret_pos, uchar *buff, bool *was_last_key)
Definition: mi_search.cc:240
#define MI_BLOCK_INFO_HEADER_LENGTH
Definition: myisamdef.h:467
uchar myisam_file_magic[]
Definition: mi_static.cc:42
int _mi_read_pack_record(MI_INFO *info, my_off_t filepos, uchar *buf)
Definition: mi_packrec.cc:677
int _mi_write_blob_record(MI_INFO *, const uchar *)
Definition: mi_dynrec.cc:256
bool mi_dynmap_file(MI_INFO *info, my_off_t size)
Definition: mi_dynrec.cc:79
ulonglong mi_safe_mul(ulonglong a, ulonglong b)
Definition: mi_open.cc:693
uint myisam_readnext_vec[]
Definition: myisamdef.h:514
uint mi_bit_type
Definition: myisamdef.h:241
int _mi_update_blob_record(MI_INFO *, my_off_t, const uchar *)
Definition: mi_dynrec.cc:281
MI_INFO * test_if_reopen(char *filename)
Definition: mi_open.cc:80
uint _mi_get_binary_pack_key(MI_KEYDEF *keyinfo, uint nod_flag, uchar **page_pos, uchar *key)
Definition: mi_search.cc:822
int mi_keyseg_write(File file, const HA_KEYSEG *keyseg)
Definition: mi_open.cc:1118
void mi_setup_functions(MYISAM_SHARE *share)
Definition: mi_open.cc:702
PSI_memory_key mi_key_memory_MI_INFO_ft1_to_ft2
Definition: mi_static.cc:99
File myisam_log_file
Definition: mi_static.cc:55
int _mi_calc_bin_pack_key_length(MI_KEYDEF *keyinfo, uint nod_flag, const uchar *key_pos, uchar *org_key, uchar *prev_key, const uchar *key, MI_KEY_PARAM *s_temp)
Definition: mi_search.cc:1551
uint mi_state_info_write(File file, MI_STATE_INFO *state, uint pWrite)
Definition: mi_open.cc:795
PSI_memory_key key_memory_QUEUE
Definition: mi_static.cc:118
int _mi_readinfo(MI_INFO *info, int lock_flag, int check_keybuffer)
Definition: mi_locking.cc:369
PSI_memory_key mi_key_memory_MYISAM_SHARE_decode_tables
Definition: mi_static.cc:114
bool mi_check_status(void *param)
Definition: mi_locking.cc:350
int _mi_ck_real_write_btree(MI_INFO *info, MI_KEYDEF *keyinfo, uchar *key, uint key_length, my_off_t *root, uint comp_flag)
Definition: mi_write.cc:249
PSI_rwlock_key mi_key_rwlock_MYISAM_SHARE_key_root_lock
Definition: mi_static.cc:128
int _mi_write_keypage(MI_INFO *info, MI_KEYDEF *keyinfo, my_off_t page, int level, uchar *buff)
Definition: mi_page.cc:73
void mi_set_index_cond_func(MI_INFO *info, index_cond_func_t func, void *func_arg)
Definition: mi_extra.cc:211
void mi_report_error(int errcode, const char *file_name)
Definition: mi_info.cc:125
int _mi_delete_dynamic_record(MI_INFO *info)
Definition: mi_dynrec.cc:303
my_off_t _mi_dpos(MI_INFO *info, uint nod_flag, const uchar *after_key)
Definition: mi_search.cc:571
uchar * mi_keydef_read(uchar *ptr, MI_KEYDEF *keydef)
Definition: mi_open.cc:1092
int _mi_calc_static_key_length(MI_KEYDEF *keyinfo, uint nod_flag, const uchar *key_pos, uchar *org_key, uchar *key_buff, const uchar *key, MI_KEY_PARAM *s_temp)
Definition: mi_search.cc:1265
void mi_check_print_info(MI_CHECK *param, const char *fmt,...)
Definition: ha_myisam.cc:568
int _mi_write_static_record(MI_INFO *, const uchar *)
Definition: mi_statrec.cc:35
uint _mi_pack_key(MI_INFO *info, uint keynr, uchar *key, const uchar *old, key_part_map keypart_map, HA_KEYSEG **last_used_keyseg)
Definition: mi_key.cc:197
void mi_remap_file(MI_INFO *info, my_off_t size)
Definition: mi_dynrec.cc:148
int _mi_bin_search(MI_INFO *info, MI_KEYDEF *keyinfo, uchar *page, uchar *key, uint key_len, uint comp_flag, uchar **ret_pos, uchar *buff, bool *was_last_key)
Definition: mi_search.cc:181
int _mi_read_static_record(MI_INFO *info, my_off_t filepos, uchar *buf)
Definition: mi_statrec.cc:148
uint mi_state_info_read_dsk(File file, MI_STATE_INFO *state, bool pRead)
Definition: mi_open.cc:954
int _mi_insert(MI_INFO *info, MI_KEYDEF *keyinfo, uchar *key, uchar *anc_buff, uchar *key_pos, uchar *key_buff, uchar *father_buff, uchar *father_keypos, my_off_t father_page, bool insert_last)
Definition: mi_write.cc:405
int _mi_cmp_static_record(MI_INFO *info, const uchar *record)
Definition: mi_statrec.cc:107
PSI_cond_key mi_key_cond_MI_SORT_INFO_cond
PSI_memory_key mi_key_memory_MI_DECODE_TREE
Definition: mi_static.cc:113
int _mi_write_dynamic_record(MI_INFO *, const uchar *)
Definition: mi_dynrec.cc:245
uint mi_keydef_write(File file, MI_KEYDEF *keydef)
Definition: mi_open.cc:1073
uchar * _mi_move_key(MI_KEYDEF *keyinfo, uchar *to, const uchar *from)
Definition: mi_search.cc:1092
uint _mi_get_pack_key(MI_KEYDEF *keyinfo, uint nod_flag, uchar **page, uchar *key)
Definition: mi_search.cc:713
void _mi_store_bin_pack_key(MI_KEYDEF *keyinfo, uchar *key_pos, MI_KEY_PARAM *s_temp)
Definition: mi_search.cc:1691
int mi_disable_indexes(MI_INFO *info)
Definition: mi_open.cc:1282
int _mi_calc_var_pack_key_length(MI_KEYDEF *keyinfo, uint nod_flag, const uchar *key_pos, uchar *org_key, uchar *prev_key, const uchar *key, MI_KEY_PARAM *s_temp)
Definition: mi_search.cc:1304
ha_checksum mi_static_checksum(MI_INFO *info, const uchar *buf)
Definition: mi_checksum.cc:68
int sort_write_record(MI_SORT_PARAM *sort_param)
Definition: mi_check.cc:2809
my_off_t _mi_new(MI_INFO *info, MI_KEYDEF *keyinfo, int level)
Definition: mi_page.cc:120
ha_checksum mi_unique_hash(MI_UNIQUEDEF *def, const uchar *buf)
Definition: mi_unique.cc:84
void _myisam_log(enum myisam_log_commands command, MI_INFO *info, const uchar *buffert, uint length)
Definition: mi_log.cc:75
int _mi_dispose(MI_INFO *info, MI_KEYDEF *keyinfo, my_off_t pos, int level)
Definition: mi_page.cc:102
int _mi_read_rnd_pack_record(MI_INFO *, uchar *, my_off_t, bool)
Definition: mi_packrec.cc:1168
bool mi_check_unique(MI_INFO *info, MI_UNIQUEDEF *def, uchar *record, ha_checksum unique_hash, my_off_t pos)
Definition: mi_unique.cc:37
int _mi_search_first(MI_INFO *info, MI_KEYDEF *keyinfo, my_off_t pos)
Definition: mi_search.cc:1176
void mi_copy_status(void *to, void *from)
Definition: mi_locking.cc:325
PSI_cond_key mi_keycache_thread_var_suspend
Definition: myisamdef.h:851
void mi_get_status(void *param, int concurrent_insert)
Definition: mi_locking.cc:262
int _mi_cmp_dynamic_unique(MI_INFO *info, MI_UNIQUEDEF *def, const uchar *record, my_off_t pos)
Definition: mi_dynrec.cc:1328
int _mi_cmp_dynamic_record(MI_INFO *info, const uchar *record)
Definition: mi_dynrec.cc:1354
PSI_thread_key mi_key_thread_find_all_keys
Definition: mi_static.cc:158
int mi_enable_indexes(MI_INFO *info)
Definition: mi_open.cc:1308
uint calc_pack_length(uint version, ulong length)
Definition: mi_packrec.cc:1510
PSI_memory_key mi_key_memory_FTB
Definition: mi_static.cc:102
my_off_t _mi_rec_pos(MYISAM_SHARE *info, uchar *ptr)
Definition: mi_search.cc:607
PSI_file_key mi_key_file_log
Definition: myisamdef.h:854
int sort_ft_buf_flush(MI_SORT_PARAM *sort_param)
Definition: mi_check.cc:2979
PSI_memory_key mi_key_memory_MYISAM_SHARE
Definition: mi_static.cc:97
bool check_table_is_closed(const char *name, const char *where)
ulonglong retrieve_auto_increment(MI_INFO *info, const uchar *record)
Definition: mi_key.cc:444
uint _mi_keylength_part(MI_KEYDEF *keyinfo, const uchar *key, HA_KEYSEG *end)
Definition: mi_search.cc:1074
size_t mi_mmap_pread(MI_INFO *info, uchar *Buffer, size_t Count, my_off_t offset, myf MyFlags)
Definition: mi_dynrec.cc:170
int _mi_search_last(MI_INFO *info, MI_KEYDEF *keyinfo, my_off_t pos)
Definition: mi_search.cc:1215
uchar myisam_pack_file_magic[]
Definition: myisamdef.h:513
int _mi_read_key_record(MI_INFO *info, my_off_t filepos, uchar *buf)
Definition: mi_key.cc:388
uint save_pack_length(uint version, uchar *block_buff, ulong length)
Definition: mi_packrec.cc:1470
int _mi_read_dynamic_record(MI_INFO *info, my_off_t filepos, uchar *buf)
Definition: mi_dynrec.cc:1233
int _mi_calc_var_key_length(MI_KEYDEF *keyinfo, uint nod_flag, const uchar *key_pos, uchar *org_key, uchar *key_buff, const uchar *key, MI_KEY_PARAM *s_temp)
Definition: mi_search.cc:1276
uchar * mi_keyseg_read(uchar *ptr, HA_KEYSEG *keyseg)
Definition: mi_open.cc:1142
int mi_indexes_are_disabled(MI_INFO *info)
Definition: mi_open.cc:1337
int _mi_split_page(MI_INFO *info, MI_KEYDEF *keyinfo, uchar *key, uchar *buff, uchar *key_buff, bool insert_last)
Definition: mi_write.cc:517
PSI_file_key mi_key_file_dfile
Definition: myisamdef.h:853
size_t mi_mmap_pwrite(MI_INFO *info, const uchar *Buffer, size_t Count, my_off_t offset, myf MyFlags)
Definition: mi_dynrec.cc:215
PSI_memory_key mi_key_memory_ft_memroot
Definition: mi_static.cc:105
int _mi_prefix_search(MI_INFO *info, MI_KEYDEF *keyinfo, uchar *page, uchar *key, uint key_len, uint comp_flag, uchar **ret_pos, uchar *buff, bool *was_last_key)
Definition: mi_search.cc:278
LIST * myisam_open_list
Definition: mi_static.cc:41
int _mi_mark_file_changed(MI_INFO *info)
Definition: mi_locking.cc:474
ulong _my_calc_total_blob_length(MI_INFO *info, const uchar *record)
Definition: mi_dynrec.cc:1153
uchar * _mi_get_key(MI_INFO *info, MI_KEYDEF *keyinfo, uchar *page, uchar *key, uchar *keypos, uint *return_key_length)
Definition: mi_search.cc:952
PSI_memory_key mi_key_memory_MI_INFO
Definition: mi_static.cc:98
size_t _mi_rec_unpack(MI_INFO *info, uchar *to, const uchar *from, ulong reclength)
Definition: mi_dynrec.cc:1046
int _mi_check_index(MI_INFO *info, int inx)
Definition: mi_search.cc:46
uint _mi_keylength(MI_KEYDEF *keyinfo, const uchar *key)
Definition: mi_search.cc:1046
int _mi_test_if_changed(MI_INFO *info)
Definition: mi_locking.cc:435
PSI_memory_key mi_key_memory_filecopy
Definition: mi_static.cc:111
PSI_rwlock_key mi_key_rwlock_MYISAM_SHARE_mmap_lock
Definition: myisamdef.h:848
int _create_index_by_sort(MI_SORT_PARAM *info, bool no_messages, ulonglong)
Definition: sort.cc:109
ICP_RESULT(* index_cond_func_t)(void *param)
Definition: myisamdef.h:250
PSI_memory_key mi_key_memory_MI_SORT_PARAM
Definition: mi_static.cc:107
volatile int * killed_ptr(MI_CHECK *param)
Definition: ha_myisam.cc:554
PSI_memory_key mi_key_memory_SORT_KEY_BLOCKS
Definition: mi_static.cc:110
uint _mi_pack_get_block_info(MI_INFO *myisam, MI_BIT_BUFF *bit_buff, MI_BLOCK_INFO *info, uchar **rec_buff_p, File file, my_off_t filepos)
Definition: mi_packrec.cc:1222
void mi_check_print_error(MI_CHECK *param, const char *fmt,...)
Definition: ha_myisam.cc:559
int _mi_cmp_static_unique(MI_INFO *info, MI_UNIQUEDEF *def, const uchar *record, my_off_t pos)
Definition: mi_statrec.cc:132
int _mi_search_next(MI_INFO *info, MI_KEYDEF *keyinfo, uchar *key, uint key_length, uint nextflag, my_off_t pos)
Definition: mi_search.cc:1101
uint read_pack_length(uint version, const uchar *buf, ulong *length)
Definition: mi_packrec.cc:1492
uint _mi_make_key(MI_INFO *info, uint keynr, uchar *key, const uchar *record, my_off_t filepos)
Definition: mi_key.cc:63
int _mi_delete_static_record(MI_INFO *info)
Definition: mi_statrec.cc:94
void mi_update_status(void *param)
Definition: mi_locking.cc:282
uint _mi_rec_pack(MI_INFO *info, uchar *to, const uchar *from)
Definition: mi_dynrec.cc:855
int _mi_ck_delete(MI_INFO *info, uint keynr, uchar *key, uint key_length)
Definition: mi_delete.cc:134
int _mi_writeinfo(MI_INFO *info, uint options)
Definition: mi_locking.cc:397
uchar * _mi_find_half_pos(uint nod_flag, MI_KEYDEF *keyinfo, uchar *page, uchar *key, uint *return_key_length, uchar **after_key)
Definition: mi_write.cc:581
uchar * mi_alloc_rec_buff(MI_INFO *, ulong, uchar **)
Definition: mi_open.cc:659
int _mi_search(MI_INFO *info, MI_KEYDEF *keyinfo, uchar *key, uint key_len, uint nextflag, my_off_t pos)
Definition: mi_search.cc:77
uint _mi_get_static_key(MI_KEYDEF *keyinfo, uint nod_flag, uchar **page, uchar *key)
Definition: mi_search.cc:692
Storing of values in high byte first order.
Instrumentation helpers for mysys file io.
static char * where
Definition: mysqldump.cc:140
static int record
Definition: mysqltest.cc:188
Definition: buf0block_hint.cc:30
const std::string FILE("FILE")
bool length(const dd::Spatial_reference_system *srs, const Geometry *g1, double *length, bool *null) noexcept
Computes the length of linestrings and multilinestrings.
Definition: length.cc:76
std::string file_name(Log_file_id file_id)
Provides name of the log file with the given file id, e.g.
Definition: log0pre_8_0_30.cc:94
Definition: options.cc:49
Cursor end()
A past-the-end Cursor.
Definition: rules_table_service.cc:192
const char * filename
Definition: pfs_example_component_population.cc:67
Instrumentation helpers for rwlock.
required string key
Definition: replication_asynchronous_connection_failover.proto:60
required uint64 version
Definition: replication_group_member_actions.proto:41
case opt name
Definition: sslopt-case.h:33
Definition: myisamdef.h:331
ulong mem_count
Definition: myisamdef.h:335
uchar * key
Definition: myisamdef.h:333
uchar * base
Definition: myisamdef.h:333
ha_rows count
Definition: myisamdef.h:334
my_off_t file_pos
Definition: myisamdef.h:332
ulong max_keys
Definition: myisamdef.h:336
Definition: my_compare.h:60
Definition: keycache.h:73
The MEM_ROOT is a simple arena, where allocations are carved out of larger blocks.
Definition: my_alloc.h:83
Definition: myisamdef.h:131
uint all_key_parts
Definition: myisamdef.h:157
uint keys
Definition: myisamdef.h:147
uint key_reflength
Definition: myisamdef.h:146
uint rec_reflength
Definition: myisamdef.h:145
my_off_t margin_key_file_length
Definition: myisamdef.h:135
my_off_t keystart
Definition: myisamdef.h:132
uint max_key_block_length
Definition: myisamdef.h:151
ulong reclength
Definition: myisamdef.h:138
ha_rows records
Definition: myisamdef.h:136
uint pack_bits
Definition: myisamdef.h:150
ulong pack_reclength
Definition: myisamdef.h:139
ulong fields
Definition: myisamdef.h:143
ulong min_block_length
Definition: myisamdef.h:142
my_off_t max_key_file_length
Definition: myisamdef.h:134
uint key_parts
Definition: myisamdef.h:157
uint extra_alloc_procent
Definition: myisamdef.h:155
ulong mean_row_length
Definition: myisamdef.h:137
uint max_key_length
Definition: myisamdef.h:152
uint extra_alloc_bytes
Definition: myisamdef.h:154
ulong pack_fields
Definition: myisamdef.h:144
my_off_t max_data_file_length
Definition: myisamdef.h:133
uint blobs
Definition: myisamdef.h:149
ulong min_pack_length
Definition: myisamdef.h:140
uint auto_key
Definition: myisamdef.h:148
ha_rows reloc
Definition: myisamdef.h:136
ulong max_pack_length
Definition: myisamdef.h:141
Definition: myisamdef.h:243
uint bits
Definition: myisamdef.h:245
uchar * pos
Definition: myisamdef.h:246
uchar * blob_end
Definition: myisamdef.h:246
uchar * blob_pos
Definition: myisamdef.h:246
uint error
Definition: myisamdef.h:247
uchar * end
Definition: myisamdef.h:246
mi_bit_type current_byte
Definition: myisamdef.h:244
Definition: myisamdef.h:163
ulong length
Definition: myisamdef.h:166
ulong offset
Definition: myisamdef.h:164
uint pack_length
Definition: myisamdef.h:165
Definition: myisamdef.h:675
my_off_t next_filepos
Definition: myisamdef.h:682
uint second_read
Definition: myisamdef.h:684
uchar header[MI_BLOCK_INFO_HEADER_LENGTH]
Definition: myisamdef.h:676
my_off_t prev_filepos
Definition: myisamdef.h:683
my_off_t filepos
Definition: myisamdef.h:681
ulong rec_len
Definition: myisamdef.h:677
uint offset
Definition: myisamdef.h:685
ulong data_len
Definition: myisamdef.h:678
ulong block_len
Definition: myisamdef.h:679
ulong blob_len
Definition: myisamdef.h:680
Definition: myisamdef.h:252
my_off_t last_keypage
Definition: myisamdef.h:284
MI_STATUS_INFO * state
Definition: myisamdef.h:254
MI_BLOB * blobs
Definition: myisamdef.h:255
MYSQL_FTPARSER_PARAM * ftparser_param
Definition: myisamdef.h:261
uint save_lastkey_length
Definition: myisamdef.h:298
IO_CACHE rec_cache
Definition: myisamdef.h:308
myf lock_wait
Definition: myisamdef.h:310
uint last_rkey_length
Definition: myisamdef.h:296
MEM_ROOT ft_memroot
Definition: myisamdef.h:260
uchar * int_maxpos
Definition: myisamdef.h:272
uint opt_flag
Definition: myisamdef.h:292
my_off_t lastpos
Definition: myisamdef.h:280
ulong last_unique
Definition: myisamdef.h:277
uint8 once_flags
Definition: myisamdef.h:316
my_off_t save_lastpos
Definition: myisamdef.h:282
my_off_t last_search_keypage
Definition: myisamdef.h:285
int(* read_record)(MI_INFO *, my_off_t, uchar *)
Definition: myisamdef.h:275
int errkey
Definition: myisamdef.h:301
ulong this_unique
Definition: myisamdef.h:276
ulong packed_length
Definition: myisamdef.h:290
bool page_changed
Definition: myisamdef.h:314
uint data_changed
Definition: myisamdef.h:304
uint preload_buff_size
Definition: myisamdef.h:309
int dfile
Definition: myisamdef.h:291
uint update
Definition: myisamdef.h:293
uchar * rec_buff
Definition: myisamdef.h:270
int rtree_recursion_depth
Definition: myisamdef.h:328
ulong blob_length
Definition: myisamdef.h:290
my_off_t pos
Definition: myisamdef.h:283
bool append_insert_at_end
Definition: myisamdef.h:312
uint pack_key_length
Definition: myisamdef.h:299
uchar * int_keypos
Definition: myisamdef.h:271
uint lastkey_length
Definition: myisamdef.h:295
uchar * lastkey2
Definition: myisamdef.h:265
int save_lastinx
Definition: myisamdef.h:306
uchar * rtree_recursion_state
Definition: myisamdef.h:327
uchar * rnext_same_key
Definition: myisamdef.h:268
my_off_t dupp_key_pos
Definition: myisamdef.h:286
ulong this_loop
Definition: myisamdef.h:278
uint save_update
Definition: myisamdef.h:305
int lock_type
Definition: myisamdef.h:302
uchar * lastkey
Definition: myisamdef.h:265
MYISAM_SHARE * s
Definition: myisamdef.h:253
uchar * first_mbr_key
Definition: myisamdef.h:269
DYNAMIC_ARRAY * ft1_to_ft2
Definition: myisamdef.h:259
bool set_rnext_same_key
Definition: myisamdef.h:319
MI_BIT_BUFF bit_buff
Definition: myisamdef.h:256
void * index_cond_func_arg
Definition: myisamdef.h:322
int lastinx
Definition: myisamdef.h:294
ha_checksum checksum
Definition: myisamdef.h:287
enum ha_rkey_function last_key_func
Definition: myisamdef.h:297
ulong last_loop
Definition: myisamdef.h:279
bool was_locked
Definition: myisamdef.h:311
THR_LOCK_DATA lock
Definition: myisamdef.h:326
index_cond_func_t index_cond_func
Definition: myisamdef.h:321
LIST open_list
Definition: myisamdef.h:307
int tmp_lock_type
Definition: myisamdef.h:303
my_off_t nextpos
Definition: myisamdef.h:281
char * filename
Definition: myisamdef.h:263
uint16 last_used_keyseg
Definition: myisamdef.h:300
bool buff_used
Definition: myisamdef.h:315
bool quick_mode
Definition: myisamdef.h:313
MI_STATUS_INFO save_state
Definition: myisamdef.h:254
LIST in_use
Definition: myisamdef.h:262
uint int_nod_flag
Definition: myisamdef.h:273
uchar * buff
Definition: myisamdef.h:264
uint32 int_keytree_version
Definition: myisamdef.h:274
TREE * bulk_insert
Definition: myisamdef.h:258
Definition: myisamdef.h:521
uchar * prev_key
Definition: myisamdef.h:525
uint pack_marker
Definition: myisamdef.h:523
uint key_length
Definition: myisamdef.h:522
uint prev_length
Definition: myisamdef.h:523
uint n_ref_length
Definition: myisamdef.h:522
uchar * next_key_pos
Definition: myisamdef.h:525
const uchar * key
Definition: myisamdef.h:524
uint totlength
Definition: myisamdef.h:522
uint n_length
Definition: myisamdef.h:522
uint ref_length
Definition: myisamdef.h:522
uint part_of_prev_key
Definition: myisamdef.h:523
bool store_not_null
Definition: myisamdef.h:526
Definition: myisamdef.h:169
uchar version
Definition: myisamdef.h:172
ulong header_length
Definition: myisamdef.h:170
uint ref_length
Definition: myisamdef.h:171
Definition: myisamdef.h:339
uint real_key_length
Definition: myisamdef.h:353
int(* key_read)(MI_SORT_PARAM *, void *)
Definition: myisamdef.h:367
IO_CACHE tempfile
Definition: myisamdef.h:340
uint key
Definition: myisamdef.h:353
int(* write_key)(MI_SORT_PARAM *, IO_CACHE *, uchar *, uint, uint)
Definition: myisamdef.h:371
uchar ** sort_keys
Definition: myisamdef.h:360
my_off_t start_recpos
Definition: myisamdef.h:352
bool fix_datafile
Definition: myisamdef.h:355
uchar * record
Definition: myisamdef.h:364
void * wordptr
Definition: myisamdef.h:362
bool calc_checksum
Definition: myisamdef.h:356
uint sort_keys_length
Definition: myisamdef.h:354
HA_KEYSEG * seg
Definition: myisamdef.h:358
void * wordlist
Definition: myisamdef.h:362
ulonglong sortbuff_size
Definition: myisamdef.h:350
uint maxbuffers
Definition: myisamdef.h:354
MI_BIT_BUFF bit_buff
Definition: myisamdef.h:342
int(* key_write)(MI_SORT_PARAM *, const void *)
Definition: myisamdef.h:368
uint keys
Definition: myisamdef.h:354
my_off_t pos
Definition: myisamdef.h:352
my_off_t filepos
Definition: myisamdef.h:352
int(* key_cmp)(void *, uchar *, uchar *)
Definition: myisamdef.h:366
MY_TMPDIR * tmpdir
Definition: myisamdef.h:365
uint(* read_to_buffer)(IO_CACHE *, BUFFPEK *, uint)
Definition: myisamdef.h:370
DYNAMIC_ARRAY buffpek
Definition: myisamdef.h:341
bool master
Definition: myisamdef.h:355
my_off_t max_pos
Definition: myisamdef.h:352
SORT_INFO * sort_info
Definition: myisamdef.h:359
IO_CACHE tempfile_for_exceptions
Definition: myisamdef.h:340
uint find_length
Definition: myisamdef.h:354
uint key_length
Definition: myisamdef.h:353
ulonglong notnull[MI_MAX_KEY_SEG+1]
Definition: myisamdef.h:349
MI_KEYDEF * keyinfo
Definition: myisamdef.h:357
IO_CACHE read_cache
Definition: myisamdef.h:340
uchar * rec_buff
Definition: myisamdef.h:361
ulonglong unique[MI_MAX_KEY_SEG+1]
Definition: myisamdef.h:348
int(* write_keys)(MI_SORT_PARAM *, uchar **, uint, BUFFPEK *, IO_CACHE *)
Definition: myisamdef.h:369
MEM_ROOT wordroot
Definition: myisamdef.h:363
Definition: myisamdef.h:68
ulong sec_index_changed
Definition: myisamdef.h:99
my_off_t * key_del
Definition: myisamdef.h:96
ulong version
Definition: myisamdef.h:103
uchar language
Definition: myisamdef.h:80
my_off_t rec_per_key_rows
Definition: myisamdef.h:97
uint sortkey
Definition: myisamdef.h:107
time_t recover_time
Definition: myisamdef.h:105
ha_checksum checksum
Definition: myisamdef.h:102
struct MI_STATE_INFO::@198 header
uchar header_length[2]
Definition: myisamdef.h:72
uint state_diff_length
Definition: myisamdef.h:112
uchar file_version[4]
Definition: myisamdef.h:70
ulonglong auto_increment
Definition: myisamdef.h:89
uint state_length
Definition: myisamdef.h:113
ulong * key_info
Definition: myisamdef.h:114
ha_rows split
Definition: myisamdef.h:87
ulong * rec_per_key_part
Definition: myisamdef.h:94
uchar max_block_size_index
Definition: myisamdef.h:81
uchar keys
Definition: myisamdef.h:78
ulong status
Definition: myisamdef.h:93
uchar state_info_length[2]
Definition: myisamdef.h:73
my_off_t * key_root
Definition: myisamdef.h:95
MI_STATUS_INFO state
Definition: myisamdef.h:86
ulong unique
Definition: myisamdef.h:91
uint open_count
Definition: myisamdef.h:108
uchar uniques
Definition: myisamdef.h:79
uint8 changed
Definition: myisamdef.h:109
uchar fulltext_keys
Definition: myisamdef.h:82
uchar base_info_length[2]
Definition: myisamdef.h:74
uchar key_parts[2]
Definition: myisamdef.h:76
time_t create_time
Definition: myisamdef.h:104
ulong process
Definition: myisamdef.h:90
uchar unique_key_parts[2]
Definition: myisamdef.h:77
time_t check_time
Definition: myisamdef.h:106
uchar not_used
Definition: myisamdef.h:83
my_off_t dellink
Definition: myisamdef.h:88
uchar base_pos[2]
Definition: myisamdef.h:75
ulonglong key_map
Definition: myisamdef.h:101
ulong sec_index_used
Definition: myisamdef.h:100
ulong update_count
Definition: myisamdef.h:92
Definition: myisamdef.h:57
my_off_t data_file_length
Definition: myisamdef.h:63
my_off_t key_empty
Definition: myisamdef.h:61
my_off_t empty
Definition: myisamdef.h:60
ha_rows del
Definition: myisamdef.h:59
ha_checksum checksum
Definition: myisamdef.h:64
bool uncacheable
Definition: myisamdef.h:65
ha_rows records
Definition: myisamdef.h:58
my_off_t key_file_length
Definition: myisamdef.h:62
Definition: myisamdef.h:177
uint w_locks
Definition: myisamdef.h:221
bool concurrent_insert
Definition: myisamdef.h:230
ulong max_pack_length
Definition: myisamdef.h:212
size_t(* file_read)(MI_INFO *, uchar *, size_t, my_off_t, myf)
Definition: myisamdef.h:205
MI_KEYDEF ft2_keyinfo
Definition: myisamdef.h:180
mysql_rwlock_t * key_root_lock
Definition: myisamdef.h:234
uint tot_locks
Definition: myisamdef.h:221
char * index_file_name
Definition: myisamdef.h:190
ulong last_process
Definition: myisamdef.h:208
myf write_flag
Definition: myisamdef.h:223
MI_DECODE_TREE * decode_trees
Definition: myisamdef.h:193
MI_BASE_INFO base
Definition: myisamdef.h:179
uchar * file_map
Definition: myisamdef.h:191
int(* update_record)(MI_INFO *, my_off_t, const uchar *)
Definition: myisamdef.h:197
MI_UNIQUEDEF * uniqueinfo
Definition: myisamdef.h:182
File kfile
Definition: myisamdef.h:217
ha_checksum(* calc_checksum)(MI_INFO *, const uchar *)
Definition: myisamdef.h:202
char * unique_file_name
Definition: myisamdef.h:188
bool have_rtree
Definition: myisamdef.h:230
bool global_changed
Definition: myisamdef.h:229
LIST * in_use
Definition: myisamdef.h:187
MI_BLOB * blobs
Definition: myisamdef.h:186
uint32 ftkeys
Definition: myisamdef.h:216
int(* compare_unique)(MI_INFO *, MI_UNIQUEDEF *, const uchar *record, my_off_t pos)
Definition: myisamdef.h:203
bool temporary
Definition: myisamdef.h:230
bool changed
Definition: myisamdef.h:228
KEY_CACHE * key_cache
Definition: myisamdef.h:192
int(* compare_record)(MI_INFO *, const uchar *)
Definition: myisamdef.h:200
uint unique_name_length
Definition: myisamdef.h:215
HA_KEYSEG * keyparts
Definition: myisamdef.h:183
ulong last_version
Definition: myisamdef.h:209
uint blocksize
Definition: myisamdef.h:222
MI_STATE_INFO state
Definition: myisamdef.h:178
int(* delete_record)(MI_INFO *)
Definition: myisamdef.h:198
uint r_locks
Definition: myisamdef.h:221
char * data_file_name
Definition: myisamdef.h:189
uint rec_reflength
Definition: myisamdef.h:214
uint16 * decode_tables
Definition: myisamdef.h:194
uint nonmmaped_inserts
Definition: myisamdef.h:236
int(* write_record)(MI_INFO *, const uchar *)
Definition: myisamdef.h:196
int(* read_rnd)(MI_INFO *, uchar *, my_off_t, bool)
Definition: myisamdef.h:199
uint reopen
Definition: myisamdef.h:220
MI_COLUMNDEF * rec
Definition: myisamdef.h:184
mysql_mutex_t intern_lock
Definition: myisamdef.h:233
MI_PACK pack
Definition: myisamdef.h:185
mysql_rwlock_t mmap_lock
Definition: myisamdef.h:238
bool is_log_table
Definition: myisamdef.h:226
my_off_t mmaped_length
Definition: myisamdef.h:235
File data_file
Definition: myisamdef.h:218
bool delay_key_write
Definition: myisamdef.h:230
THR_LOCK lock
Definition: myisamdef.h:232
ulong state_diff_length
Definition: myisamdef.h:213
enum data_file_type data_file_type
Definition: myisamdef.h:224
ulong this_process
Definition: myisamdef.h:207
bool not_flushed
Definition: myisamdef.h:230
ulong min_pack_length
Definition: myisamdef.h:211
MI_KEYDEF * keyinfo
Definition: myisamdef.h:181
ulong options
Definition: myisamdef.h:210
int mode
Definition: myisamdef.h:219
int(* read_record)(MI_INFO *, my_off_t, uchar *)
Definition: myisamdef.h:195
size_t(* file_write)(MI_INFO *, const uchar *, size_t, my_off_t, myf)
Definition: myisamdef.h:206
Definition: plugin_ftparser.h:191
Definition: thr_lock.h:124
Definition: thr_lock.h:139
An instrumented mutex structure.
Definition: mysql_mutex_bits.h:50
An instrumented rwlock structure.
Definition: mysql_rwlock_bits.h:51
Definition: keycache.h:50
unsigned int uint
Definition: uca9-dump.cc:75
command
Definition: version_token.cc:280