30#ifndef STORAGE_MYISAM_MYISAMDEF_INCLUDED
31#define STORAGE_MYISAM_MYISAMDEF_INCLUDED 1
116#define MI_STATE_INFO_SIZE (24 + 14 * 8 + 7 * 4 + 2 * 2 + 8)
117#define MI_STATE_KEY_SIZE 8
118#define MI_STATE_KEYBLOCK_SIZE 8
119#define MI_STATE_KEYSEG_SIZE 4
120#define MI_STATE_EXTRA_SIZE \
121 ((MI_MAX_KEY + MI_MAX_KEY_BLOCK_SIZE) * MI_STATE_KEY_SIZE + \
122 MI_MAX_KEY * MI_MAX_KEY_SEG * MI_STATE_KEYSEG_SIZE)
123#define MI_KEYDEF_SIZE (2 + 5 * 2)
124#define MI_UNIQUEDEF_SIZE (2 + 1 + 1)
125#define HA_KEYSEG_SIZE (6 + 2 * 2 + 4 * 2)
126#define MI_COLUMNDEF_SIZE (2 * 3 + 1)
127#define MI_BASE_INFO_SIZE (5 * 8 + 8 * 4 + 4 + 4 * 2 + 16)
128#define MI_INDEX_BLOCK_MARGIN 16
174#define MAX_NONMAPPED_INSERTS 1000
375#define USE_WHOLE_KEY MI_MAX_KEY_BUFF * 2
376#define F_EXTRA_LCK -1
379#define MEMMAP_USED 32
380#define REMEMBER_OLD_POS 64
382#define WRITEINFO_UPDATE_KEYFILE 1
383#define WRITEINFO_NO_UNLOCK 2
386#define USE_PACKED_KEYS 1
387#define RRND_PRESERVE_LASTINX 2
391#define STATE_CHANGED 1
392#define STATE_CRASHED 2
393#define STATE_CRASHED_ON_REPAIR 4
394#define STATE_NOT_ANALYZED 8
395#define STATE_NOT_OPTIMIZED_KEYS 16
396#define STATE_NOT_SORTED_PAGES 32
400#define READING_NEXT 1
401#define READING_HEADER 2
403#define mi_getint(x) ((uint)mi_uint2korr(x) & 32767)
404#define mi_putint(x, y, nod) \
406 uint16 boh = (nod ? (uint16)32768 : 0) + (uint16)(y); \
407 mi_int2store(x, boh); \
409#define mi_test_if_nod(x) (x[0] & 128 ? info->s->base.key_reflength : 0)
410#define mi_report_crashed(A, B) _mi_report_crashed((A), (B), __FILE__, __LINE__)
411#define mi_mark_crashed(x) \
413 (x)->s->state.changed |= STATE_CRASHED; \
414 DBUG_PRINT("error", ("Marked table crashed")); \
415 mi_report_crashed((x), 0); \
417#define mi_mark_crashed_on_repair(x) \
419 (x)->s->state.changed |= STATE_CRASHED | STATE_CRASHED_ON_REPAIR; \
420 (x)->update |= HA_STATE_CHANGED; \
421 DBUG_PRINT("error", ("Marked table crashed")); \
423#define mi_is_crashed(x) ((x)->s->state.changed & STATE_CRASHED)
424#define mi_is_crashed_on_repair(x) \
425 ((x)->s->state.changed & STATE_CRASHED_ON_REPAIR)
426#define mi_print_error(SHARE, ERRNO) \
427 mi_report_error((ERRNO), (SHARE)->index_file_name)
431#define store_key_length(key, length) \
433 if ((length) < 255) { \
437 mi_int2store((key) + 1, (length)); \
441#define get_key_full_length(length, key) \
443 if ((uchar) * (key) != 255) \
444 length = ((uint)(uchar) * ((key)++)) + 1; \
446 length = mi_uint2korr((key) + 1) + 3; \
451#define get_key_full_length_rdonly(length, key) \
453 if ((uchar) * (key) != 255) \
454 length = ((uint)(uchar) * ((key))) + 1; \
456 length = mi_uint2korr((key) + 1) + 3; \
460#define get_pack_length(length) ((length) >= 255 ? 3 : 1)
462#define MI_MIN_BLOCK_LENGTH 20U
463#define MI_EXTEND_BLOCK_LENGTH 20
464#define MI_SPLIT_LENGTH ((MI_EXTEND_BLOCK_LENGTH + 4) * 2)
465#define MI_MAX_DYN_BLOCK_HEADER 20
466#define MI_BLOCK_INFO_HEADER_LENGTH 20
467#define MI_DYN_DELETE_BLOCK_HEADER 20
468#define MI_DYN_MAX_BLOCK_LENGTH ((1L << 24) - 4L)
469#define MI_DYN_MAX_ROW_LENGTH (MI_DYN_MAX_BLOCK_LENGTH - MI_SPLIT_LENGTH)
470#define MI_DYN_ALIGN_SIZE 4
471#define MI_MAX_DYN_HEADER_BYTE 13
472#define MI_MAX_BLOCK_LENGTH \
473 ((((ulong)1 << 24) - 1) & (~(ulong)(MI_DYN_ALIGN_SIZE - 1)))
474#define MI_REC_BUFF_OFFSET \
475 ALIGN_SIZE(MI_DYN_DELETE_BLOCK_HEADER + sizeof(uint32))
477#define PACK_TYPE_SELECTED 1
478#define PACK_TYPE_SPACE_FIELDS 2
479#define PACK_TYPE_ZERO_FILL 4
480#define MI_FOUND_WRONG_KEY 32738
482#define MI_MAX_KEY_BLOCK_SIZE \
483 (MI_MAX_KEY_BLOCK_LENGTH / MI_MIN_KEY_BLOCK_LENGTH)
484#define MI_BLOCK_SIZE(key_length, data_pointer, key_pointer, block_size) \
485 (((((key_length) + (data_pointer) + (key_pointer)) * 4 + (key_pointer) + \
490#define MI_MAX_KEYPTR_SIZE 5
491#define MI_MIN_KEYBLOCK_LENGTH 50
493#define MI_MIN_SIZE_BULK_INSERT_TREE 16384
494#define MI_MIN_ROWS_TO_USE_BULK_INSERT 100
495#define MI_MIN_ROWS_TO_DISABLE_INDEXES 100
496#define MI_MIN_ROWS_TO_USE_WRITE_CACHE 10
500#define MI_UNIQUE_HASH_TYPE HA_KEYTYPE_ULONG_INT
501#define mi_unique_store(A, B) mi_int4store((A), (B))
553 my_off_t father_page,
bool insert_last);
555 uchar *buff,
uchar *key_buff,
bool insert_last);
594 uchar **ret_pos,
uchar *buff,
bool *was_last_key);
597 uchar **ret_pos,
uchar *buff,
bool *was_last_key);
600 uchar **ret_pos,
uchar *buff,
bool *was_last_key);
614 uint *return_key_length);
629 int level,
uchar *buff);
644#define mi_get_rec_buff_ptr(info, buf) \
645 ((((info)->s->options & HA_OPTION_PACK_RECORD) && (buf)) \
646 ? (buf)-MI_REC_BUFF_OFFSET \
648#define mi_get_rec_buff_len(info, buf) \
649 (*((uint32 *)(mi_get_rec_buff_ptr(info, buf))))
654 ulong packed_length,
bool with_checkum);
691#define BLOCK_DELETED 4
693#define BLOCK_SYNC_ERROR 16
694#define BLOCK_FATAL_ERROR 32
697 ((uint)10 * 4 * (IO_SIZE + 32) + 32)
700#define BUFFERS_WHEN_SORTING 16
701#define MY_HOW_OFTEN_TO_WRITE 1000
702#define WRITE_COUNT MY_HOW_OFTEN_TO_WRITE
703#define INDEX_TMP_EXT ".TMM"
704#define DATA_TMP_EXT ".TMD"
709#define UPDATE_AUTO_INC 8
710#define UPDATE_OPEN_COUNT 16
712#define USE_BUFFER_INIT (((1024L * 512L - MALLOC_OVERHEAD) / IO_SIZE) * IO_SIZE)
713#define READ_BUFFER_INIT (1024L * 256L - MALLOC_OVERHEAD)
714#define SORT_BUFFER_INIT (2048L * 1024L - MALLOC_OVERHEAD)
715#define MIN_SORT_BUFFER (4096ULL - MALLOC_OVERHEAD)
728#define myisam_log(a, b, c, d) \
729 if (myisam_log_file >= 0) _myisam_log(a, b, c, d)
730#define myisam_log_command(a, b, c, d, e) \
731 if (myisam_log_file >= 0) _myisam_log_command(a, b, c, d, e)
732#define myisam_log_record(a, b, c, d, e) \
733 if (myisam_log_file >= 0) _myisam_log_record(a, b, c, d, e)
735#define fast_mi_writeinfo(INFO) \
736 if (!(INFO)->s->tot_locks) (void)_mi_writeinfo((INFO), 0)
737#define fast_mi_readinfo(INFO) \
738 ((INFO)->lock_type == F_UNLCK) && _mi_readinfo((INFO), F_RDLCK, 1)
799 bool null_are_equal);
824 MY_ATTRIBUTE((format(printf, 2, 3)));
826 MY_ATTRIBUTE((format(printf, 2, 3)));
828 MY_ATTRIBUTE((format(printf, 2, 3)));
844#ifdef HAVE_PSI_INTERFACE
int page
Definition: ctype-mb.cc:1235
ulonglong unique_hash(const Field *field, ulonglong *hash_val)
Generate hash for a field.
Definition: sql_executor.cc:3932
unsigned int PSI_cond_key
Instrumented cond key.
Definition: psi_cond_bits.h:43
unsigned int PSI_file_key
Instrumented file key.
Definition: psi_file_bits.h:47
unsigned int PSI_memory_key
Instrumented memory key.
Definition: psi_memory_bits.h:48
unsigned int PSI_mutex_key
Instrumented mutex key.
Definition: psi_mutex_bits.h:51
unsigned int PSI_rwlock_key
Instrumented rwlock key.
Definition: psi_rwlock_bits.h:43
unsigned int PSI_thread_key
Instrumented thread key.
Definition: psi_thread_bits.h:49
static int flag
Definition: hp_test1.cc:39
static int reclength
Definition: hp_test2.cc:48
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:1068
ha_rkey_function
Definition: my_base.h:77
ulong key_part_map
Definition: my_base.h:1006
my_off_t ha_rows
Definition: my_base.h:1139
Abstraction functions over zlib/intrinsics.
std::uint32_t ha_checksum
Definition: my_checksum.h:105
enum icp_result ICP_RESULT
Values returned by index_cond_func_xxx functions.
int myf
Definition: my_inttypes.h:93
unsigned long long int ulonglong
Definition: my_inttypes.h:55
uint8_t uint8
Definition: my_inttypes.h:62
ulonglong my_off_t
Definition: my_inttypes.h:71
unsigned char uchar
Definition: my_inttypes.h:51
uint16_t uint16
Definition: my_inttypes.h:64
uint32_t uint32
Definition: my_inttypes.h:66
int File
Definition: my_io_bits.h:50
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:64
void _mi_print_key(FILE *stream, HA_KEYSEG *keyseg, const uchar *key, uint length)
Definition: mi_dbug.cc:33
uint myisam_quick_table_bits
Definition: mi_static.cc:55
PSI_memory_key mi_key_memory_ft_stopwords
Definition: mi_static.cc:105
size_t mi_nommap_pread(MI_INFO *info, uchar *Buffer, size_t Count, my_off_t offset, myf MyFlags)
Definition: mi_dynrec.cc:193
int _mi_decrement_open_count(MI_INFO *info)
Definition: mi_locking.cc:500
int flush_pending_blocks(MI_SORT_PARAM *param)
Definition: mi_check.cc:3243
ulong myisam_pid
Definition: mi_log.cc:47
int mi_munmap_file(MI_INFO *info)
Definition: mi_dynrec.cc:124
uint mi_uniquedef_write(File file, MI_UNIQUEDEF *keydef)
Definition: mi_open.cc:1172
PSI_memory_key mi_key_memory_FTPARSER_PARAM
Definition: mi_static.cc:103
int _mi_read_cache(IO_CACHE *info, uchar *buff, my_off_t pos, uint length, int re_read_if_possibly)
Definition: mi_cache.cc:52
void init_myisam_psi_keys()
Definition: mi_static.cc:201
uint _mi_get_block_info(MI_BLOCK_INFO *, File, my_off_t)
Definition: mi_dynrec.cc:1641
myisam_log_commands
Definition: myisamdef.h:716
@ MI_LOG_EXTRA
Definition: myisamdef.h:722
@ MI_LOG_UPDATE
Definition: myisamdef.h:719
@ MI_LOG_DELETE_ALL
Definition: myisamdef.h:724
@ MI_LOG_DELETE
Definition: myisamdef.h:720
@ MI_LOG_OPEN
Definition: myisamdef.h:717
@ MI_LOG_LOCK
Definition: myisamdef.h:723
@ MI_LOG_WRITE
Definition: myisamdef.h:718
@ MI_LOG_CLOSE
Definition: myisamdef.h:721
int flush_blocks(MI_CHECK *param, KEY_CACHE *key_cache, File file)
Definition: mi_check.cc:1737
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:115
PSI_file_key mi_key_file_kfile
Definition: myisamdef.h:852
int _mi_update_static_record(MI_INFO *, my_off_t, const uchar *)
Definition: mi_statrec.cc:87
uchar * mi_recinfo_read(uchar *ptr, MI_COLUMNDEF *recinfo)
Definition: mi_open.cc:1209
size_t mi_nommap_pwrite(MI_INFO *info, const uchar *Buffer, size_t Count, my_off_t offset, myf MyFlags)
Definition: mi_dynrec.cc:239
thread_local st_keycache_thread_var * keycache_tls
Definition: mi_static.cc:67
PSI_file_key mi_key_file_datatmp
Definition: mi_static.cc:146
int _mi_pack_rec_unpack(MI_INFO *info, MI_BIT_BUFF *bit_buff, uchar *to, uchar *from, ulong reclength)
Definition: mi_packrec.cc:699
ha_checksum mi_checksum(MI_INFO *info, const uchar *buf)
Definition: mi_checksum.cc:32
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:1009
PSI_memory_key mi_key_memory_MI_INFO_bulk_insert
Definition: mi_static.cc:99
void _mi_store_var_pack_key(MI_KEYDEF *keyinfo, uchar *key_pos, MI_KEY_PARAM *s_temp)
Definition: mi_search.cc:1642
bool _mi_memmap_file(MI_INFO *info)
Definition: mi_packrec.cc:1338
my_off_t _mi_kpos(uint nod_flag, uchar *after_key)
Definition: mi_search.cc:514
bool _mi_read_pack_info(MI_INFO *info, bool fix_keys)
Definition: mi_packrec.cc:153
int _mi_enlarge_root(MI_INFO *info, MI_KEYDEF *keyinfo, uchar *key, my_off_t *root)
Definition: mi_write.cc:263
bool _mi_rec_check(MI_INFO *info, const uchar *record, uchar *packpos, ulong packed_length, bool with_checkum)
Definition: mi_dynrec.cc:954
PSI_memory_key mi_key_memory_FT_INFO
Definition: mi_static.cc:102
PSI_memory_key mi_key_memory_SORT_INFO_buffer
Definition: mi_static.cc:111
uint myisam_read_vec[]
Definition: mi_static.cc:78
PSI_mutex_key mi_key_mutex_MYISAM_SHARE_intern_lock
Definition: mi_static.cc:119
uint mi_base_info_write(File file, MI_BASE_INFO *base)
Definition: mi_open.cc:971
PSI_memory_key mi_key_memory_stPageList_pages
Definition: mi_static.cc:115
PSI_memory_key mi_key_memory_preload_buffer
Definition: mi_static.cc:114
int mi_unique_comp(MI_UNIQUEDEF *def, const uchar *a, const uchar *b, bool null_are_equal)
Definition: mi_unique.cc:142
void mi_restore_status(void *param)
Definition: mi_locking.cc:318
int _mi_read_rnd_dynamic_record(MI_INFO *, uchar *, my_off_t, bool)
Definition: mi_dynrec.cc:1480
int _mi_update_dynamic_record(MI_INFO *, my_off_t, const uchar *)
Definition: mi_dynrec.cc:249
int mi_open_datafile(MI_INFO *info, MYISAM_SHARE *share, const char *orn_name, File file_to_dup)
Definition: mi_open.cc:1229
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:186
uchar * mi_state_info_read(uchar *ptr, MI_STATE_INFO *state)
Definition: mi_open.cc:879
void mi_check_print_warning(MI_CHECK *param, const char *fmt,...)
Definition: ha_myisam.cc:574
PSI_memory_key mi_key_memory_MI_SORT_PARAM_wordroot
Definition: mi_static.cc:107
int mi_check_index_cond(MI_INFO *info, uint keynr, uchar *record)
Definition: mi_key.cc:421
PSI_memory_key mi_key_memory_record_buffer
Definition: mi_static.cc:100
mysql_mutex_t THR_LOCK_myisam
Definition: my_thr_init.cc:72
uchar * my_n_base_info_read(uchar *ptr, MI_BASE_INFO *base)
Definition: mi_open.cc:1020
void _myisam_log_command(enum myisam_log_commands command, MI_INFO *info, const uchar *buffert, uint length, int result)
Definition: mi_log.cc:95
uchar * mi_uniquedef_read(uchar *ptr, MI_UNIQUEDEF *keydef)
Definition: mi_open.cc:1184
void _mi_unmap_file(MI_INFO *info)
Definition: mi_packrec.cc:1386
int mi_open_keyfile(MYISAM_SHARE *share)
Definition: mi_open.cc:1259
uint mi_recinfo_write(File file, MI_COLUMNDEF *recinfo)
Definition: mi_open.cc:1195
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:36
void _mi_store_static_key(MI_KEYDEF *keyinfo, uchar *key_pos, MI_KEY_PARAM *s_temp)
Definition: mi_search.cc:1625
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:543
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:596
void _mi_store_blob_length(uchar *pos, uint pack_length, uint length)
Definition: mi_dynrec.cc:1181
int _mi_read_rnd_static_record(MI_INFO *, uchar *, my_off_t, bool)
Definition: mi_statrec.cc:173
void _mi_kpointer(MI_INFO *info, uchar *buff, my_off_t pos)
Definition: mi_search.cc:539
int _mi_ck_write(MI_INFO *info, uint keynr, uchar *key, uint length)
Definition: mi_write.cc:208
PSI_memory_key mi_key_memory_SORT_FT_BUF
Definition: mi_static.cc:108
void _mi_dpointer(MI_INFO *info, uchar *buff, my_off_t pos)
Definition: mi_search.cc:650
PSI_memory_key mi_key_memory_keycache_thread_var
Definition: mi_static.cc:116
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:239
#define MI_BLOCK_INFO_HEADER_LENGTH
Definition: myisamdef.h:466
uchar myisam_file_magic[]
Definition: mi_static.cc:41
int _mi_read_pack_record(MI_INFO *info, my_off_t filepos, uchar *buf)
Definition: mi_packrec.cc:676
int _mi_write_blob_record(MI_INFO *, const uchar *)
Definition: mi_dynrec.cc:255
bool mi_dynmap_file(MI_INFO *info, my_off_t size)
Definition: mi_dynrec.cc:78
ulonglong mi_safe_mul(ulonglong a, ulonglong b)
Definition: mi_open.cc:692
uint myisam_readnext_vec[]
Definition: myisamdef.h:513
uint mi_bit_type
Definition: myisamdef.h:240
int _mi_update_blob_record(MI_INFO *, my_off_t, const uchar *)
Definition: mi_dynrec.cc:280
MI_INFO * test_if_reopen(char *filename)
Definition: mi_open.cc:79
uint _mi_get_binary_pack_key(MI_KEYDEF *keyinfo, uint nod_flag, uchar **page_pos, uchar *key)
Definition: mi_search.cc:821
int mi_keyseg_write(File file, const HA_KEYSEG *keyseg)
Definition: mi_open.cc:1117
void mi_setup_functions(MYISAM_SHARE *share)
Definition: mi_open.cc:701
PSI_memory_key mi_key_memory_MI_INFO_ft1_to_ft2
Definition: mi_static.cc:98
File myisam_log_file
Definition: mi_static.cc:54
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:1550
uint mi_state_info_write(File file, MI_STATE_INFO *state, uint pWrite)
Definition: mi_open.cc:794
PSI_memory_key key_memory_QUEUE
Definition: mi_static.cc:117
int _mi_readinfo(MI_INFO *info, int lock_flag, int check_keybuffer)
Definition: mi_locking.cc:368
PSI_memory_key mi_key_memory_MYISAM_SHARE_decode_tables
Definition: mi_static.cc:113
bool mi_check_status(void *param)
Definition: mi_locking.cc:349
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:248
PSI_rwlock_key mi_key_rwlock_MYISAM_SHARE_key_root_lock
Definition: mi_static.cc:127
int _mi_write_keypage(MI_INFO *info, MI_KEYDEF *keyinfo, my_off_t page, int level, uchar *buff)
Definition: mi_page.cc:72
void mi_set_index_cond_func(MI_INFO *info, index_cond_func_t func, void *func_arg)
Definition: mi_extra.cc:210
void mi_report_error(int errcode, const char *file_name)
Definition: mi_info.cc:124
int _mi_delete_dynamic_record(MI_INFO *info)
Definition: mi_dynrec.cc:302
my_off_t _mi_dpos(MI_INFO *info, uint nod_flag, const uchar *after_key)
Definition: mi_search.cc:570
uchar * mi_keydef_read(uchar *ptr, MI_KEYDEF *keydef)
Definition: mi_open.cc:1091
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:1264
void mi_check_print_info(MI_CHECK *param, const char *fmt,...)
Definition: ha_myisam.cc:567
int _mi_write_static_record(MI_INFO *, const uchar *)
Definition: mi_statrec.cc:34
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:196
void mi_remap_file(MI_INFO *info, my_off_t size)
Definition: mi_dynrec.cc:147
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:180
int _mi_read_static_record(MI_INFO *info, my_off_t filepos, uchar *buf)
Definition: mi_statrec.cc:147
uint mi_state_info_read_dsk(File file, MI_STATE_INFO *state, bool pRead)
Definition: mi_open.cc:953
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:404
int _mi_cmp_static_record(MI_INFO *info, const uchar *record)
Definition: mi_statrec.cc:106
PSI_cond_key mi_key_cond_MI_SORT_INFO_cond
PSI_memory_key mi_key_memory_MI_DECODE_TREE
Definition: mi_static.cc:112
int _mi_write_dynamic_record(MI_INFO *, const uchar *)
Definition: mi_dynrec.cc:244
uint mi_keydef_write(File file, MI_KEYDEF *keydef)
Definition: mi_open.cc:1072
uchar * _mi_move_key(MI_KEYDEF *keyinfo, uchar *to, const uchar *from)
Definition: mi_search.cc:1091
uint _mi_get_pack_key(MI_KEYDEF *keyinfo, uint nod_flag, uchar **page, uchar *key)
Definition: mi_search.cc:712
void _mi_store_bin_pack_key(MI_KEYDEF *keyinfo, uchar *key_pos, MI_KEY_PARAM *s_temp)
Definition: mi_search.cc:1690
int mi_disable_indexes(MI_INFO *info)
Definition: mi_open.cc:1281
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:1303
ha_checksum mi_static_checksum(MI_INFO *info, const uchar *buf)
Definition: mi_checksum.cc:67
int sort_write_record(MI_SORT_PARAM *sort_param)
Definition: mi_check.cc:2808
my_off_t _mi_new(MI_INFO *info, MI_KEYDEF *keyinfo, int level)
Definition: mi_page.cc:119
ha_checksum mi_unique_hash(MI_UNIQUEDEF *def, const uchar *buf)
Definition: mi_unique.cc:83
void _myisam_log(enum myisam_log_commands command, MI_INFO *info, const uchar *buffert, uint length)
Definition: mi_log.cc:74
int _mi_dispose(MI_INFO *info, MI_KEYDEF *keyinfo, my_off_t pos, int level)
Definition: mi_page.cc:101
int _mi_read_rnd_pack_record(MI_INFO *, uchar *, my_off_t, bool)
Definition: mi_packrec.cc:1167
bool mi_check_unique(MI_INFO *info, MI_UNIQUEDEF *def, uchar *record, ha_checksum unique_hash, my_off_t pos)
Definition: mi_unique.cc:36
int _mi_search_first(MI_INFO *info, MI_KEYDEF *keyinfo, my_off_t pos)
Definition: mi_search.cc:1175
void mi_copy_status(void *to, void *from)
Definition: mi_locking.cc:324
PSI_cond_key mi_keycache_thread_var_suspend
Definition: myisamdef.h:850
void mi_get_status(void *param, int concurrent_insert)
Definition: mi_locking.cc:261
int _mi_cmp_dynamic_unique(MI_INFO *info, MI_UNIQUEDEF *def, const uchar *record, my_off_t pos)
Definition: mi_dynrec.cc:1327
int _mi_cmp_dynamic_record(MI_INFO *info, const uchar *record)
Definition: mi_dynrec.cc:1353
PSI_thread_key mi_key_thread_find_all_keys
Definition: mi_static.cc:157
int mi_enable_indexes(MI_INFO *info)
Definition: mi_open.cc:1307
uint calc_pack_length(uint version, ulong length)
Definition: mi_packrec.cc:1509
PSI_memory_key mi_key_memory_FTB
Definition: mi_static.cc:101
my_off_t _mi_rec_pos(MYISAM_SHARE *info, uchar *ptr)
Definition: mi_search.cc:606
PSI_file_key mi_key_file_log
Definition: myisamdef.h:853
int sort_ft_buf_flush(MI_SORT_PARAM *sort_param)
Definition: mi_check.cc:2978
PSI_memory_key mi_key_memory_MYISAM_SHARE
Definition: mi_static.cc:96
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:443
uint _mi_keylength_part(MI_KEYDEF *keyinfo, const uchar *key, HA_KEYSEG *end)
Definition: mi_search.cc:1073
size_t mi_mmap_pread(MI_INFO *info, uchar *Buffer, size_t Count, my_off_t offset, myf MyFlags)
Definition: mi_dynrec.cc:169
int _mi_search_last(MI_INFO *info, MI_KEYDEF *keyinfo, my_off_t pos)
Definition: mi_search.cc:1214
uchar myisam_pack_file_magic[]
Definition: myisamdef.h:512
int _mi_read_key_record(MI_INFO *info, my_off_t filepos, uchar *buf)
Definition: mi_key.cc:387
uint save_pack_length(uint version, uchar *block_buff, ulong length)
Definition: mi_packrec.cc:1469
int _mi_read_dynamic_record(MI_INFO *info, my_off_t filepos, uchar *buf)
Definition: mi_dynrec.cc:1232
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:1275
uchar * mi_keyseg_read(uchar *ptr, HA_KEYSEG *keyseg)
Definition: mi_open.cc:1141
int mi_indexes_are_disabled(MI_INFO *info)
Definition: mi_open.cc:1336
int _mi_split_page(MI_INFO *info, MI_KEYDEF *keyinfo, uchar *key, uchar *buff, uchar *key_buff, bool insert_last)
Definition: mi_write.cc:516
PSI_file_key mi_key_file_dfile
Definition: myisamdef.h:852
size_t mi_mmap_pwrite(MI_INFO *info, const uchar *Buffer, size_t Count, my_off_t offset, myf MyFlags)
Definition: mi_dynrec.cc:214
PSI_memory_key mi_key_memory_ft_memroot
Definition: mi_static.cc:104
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:277
LIST * myisam_open_list
Definition: mi_static.cc:40
int _mi_mark_file_changed(MI_INFO *info)
Definition: mi_locking.cc:473
ulong _my_calc_total_blob_length(MI_INFO *info, const uchar *record)
Definition: mi_dynrec.cc:1152
uchar * _mi_get_key(MI_INFO *info, MI_KEYDEF *keyinfo, uchar *page, uchar *key, uchar *keypos, uint *return_key_length)
Definition: mi_search.cc:951
PSI_memory_key mi_key_memory_MI_INFO
Definition: mi_static.cc:97
size_t _mi_rec_unpack(MI_INFO *info, uchar *to, const uchar *from, ulong reclength)
Definition: mi_dynrec.cc:1045
int _mi_check_index(MI_INFO *info, int inx)
Definition: mi_search.cc:45
uint _mi_keylength(MI_KEYDEF *keyinfo, const uchar *key)
Definition: mi_search.cc:1045
int _mi_test_if_changed(MI_INFO *info)
Definition: mi_locking.cc:434
PSI_memory_key mi_key_memory_filecopy
Definition: mi_static.cc:110
PSI_rwlock_key mi_key_rwlock_MYISAM_SHARE_mmap_lock
Definition: myisamdef.h:847
int _create_index_by_sort(MI_SORT_PARAM *info, bool no_messages, ulonglong)
Definition: sort.cc:108
ICP_RESULT(* index_cond_func_t)(void *param)
Definition: myisamdef.h:249
PSI_memory_key mi_key_memory_MI_SORT_PARAM
Definition: mi_static.cc:106
volatile int * killed_ptr(MI_CHECK *param)
Definition: ha_myisam.cc:553
PSI_memory_key mi_key_memory_SORT_KEY_BLOCKS
Definition: mi_static.cc:109
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:1221
void mi_check_print_error(MI_CHECK *param, const char *fmt,...)
Definition: ha_myisam.cc:558
int _mi_cmp_static_unique(MI_INFO *info, MI_UNIQUEDEF *def, const uchar *record, my_off_t pos)
Definition: mi_statrec.cc:131
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:1100
uint read_pack_length(uint version, const uchar *buf, ulong *length)
Definition: mi_packrec.cc:1491
uint _mi_make_key(MI_INFO *info, uint keynr, uchar *key, const uchar *record, my_off_t filepos)
Definition: mi_key.cc:62
int _mi_delete_static_record(MI_INFO *info)
Definition: mi_statrec.cc:93
void mi_update_status(void *param)
Definition: mi_locking.cc:281
uint _mi_rec_pack(MI_INFO *info, uchar *to, const uchar *from)
Definition: mi_dynrec.cc:854
int _mi_ck_delete(MI_INFO *info, uint keynr, uchar *key, uint key_length)
Definition: mi_delete.cc:133
int _mi_writeinfo(MI_INFO *info, uint options)
Definition: mi_locking.cc:396
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:580
uchar * mi_alloc_rec_buff(MI_INFO *, ulong, uchar **)
Definition: mi_open.cc:658
int _mi_search(MI_INFO *info, MI_KEYDEF *keyinfo, uchar *key, uint key_len, uint nextflag, my_off_t pos)
Definition: mi_search.cc:76
uint _mi_get_static_key(MI_KEYDEF *keyinfo, uint nod_flag, uchar **page, uchar *key)
Definition: mi_search.cc:691
Storing of values in high byte first order.
Instrumentation helpers for mysys file io.
static char * where
Definition: mysqldump.cc:136
static int record
Definition: mysqltest.cc:187
Definition: buf0block_hint.cc:29
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:75
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:93
Definition: options.cc:48
Cursor end()
A past-the-end Cursor.
Definition: rules_table_service.cc:191
const char * filename
Definition: pfs_example_component_population.cc:66
Instrumentation helpers for rwlock.
required string key
Definition: replication_asynchronous_connection_failover.proto:59
required uint64 version
Definition: replication_group_member_actions.proto:40
case opt name
Definition: sslopt-case.h:32
Definition: myisamdef.h:330
ulong mem_count
Definition: myisamdef.h:334
uchar * key
Definition: myisamdef.h:332
uchar * base
Definition: myisamdef.h:332
ha_rows count
Definition: myisamdef.h:333
my_off_t file_pos
Definition: myisamdef.h:331
ulong max_keys
Definition: myisamdef.h:335
Definition: my_compare.h:59
Definition: keycache.h:72
The MEM_ROOT is a simple arena, where allocations are carved out of larger blocks.
Definition: my_alloc.h:82
Definition: myisamdef.h:130
uint all_key_parts
Definition: myisamdef.h:156
uint keys
Definition: myisamdef.h:146
uint key_reflength
Definition: myisamdef.h:145
uint rec_reflength
Definition: myisamdef.h:144
my_off_t margin_key_file_length
Definition: myisamdef.h:134
my_off_t keystart
Definition: myisamdef.h:131
uint max_key_block_length
Definition: myisamdef.h:150
ulong reclength
Definition: myisamdef.h:137
ha_rows records
Definition: myisamdef.h:135
uint pack_bits
Definition: myisamdef.h:149
ulong pack_reclength
Definition: myisamdef.h:138
ulong fields
Definition: myisamdef.h:142
ulong min_block_length
Definition: myisamdef.h:141
my_off_t max_key_file_length
Definition: myisamdef.h:133
uint key_parts
Definition: myisamdef.h:156
uint extra_alloc_procent
Definition: myisamdef.h:154
ulong mean_row_length
Definition: myisamdef.h:136
uint max_key_length
Definition: myisamdef.h:151
uint extra_alloc_bytes
Definition: myisamdef.h:153
ulong pack_fields
Definition: myisamdef.h:143
my_off_t max_data_file_length
Definition: myisamdef.h:132
uint blobs
Definition: myisamdef.h:148
ulong min_pack_length
Definition: myisamdef.h:139
uint auto_key
Definition: myisamdef.h:147
ha_rows reloc
Definition: myisamdef.h:135
ulong max_pack_length
Definition: myisamdef.h:140
Definition: myisamdef.h:242
uint bits
Definition: myisamdef.h:244
uchar * pos
Definition: myisamdef.h:245
uchar * blob_end
Definition: myisamdef.h:245
uchar * blob_pos
Definition: myisamdef.h:245
uint error
Definition: myisamdef.h:246
uchar * end
Definition: myisamdef.h:245
mi_bit_type current_byte
Definition: myisamdef.h:243
Definition: myisamdef.h:162
ulong length
Definition: myisamdef.h:165
ulong offset
Definition: myisamdef.h:163
uint pack_length
Definition: myisamdef.h:164
Definition: myisamdef.h:674
my_off_t next_filepos
Definition: myisamdef.h:681
uint second_read
Definition: myisamdef.h:683
uchar header[MI_BLOCK_INFO_HEADER_LENGTH]
Definition: myisamdef.h:675
my_off_t prev_filepos
Definition: myisamdef.h:682
my_off_t filepos
Definition: myisamdef.h:680
ulong rec_len
Definition: myisamdef.h:676
uint offset
Definition: myisamdef.h:684
ulong data_len
Definition: myisamdef.h:677
ulong block_len
Definition: myisamdef.h:678
ulong blob_len
Definition: myisamdef.h:679
Definition: myisamdef.h:251
my_off_t last_keypage
Definition: myisamdef.h:283
MI_STATUS_INFO * state
Definition: myisamdef.h:253
MI_BLOB * blobs
Definition: myisamdef.h:254
MYSQL_FTPARSER_PARAM * ftparser_param
Definition: myisamdef.h:260
uint save_lastkey_length
Definition: myisamdef.h:297
IO_CACHE rec_cache
Definition: myisamdef.h:307
myf lock_wait
Definition: myisamdef.h:309
uint last_rkey_length
Definition: myisamdef.h:295
MEM_ROOT ft_memroot
Definition: myisamdef.h:259
uchar * int_maxpos
Definition: myisamdef.h:271
uint opt_flag
Definition: myisamdef.h:291
my_off_t lastpos
Definition: myisamdef.h:279
ulong last_unique
Definition: myisamdef.h:276
uint8 once_flags
Definition: myisamdef.h:315
my_off_t save_lastpos
Definition: myisamdef.h:281
my_off_t last_search_keypage
Definition: myisamdef.h:284
int(* read_record)(MI_INFO *, my_off_t, uchar *)
Definition: myisamdef.h:274
int errkey
Definition: myisamdef.h:300
ulong this_unique
Definition: myisamdef.h:275
ulong packed_length
Definition: myisamdef.h:289
bool page_changed
Definition: myisamdef.h:313
uint data_changed
Definition: myisamdef.h:303
uint preload_buff_size
Definition: myisamdef.h:308
int dfile
Definition: myisamdef.h:290
uint update
Definition: myisamdef.h:292
uchar * rec_buff
Definition: myisamdef.h:269
int rtree_recursion_depth
Definition: myisamdef.h:327
ulong blob_length
Definition: myisamdef.h:289
my_off_t pos
Definition: myisamdef.h:282
bool append_insert_at_end
Definition: myisamdef.h:311
uint pack_key_length
Definition: myisamdef.h:298
uchar * int_keypos
Definition: myisamdef.h:270
uint lastkey_length
Definition: myisamdef.h:294
uchar * lastkey2
Definition: myisamdef.h:264
int save_lastinx
Definition: myisamdef.h:305
uchar * rtree_recursion_state
Definition: myisamdef.h:326
uchar * rnext_same_key
Definition: myisamdef.h:267
my_off_t dupp_key_pos
Definition: myisamdef.h:285
ulong this_loop
Definition: myisamdef.h:277
uint save_update
Definition: myisamdef.h:304
int lock_type
Definition: myisamdef.h:301
uchar * lastkey
Definition: myisamdef.h:264
MYISAM_SHARE * s
Definition: myisamdef.h:252
uchar * first_mbr_key
Definition: myisamdef.h:268
DYNAMIC_ARRAY * ft1_to_ft2
Definition: myisamdef.h:258
bool set_rnext_same_key
Definition: myisamdef.h:318
MI_BIT_BUFF bit_buff
Definition: myisamdef.h:255
void * index_cond_func_arg
Definition: myisamdef.h:321
int lastinx
Definition: myisamdef.h:293
ha_checksum checksum
Definition: myisamdef.h:286
enum ha_rkey_function last_key_func
Definition: myisamdef.h:296
ulong last_loop
Definition: myisamdef.h:278
bool was_locked
Definition: myisamdef.h:310
THR_LOCK_DATA lock
Definition: myisamdef.h:325
index_cond_func_t index_cond_func
Definition: myisamdef.h:320
LIST open_list
Definition: myisamdef.h:306
int tmp_lock_type
Definition: myisamdef.h:302
my_off_t nextpos
Definition: myisamdef.h:280
char * filename
Definition: myisamdef.h:262
uint16 last_used_keyseg
Definition: myisamdef.h:299
bool buff_used
Definition: myisamdef.h:314
bool quick_mode
Definition: myisamdef.h:312
MI_STATUS_INFO save_state
Definition: myisamdef.h:253
LIST in_use
Definition: myisamdef.h:261
uint int_nod_flag
Definition: myisamdef.h:272
uchar * buff
Definition: myisamdef.h:263
uint32 int_keytree_version
Definition: myisamdef.h:273
TREE * bulk_insert
Definition: myisamdef.h:257
Definition: myisamdef.h:520
uchar * prev_key
Definition: myisamdef.h:524
uint pack_marker
Definition: myisamdef.h:522
uint key_length
Definition: myisamdef.h:521
uint prev_length
Definition: myisamdef.h:522
uint n_ref_length
Definition: myisamdef.h:521
uchar * next_key_pos
Definition: myisamdef.h:524
const uchar * key
Definition: myisamdef.h:523
uint totlength
Definition: myisamdef.h:521
uint n_length
Definition: myisamdef.h:521
uint ref_length
Definition: myisamdef.h:521
uint part_of_prev_key
Definition: myisamdef.h:522
bool store_not_null
Definition: myisamdef.h:525
Definition: myisamdef.h:168
uchar version
Definition: myisamdef.h:171
ulong header_length
Definition: myisamdef.h:169
uint ref_length
Definition: myisamdef.h:170
Definition: myisamdef.h:338
uint real_key_length
Definition: myisamdef.h:352
int(* key_read)(MI_SORT_PARAM *, void *)
Definition: myisamdef.h:366
IO_CACHE tempfile
Definition: myisamdef.h:339
uint key
Definition: myisamdef.h:352
int(* write_key)(MI_SORT_PARAM *, IO_CACHE *, uchar *, uint, uint)
Definition: myisamdef.h:370
uchar ** sort_keys
Definition: myisamdef.h:359
my_off_t start_recpos
Definition: myisamdef.h:351
bool fix_datafile
Definition: myisamdef.h:354
uchar * record
Definition: myisamdef.h:363
void * wordptr
Definition: myisamdef.h:361
bool calc_checksum
Definition: myisamdef.h:355
uint sort_keys_length
Definition: myisamdef.h:353
HA_KEYSEG * seg
Definition: myisamdef.h:357
void * wordlist
Definition: myisamdef.h:361
ulonglong sortbuff_size
Definition: myisamdef.h:349
uint maxbuffers
Definition: myisamdef.h:353
MI_BIT_BUFF bit_buff
Definition: myisamdef.h:341
int(* key_write)(MI_SORT_PARAM *, const void *)
Definition: myisamdef.h:367
uint keys
Definition: myisamdef.h:353
my_off_t pos
Definition: myisamdef.h:351
my_off_t filepos
Definition: myisamdef.h:351
int(* key_cmp)(void *, uchar *, uchar *)
Definition: myisamdef.h:365
MY_TMPDIR * tmpdir
Definition: myisamdef.h:364
uint(* read_to_buffer)(IO_CACHE *, BUFFPEK *, uint)
Definition: myisamdef.h:369
DYNAMIC_ARRAY buffpek
Definition: myisamdef.h:340
bool master
Definition: myisamdef.h:354
my_off_t max_pos
Definition: myisamdef.h:351
SORT_INFO * sort_info
Definition: myisamdef.h:358
IO_CACHE tempfile_for_exceptions
Definition: myisamdef.h:339
uint find_length
Definition: myisamdef.h:353
uint key_length
Definition: myisamdef.h:352
ulonglong notnull[MI_MAX_KEY_SEG+1]
Definition: myisamdef.h:348
MI_KEYDEF * keyinfo
Definition: myisamdef.h:356
IO_CACHE read_cache
Definition: myisamdef.h:339
uchar * rec_buff
Definition: myisamdef.h:360
ulonglong unique[MI_MAX_KEY_SEG+1]
Definition: myisamdef.h:347
int(* write_keys)(MI_SORT_PARAM *, uchar **, uint, BUFFPEK *, IO_CACHE *)
Definition: myisamdef.h:368
MEM_ROOT wordroot
Definition: myisamdef.h:362
Definition: myisamdef.h:67
ulong sec_index_changed
Definition: myisamdef.h:98
my_off_t * key_del
Definition: myisamdef.h:95
ulong version
Definition: myisamdef.h:102
uchar language
Definition: myisamdef.h:79
my_off_t rec_per_key_rows
Definition: myisamdef.h:96
uint sortkey
Definition: myisamdef.h:106
time_t recover_time
Definition: myisamdef.h:104
ha_checksum checksum
Definition: myisamdef.h:101
struct MI_STATE_INFO::@198 header
uchar header_length[2]
Definition: myisamdef.h:71
uint state_diff_length
Definition: myisamdef.h:111
uchar file_version[4]
Definition: myisamdef.h:69
ulonglong auto_increment
Definition: myisamdef.h:88
uint state_length
Definition: myisamdef.h:112
ulong * key_info
Definition: myisamdef.h:113
ha_rows split
Definition: myisamdef.h:86
ulong * rec_per_key_part
Definition: myisamdef.h:93
uchar max_block_size_index
Definition: myisamdef.h:80
uchar keys
Definition: myisamdef.h:77
ulong status
Definition: myisamdef.h:92
uchar state_info_length[2]
Definition: myisamdef.h:72
my_off_t * key_root
Definition: myisamdef.h:94
MI_STATUS_INFO state
Definition: myisamdef.h:85
ulong unique
Definition: myisamdef.h:90
uint open_count
Definition: myisamdef.h:107
uchar uniques
Definition: myisamdef.h:78
uint8 changed
Definition: myisamdef.h:108
uchar fulltext_keys
Definition: myisamdef.h:81
uchar base_info_length[2]
Definition: myisamdef.h:73
uchar key_parts[2]
Definition: myisamdef.h:75
time_t create_time
Definition: myisamdef.h:103
ulong process
Definition: myisamdef.h:89
uchar unique_key_parts[2]
Definition: myisamdef.h:76
time_t check_time
Definition: myisamdef.h:105
uchar not_used
Definition: myisamdef.h:82
my_off_t dellink
Definition: myisamdef.h:87
uchar base_pos[2]
Definition: myisamdef.h:74
ulonglong key_map
Definition: myisamdef.h:100
ulong sec_index_used
Definition: myisamdef.h:99
ulong update_count
Definition: myisamdef.h:91
Definition: myisamdef.h:56
my_off_t data_file_length
Definition: myisamdef.h:62
my_off_t key_empty
Definition: myisamdef.h:60
my_off_t empty
Definition: myisamdef.h:59
ha_rows del
Definition: myisamdef.h:58
ha_checksum checksum
Definition: myisamdef.h:63
bool uncacheable
Definition: myisamdef.h:64
ha_rows records
Definition: myisamdef.h:57
my_off_t key_file_length
Definition: myisamdef.h:61
Definition: myisamdef.h:176
uint w_locks
Definition: myisamdef.h:220
bool concurrent_insert
Definition: myisamdef.h:229
ulong max_pack_length
Definition: myisamdef.h:211
size_t(* file_read)(MI_INFO *, uchar *, size_t, my_off_t, myf)
Definition: myisamdef.h:204
MI_KEYDEF ft2_keyinfo
Definition: myisamdef.h:179
mysql_rwlock_t * key_root_lock
Definition: myisamdef.h:233
uint tot_locks
Definition: myisamdef.h:220
char * index_file_name
Definition: myisamdef.h:189
ulong last_process
Definition: myisamdef.h:207
myf write_flag
Definition: myisamdef.h:222
MI_DECODE_TREE * decode_trees
Definition: myisamdef.h:192
MI_BASE_INFO base
Definition: myisamdef.h:178
uchar * file_map
Definition: myisamdef.h:190
int(* update_record)(MI_INFO *, my_off_t, const uchar *)
Definition: myisamdef.h:196
MI_UNIQUEDEF * uniqueinfo
Definition: myisamdef.h:181
File kfile
Definition: myisamdef.h:216
ha_checksum(* calc_checksum)(MI_INFO *, const uchar *)
Definition: myisamdef.h:201
char * unique_file_name
Definition: myisamdef.h:187
bool have_rtree
Definition: myisamdef.h:229
bool global_changed
Definition: myisamdef.h:228
LIST * in_use
Definition: myisamdef.h:186
MI_BLOB * blobs
Definition: myisamdef.h:185
uint32 ftkeys
Definition: myisamdef.h:215
int(* compare_unique)(MI_INFO *, MI_UNIQUEDEF *, const uchar *record, my_off_t pos)
Definition: myisamdef.h:202
bool temporary
Definition: myisamdef.h:229
bool changed
Definition: myisamdef.h:227
KEY_CACHE * key_cache
Definition: myisamdef.h:191
int(* compare_record)(MI_INFO *, const uchar *)
Definition: myisamdef.h:199
uint unique_name_length
Definition: myisamdef.h:214
HA_KEYSEG * keyparts
Definition: myisamdef.h:182
ulong last_version
Definition: myisamdef.h:208
uint blocksize
Definition: myisamdef.h:221
MI_STATE_INFO state
Definition: myisamdef.h:177
int(* delete_record)(MI_INFO *)
Definition: myisamdef.h:197
uint r_locks
Definition: myisamdef.h:220
char * data_file_name
Definition: myisamdef.h:188
uint rec_reflength
Definition: myisamdef.h:213
uint16 * decode_tables
Definition: myisamdef.h:193
uint nonmmaped_inserts
Definition: myisamdef.h:235
int(* write_record)(MI_INFO *, const uchar *)
Definition: myisamdef.h:195
int(* read_rnd)(MI_INFO *, uchar *, my_off_t, bool)
Definition: myisamdef.h:198
uint reopen
Definition: myisamdef.h:219
MI_COLUMNDEF * rec
Definition: myisamdef.h:183
mysql_mutex_t intern_lock
Definition: myisamdef.h:232
MI_PACK pack
Definition: myisamdef.h:184
mysql_rwlock_t mmap_lock
Definition: myisamdef.h:237
bool is_log_table
Definition: myisamdef.h:225
my_off_t mmaped_length
Definition: myisamdef.h:234
File data_file
Definition: myisamdef.h:217
bool delay_key_write
Definition: myisamdef.h:229
THR_LOCK lock
Definition: myisamdef.h:231
ulong state_diff_length
Definition: myisamdef.h:212
enum data_file_type data_file_type
Definition: myisamdef.h:223
ulong this_process
Definition: myisamdef.h:206
bool not_flushed
Definition: myisamdef.h:229
ulong min_pack_length
Definition: myisamdef.h:210
MI_KEYDEF * keyinfo
Definition: myisamdef.h:180
ulong options
Definition: myisamdef.h:209
int mode
Definition: myisamdef.h:218
int(* read_record)(MI_INFO *, my_off_t, uchar *)
Definition: myisamdef.h:194
size_t(* file_write)(MI_INFO *, const uchar *, size_t, my_off_t, myf)
Definition: myisamdef.h:205
Definition: plugin_ftparser.h:190
Definition: thr_lock.h:123
Definition: thr_lock.h:138
An instrumented mutex structure.
Definition: mysql_mutex_bits.h:49
An instrumented rwlock structure.
Definition: mysql_rwlock_bits.h:50
Definition: keycache.h:49
unsigned int uint
Definition: uca9-dump.cc:74
command
Definition: version_token.cc:279