31#ifndef STORAGE_MYISAM_MYISAMDEF_INCLUDED 
   32#define STORAGE_MYISAM_MYISAMDEF_INCLUDED 1 
  118#define MI_STATE_INFO_SIZE (24 + 14 * 8 + 7 * 4 + 2 * 2 + 8) 
  119#define MI_STATE_KEY_SIZE 8 
  120#define MI_STATE_KEYBLOCK_SIZE 8 
  121#define MI_STATE_KEYSEG_SIZE 4 
  122#define MI_STATE_EXTRA_SIZE                                   \ 
  123  ((MI_MAX_KEY + MI_MAX_KEY_BLOCK_SIZE) * MI_STATE_KEY_SIZE + \ 
  124   MI_MAX_KEY * MI_MAX_KEY_SEG * MI_STATE_KEYSEG_SIZE) 
  125#define MI_KEYDEF_SIZE (2 + 5 * 2) 
  126#define MI_UNIQUEDEF_SIZE (2 + 1 + 1) 
  127#define HA_KEYSEG_SIZE (6 + 2 * 2 + 4 * 2) 
  128#define MI_COLUMNDEF_SIZE (2 * 3 + 1) 
  129#define MI_BASE_INFO_SIZE (5 * 8 + 8 * 4 + 4 + 4 * 2 + 16) 
  130#define MI_INDEX_BLOCK_MARGIN 16  
  176#define MAX_NONMAPPED_INSERTS 1000 
  377#define USE_WHOLE_KEY MI_MAX_KEY_BUFF * 2  
  378#define F_EXTRA_LCK -1 
  381#define MEMMAP_USED 32 
  382#define REMEMBER_OLD_POS 64 
  384#define WRITEINFO_UPDATE_KEYFILE 1 
  385#define WRITEINFO_NO_UNLOCK 2 
  388#define USE_PACKED_KEYS 1 
  389#define RRND_PRESERVE_LASTINX 2 
  393#define STATE_CHANGED 1 
  394#define STATE_CRASHED 2 
  395#define STATE_CRASHED_ON_REPAIR 4 
  396#define STATE_NOT_ANALYZED 8 
  397#define STATE_NOT_OPTIMIZED_KEYS 16 
  398#define STATE_NOT_SORTED_PAGES 32 
  402#define READING_NEXT 1 
  403#define READING_HEADER 2 
  405#define mi_getint(x) ((uint)mi_uint2korr(x) & 32767) 
  406#define mi_putint(x, y, nod)                              \ 
  408    uint16 boh = (nod ? (uint16)32768 : 0) + (uint16)(y); \ 
  409    mi_int2store(x, boh);                                 \ 
  411#define mi_test_if_nod(x) (x[0] & 128 ? info->s->base.key_reflength : 0) 
  412#define mi_report_crashed(A, B) _mi_report_crashed((A), (B), __FILE__, __LINE__) 
  413#define mi_mark_crashed(x)                         \ 
  415    (x)->s->state.changed |= STATE_CRASHED;        \ 
  416    DBUG_PRINT("error", ("Marked table crashed")); \
 
  417    mi_report_crashed((x), nullptr);               \
 
  419#define mi_mark_crashed_on_repair(x)                                  \ 
  421    (x)->s->state.changed |= STATE_CRASHED | STATE_CRASHED_ON_REPAIR; \ 
  422    (x)->update |= HA_STATE_CHANGED;                                  \ 
  423    DBUG_PRINT("error", ("Marked table crashed"));                    \
 
  425#define mi_is_crashed(x) ((x)->s->state.changed & STATE_CRASHED) 
  426#define mi_is_crashed_on_repair(x) \ 
  427  ((x)->s->state.changed & STATE_CRASHED_ON_REPAIR) 
  428#define mi_print_error(SHARE, ERRNO) \ 
  429  mi_report_error((ERRNO), (SHARE)->index_file_name) 
  433#define store_key_length(key, length)    \ 
  435    if ((length) < 255) {                \ 
  439      mi_int2store((key) + 1, (length)); \ 
  443#define get_key_full_length(length, key)        \ 
  445    if ((uchar) * (key) != 255)                 \ 
  446      length = ((uint)(uchar) * ((key)++)) + 1; \ 
  448      length = mi_uint2korr((key) + 1) + 3;     \ 
  453#define get_key_full_length_rdonly(length, key) \ 
  455    if ((uchar) * (key) != 255)                 \ 
  456      length = ((uint)(uchar) * ((key))) + 1;   \ 
  458      length = mi_uint2korr((key) + 1) + 3;     \ 
  462#define get_pack_length(length) ((length) >= 255 ? 3 : 1) 
  464#define MI_MIN_BLOCK_LENGTH 20U    
  465#define MI_EXTEND_BLOCK_LENGTH 20  
  466#define MI_SPLIT_LENGTH ((MI_EXTEND_BLOCK_LENGTH + 4) * 2) 
  467#define MI_MAX_DYN_BLOCK_HEADER 20  
  468#define MI_BLOCK_INFO_HEADER_LENGTH 20 
  469#define MI_DYN_DELETE_BLOCK_HEADER 20  
  470#define MI_DYN_MAX_BLOCK_LENGTH ((1L << 24) - 4L) 
  471#define MI_DYN_MAX_ROW_LENGTH (MI_DYN_MAX_BLOCK_LENGTH - MI_SPLIT_LENGTH) 
  472#define MI_DYN_ALIGN_SIZE 4        
  473#define MI_MAX_DYN_HEADER_BYTE 13  
  474#define MI_MAX_BLOCK_LENGTH \ 
  475  ((((ulong)1 << 24) - 1) & (~(ulong)(MI_DYN_ALIGN_SIZE - 1))) 
  476#define MI_REC_BUFF_OFFSET \ 
  477  ALIGN_SIZE(MI_DYN_DELETE_BLOCK_HEADER + sizeof(uint32)) 
  479#define PACK_TYPE_SELECTED 1  
  480#define PACK_TYPE_SPACE_FIELDS 2 
  481#define PACK_TYPE_ZERO_FILL 4 
  482#define MI_FOUND_WRONG_KEY 32738  
  484#define MI_MAX_KEY_BLOCK_SIZE \ 
  485  (MI_MAX_KEY_BLOCK_LENGTH / MI_MIN_KEY_BLOCK_LENGTH) 
  486#define MI_BLOCK_SIZE(key_length, data_pointer, key_pointer, block_size)   \ 
  487  (((((key_length) + (data_pointer) + (key_pointer)) * 4 + (key_pointer) + \ 
  492#define MI_MAX_KEYPTR_SIZE 5       
  493#define MI_MIN_KEYBLOCK_LENGTH 50  
  495#define MI_MIN_SIZE_BULK_INSERT_TREE 16384  
  496#define MI_MIN_ROWS_TO_USE_BULK_INSERT 100 
  497#define MI_MIN_ROWS_TO_DISABLE_INDEXES 100 
  498#define MI_MIN_ROWS_TO_USE_WRITE_CACHE 10 
  502#define MI_UNIQUE_HASH_TYPE HA_KEYTYPE_ULONG_INT 
  503#define mi_unique_store(A, B) mi_int4store((A), (B)) 
  555                      my_off_t father_page, 
bool insert_last);
 
  557                          uchar *buff, 
uchar *key_buff, 
bool insert_last);
 
  559                                uchar *
key, uint *return_key_length,
 
  593                      uint key_len, uint nextflag, 
my_off_t pos);
 
  595                          uchar *
key, uint key_len, uint comp_flag,
 
  596                          uchar **ret_pos, 
uchar *buff, 
bool *was_last_key);
 
  598                          uchar *
key, uint key_len, uint comp_flag,
 
  599                          uchar **ret_pos, 
uchar *buff, 
bool *was_last_key);
 
  601                             uchar *
key, uint key_len, uint comp_flag,
 
  602                             uchar **ret_pos, 
uchar *buff, 
bool *was_last_key);
 
  616                               uint *return_key_length);
 
  624                           uint key_length, uint nextflag, 
my_off_t pos);
 
  631                             int level, 
uchar *buff);
 
  642                          uint 
length, 
int re_read_if_possibly);
 
  646#define mi_get_rec_buff_ptr(info, buf)                     \ 
  647  ((((info)->s->options & HA_OPTION_PACK_RECORD) && (buf)) \ 
  648       ? (buf)-MI_REC_BUFF_OFFSET                          \ 
  650#define mi_get_rec_buff_len(info, buf) \ 
  651  (*((uint32 *)(mi_get_rec_buff_ptr(info, buf)))) 
  656                          ulong packed_length, 
bool with_checkum);
 
  693#define BLOCK_DELETED 4 
  695#define BLOCK_SYNC_ERROR 16   
  696#define BLOCK_FATAL_ERROR 32  
  699  ((uint)10 * 4 * (IO_SIZE + 32) + 32)  
  702#define BUFFERS_WHEN_SORTING 16     
  703#define MY_HOW_OFTEN_TO_WRITE 1000  
  704#define WRITE_COUNT MY_HOW_OFTEN_TO_WRITE 
  705#define INDEX_TMP_EXT ".TMM" 
  706#define DATA_TMP_EXT ".TMD" 
  711#define UPDATE_AUTO_INC 8 
  712#define UPDATE_OPEN_COUNT 16 
  714#define USE_BUFFER_INIT (((1024L * 512L - MALLOC_OVERHEAD) / IO_SIZE) * IO_SIZE) 
  715#define READ_BUFFER_INIT (1024L * 256L - MALLOC_OVERHEAD) 
  716#define SORT_BUFFER_INIT (2048L * 1024L - MALLOC_OVERHEAD) 
  717#define MIN_SORT_BUFFER (4096ULL - MALLOC_OVERHEAD) 
  730#define myisam_log(a, b, c, d) \ 
  731  if (myisam_log_file >= 0) _myisam_log(a, b, c, d) 
  732#define myisam_log_command(a, b, c, d, e) \ 
  733  if (myisam_log_file >= 0) _myisam_log_command(a, b, c, d, e) 
  734#define myisam_log_record(a, b, c, d, e) \ 
  735  if (myisam_log_file >= 0) _myisam_log_record(a, b, c, d, e) 
  737#define fast_mi_writeinfo(INFO) \ 
  738  if (!(INFO)->s->tot_locks) (void)_mi_writeinfo((INFO), 0) 
  739#define fast_mi_readinfo(INFO) \ 
  740  ((INFO)->lock_type == F_UNLCK) && _mi_readinfo((INFO), F_RDLCK, 1) 
  801                   bool null_are_equal);
 
  826    MY_ATTRIBUTE((format(printf, 2, 3)));
 
  828    MY_ATTRIBUTE((format(printf, 2, 3)));
 
  830    MY_ATTRIBUTE((format(printf, 2, 3)));
 
  846#ifdef HAVE_PSI_INTERFACE 
int page
Definition: ctype-mb.cc:1234
 
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:52
 
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:1070
 
ha_rkey_function
Definition: my_base.h:78
 
ulong key_part_map
Definition: my_base.h:1008
 
my_off_t ha_rows
Definition: my_base.h:1141
 
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.
 
Some integer typedefs for easier portability.
 
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:64
 
void _mi_print_key(FILE *stream, HA_KEYSEG *keyseg, const uchar *key, uint length)
Definition: mi_dbug.cc:35
 
uint myisam_quick_table_bits
Definition: mi_static.cc:57
 
PSI_memory_key mi_key_memory_ft_stopwords
Definition: mi_static.cc:107
 
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:3245
 
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:1175
 
PSI_memory_key mi_key_memory_FTPARSER_PARAM
Definition: mi_static.cc:105
 
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:203
 
uint _mi_get_block_info(MI_BLOCK_INFO *, File, my_off_t)
Definition: mi_dynrec.cc:1642
 
myisam_log_commands
Definition: myisamdef.h:718
 
@ MI_LOG_EXTRA
Definition: myisamdef.h:724
 
@ MI_LOG_UPDATE
Definition: myisamdef.h:721
 
@ MI_LOG_DELETE_ALL
Definition: myisamdef.h:726
 
@ MI_LOG_DELETE
Definition: myisamdef.h:722
 
@ MI_LOG_OPEN
Definition: myisamdef.h:719
 
@ MI_LOG_LOCK
Definition: myisamdef.h:725
 
@ MI_LOG_WRITE
Definition: myisamdef.h:720
 
@ MI_LOG_CLOSE
Definition: myisamdef.h:723
 
int flush_blocks(MI_CHECK *param, KEY_CACHE *key_cache, File file)
Definition: mi_check.cc:1739
 
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:854
 
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:1212
 
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:69
 
PSI_file_key mi_key_file_datatmp
Definition: mi_static.cc:148
 
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:101
 
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:104
 
PSI_memory_key mi_key_memory_SORT_INFO_buffer
Definition: mi_static.cc:113
 
uint myisam_read_vec[]
Definition: mi_static.cc:80
 
PSI_mutex_key mi_key_mutex_MYISAM_SHARE_intern_lock
Definition: mi_static.cc:121
 
uint mi_base_info_write(File file, MI_BASE_INFO *base)
Definition: mi_open.cc:974
 
PSI_memory_key mi_key_memory_stPageList_pages
Definition: mi_static.cc:117
 
PSI_memory_key mi_key_memory_preload_buffer
Definition: mi_static.cc:116
 
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:1232
 
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:189
 
uchar * mi_state_info_read(uchar *ptr, MI_STATE_INFO *state)
Definition: mi_open.cc:882
 
void mi_check_print_warning(MI_CHECK *param, const char *fmt,...)
Definition: ha_myisam.cc:579
 
PSI_memory_key mi_key_memory_MI_SORT_PARAM_wordroot
Definition: mi_static.cc:109
 
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:102
 
mysql_mutex_t THR_LOCK_myisam
Definition: my_thr_init.cc:74
 
uchar * my_n_base_info_read(uchar *ptr, MI_BASE_INFO *base)
Definition: mi_open.cc:1023
 
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:1187
 
void _mi_unmap_file(MI_INFO *info)
Definition: mi_packrec.cc:1387
 
int mi_open_keyfile(MYISAM_SHARE *share)
Definition: mi_open.cc:1262
 
uint mi_recinfo_write(File file, MI_COLUMNDEF *recinfo)
Definition: mi_open.cc:1198
 
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:601
 
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:110
 
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:118
 
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:468
 
uchar myisam_file_magic[]
Definition: mi_static.cc:43
 
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:695
 
uint myisam_readnext_vec[]
Definition: myisamdef.h:515
 
uint mi_bit_type
Definition: myisamdef.h:242
 
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:82
 
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:1120
 
void mi_setup_functions(MYISAM_SHARE *share)
Definition: mi_open.cc:704
 
PSI_memory_key mi_key_memory_MI_INFO_ft1_to_ft2
Definition: mi_static.cc:100
 
File myisam_log_file
Definition: mi_static.cc:56
 
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:797
 
PSI_memory_key key_memory_QUEUE
Definition: mi_static.cc:119
 
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:115
 
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:129
 
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:1094
 
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:572
 
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:956
 
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:114
 
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:1075
 
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:1284
 
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:2810
 
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:852
 
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:159
 
int mi_enable_indexes(MI_INFO *info)
Definition: mi_open.cc:1310
 
uint calc_pack_length(uint version, ulong length)
Definition: mi_packrec.cc:1510
 
PSI_memory_key mi_key_memory_FTB
Definition: mi_static.cc:103
 
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:855
 
int sort_ft_buf_flush(MI_SORT_PARAM *sort_param)
Definition: mi_check.cc:2980
 
PSI_memory_key mi_key_memory_MYISAM_SHARE
Definition: mi_static.cc:98
 
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:514
 
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:1144
 
int mi_indexes_are_disabled(MI_INFO *info)
Definition: mi_open.cc:1339
 
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:854
 
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:106
 
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:42
 
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:99
 
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:112
 
PSI_rwlock_key mi_key_rwlock_MYISAM_SHARE_mmap_lock
Definition: myisamdef.h:849
 
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:251
 
PSI_memory_key mi_key_memory_MI_SORT_PARAM
Definition: mi_static.cc:108
 
volatile int * killed_ptr(MI_CHECK *param)
Definition: ha_myisam.cc:558
 
PSI_memory_key mi_key_memory_SORT_KEY_BLOCKS
Definition: mi_static.cc:111
 
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:563
 
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:661
 
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:152
 
static int record
Definition: mysqltest.cc:195
 
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
 
size_t size(const char *const c)
Definition: base64.h:46
 
Definition: options.cc:57
 
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:29
 
Definition: myisamdef.h:332
 
ulong mem_count
Definition: myisamdef.h:336
 
uchar * key
Definition: myisamdef.h:334
 
uchar * base
Definition: myisamdef.h:334
 
ha_rows count
Definition: myisamdef.h:335
 
my_off_t file_pos
Definition: myisamdef.h:333
 
ulong max_keys
Definition: myisamdef.h:337
 
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:132
 
uint all_key_parts
Definition: myisamdef.h:158
 
uint keys
Definition: myisamdef.h:148
 
uint key_reflength
Definition: myisamdef.h:147
 
uint rec_reflength
Definition: myisamdef.h:146
 
my_off_t margin_key_file_length
Definition: myisamdef.h:136
 
my_off_t keystart
Definition: myisamdef.h:133
 
uint max_key_block_length
Definition: myisamdef.h:152
 
ulong reclength
Definition: myisamdef.h:139
 
ha_rows records
Definition: myisamdef.h:137
 
uint pack_bits
Definition: myisamdef.h:151
 
ulong pack_reclength
Definition: myisamdef.h:140
 
ulong fields
Definition: myisamdef.h:144
 
ulong min_block_length
Definition: myisamdef.h:143
 
my_off_t max_key_file_length
Definition: myisamdef.h:135
 
uint key_parts
Definition: myisamdef.h:158
 
uint extra_alloc_procent
Definition: myisamdef.h:156
 
ulong mean_row_length
Definition: myisamdef.h:138
 
uint max_key_length
Definition: myisamdef.h:153
 
uint extra_alloc_bytes
Definition: myisamdef.h:155
 
ulong pack_fields
Definition: myisamdef.h:145
 
my_off_t max_data_file_length
Definition: myisamdef.h:134
 
uint blobs
Definition: myisamdef.h:150
 
ulong min_pack_length
Definition: myisamdef.h:141
 
uint auto_key
Definition: myisamdef.h:149
 
ha_rows reloc
Definition: myisamdef.h:137
 
ulong max_pack_length
Definition: myisamdef.h:142
 
Definition: myisamdef.h:244
 
uint bits
Definition: myisamdef.h:246
 
uchar * pos
Definition: myisamdef.h:247
 
uchar * blob_end
Definition: myisamdef.h:247
 
uchar * blob_pos
Definition: myisamdef.h:247
 
uint error
Definition: myisamdef.h:248
 
uchar * end
Definition: myisamdef.h:247
 
mi_bit_type current_byte
Definition: myisamdef.h:245
 
Definition: myisamdef.h:164
 
ulong length
Definition: myisamdef.h:167
 
ulong offset
Definition: myisamdef.h:165
 
uint pack_length
Definition: myisamdef.h:166
 
Definition: myisamdef.h:676
 
my_off_t next_filepos
Definition: myisamdef.h:683
 
uint second_read
Definition: myisamdef.h:685
 
uchar header[MI_BLOCK_INFO_HEADER_LENGTH]
Definition: myisamdef.h:677
 
my_off_t prev_filepos
Definition: myisamdef.h:684
 
my_off_t filepos
Definition: myisamdef.h:682
 
ulong rec_len
Definition: myisamdef.h:678
 
uint offset
Definition: myisamdef.h:686
 
ulong data_len
Definition: myisamdef.h:679
 
ulong block_len
Definition: myisamdef.h:680
 
ulong blob_len
Definition: myisamdef.h:681
 
Definition: myisamdef.h:253
 
my_off_t last_keypage
Definition: myisamdef.h:285
 
MI_STATUS_INFO * state
Definition: myisamdef.h:255
 
MI_BLOB * blobs
Definition: myisamdef.h:256
 
MYSQL_FTPARSER_PARAM * ftparser_param
Definition: myisamdef.h:262
 
uint save_lastkey_length
Definition: myisamdef.h:299
 
IO_CACHE rec_cache
Definition: myisamdef.h:309
 
myf lock_wait
Definition: myisamdef.h:311
 
uint last_rkey_length
Definition: myisamdef.h:297
 
MEM_ROOT ft_memroot
Definition: myisamdef.h:261
 
uchar * int_maxpos
Definition: myisamdef.h:273
 
uint opt_flag
Definition: myisamdef.h:293
 
my_off_t lastpos
Definition: myisamdef.h:281
 
ulong last_unique
Definition: myisamdef.h:278
 
uint8 once_flags
Definition: myisamdef.h:317
 
my_off_t save_lastpos
Definition: myisamdef.h:283
 
my_off_t last_search_keypage
Definition: myisamdef.h:286
 
int(* read_record)(MI_INFO *, my_off_t, uchar *)
Definition: myisamdef.h:276
 
int errkey
Definition: myisamdef.h:302
 
ulong this_unique
Definition: myisamdef.h:277
 
ulong packed_length
Definition: myisamdef.h:291
 
bool page_changed
Definition: myisamdef.h:315
 
uint data_changed
Definition: myisamdef.h:305
 
uint preload_buff_size
Definition: myisamdef.h:310
 
int dfile
Definition: myisamdef.h:292
 
uint update
Definition: myisamdef.h:294
 
uchar * rec_buff
Definition: myisamdef.h:271
 
int rtree_recursion_depth
Definition: myisamdef.h:329
 
ulong blob_length
Definition: myisamdef.h:291
 
my_off_t pos
Definition: myisamdef.h:284
 
bool append_insert_at_end
Definition: myisamdef.h:313
 
uint pack_key_length
Definition: myisamdef.h:300
 
uchar * int_keypos
Definition: myisamdef.h:272
 
uint lastkey_length
Definition: myisamdef.h:296
 
uchar * lastkey2
Definition: myisamdef.h:266
 
int save_lastinx
Definition: myisamdef.h:307
 
uchar * rtree_recursion_state
Definition: myisamdef.h:328
 
uchar * rnext_same_key
Definition: myisamdef.h:269
 
my_off_t dupp_key_pos
Definition: myisamdef.h:287
 
ulong this_loop
Definition: myisamdef.h:279
 
uint save_update
Definition: myisamdef.h:306
 
int lock_type
Definition: myisamdef.h:303
 
uchar * lastkey
Definition: myisamdef.h:266
 
MYISAM_SHARE * s
Definition: myisamdef.h:254
 
uchar * first_mbr_key
Definition: myisamdef.h:270
 
DYNAMIC_ARRAY * ft1_to_ft2
Definition: myisamdef.h:260
 
bool set_rnext_same_key
Definition: myisamdef.h:320
 
MI_BIT_BUFF bit_buff
Definition: myisamdef.h:257
 
void * index_cond_func_arg
Definition: myisamdef.h:323
 
int lastinx
Definition: myisamdef.h:295
 
ha_checksum checksum
Definition: myisamdef.h:288
 
enum ha_rkey_function last_key_func
Definition: myisamdef.h:298
 
ulong last_loop
Definition: myisamdef.h:280
 
bool was_locked
Definition: myisamdef.h:312
 
THR_LOCK_DATA lock
Definition: myisamdef.h:327
 
index_cond_func_t index_cond_func
Definition: myisamdef.h:322
 
LIST open_list
Definition: myisamdef.h:308
 
int tmp_lock_type
Definition: myisamdef.h:304
 
my_off_t nextpos
Definition: myisamdef.h:282
 
char * filename
Definition: myisamdef.h:264
 
uint16 last_used_keyseg
Definition: myisamdef.h:301
 
bool buff_used
Definition: myisamdef.h:316
 
bool quick_mode
Definition: myisamdef.h:314
 
MI_STATUS_INFO save_state
Definition: myisamdef.h:255
 
LIST in_use
Definition: myisamdef.h:263
 
uint int_nod_flag
Definition: myisamdef.h:274
 
uchar * buff
Definition: myisamdef.h:265
 
uint32 int_keytree_version
Definition: myisamdef.h:275
 
TREE * bulk_insert
Definition: myisamdef.h:259
 
Definition: myisamdef.h:522
 
uchar * prev_key
Definition: myisamdef.h:526
 
uint pack_marker
Definition: myisamdef.h:524
 
uint key_length
Definition: myisamdef.h:523
 
uint prev_length
Definition: myisamdef.h:524
 
uint n_ref_length
Definition: myisamdef.h:523
 
uchar * next_key_pos
Definition: myisamdef.h:526
 
const uchar * key
Definition: myisamdef.h:525
 
uint totlength
Definition: myisamdef.h:523
 
uint n_length
Definition: myisamdef.h:523
 
uint ref_length
Definition: myisamdef.h:523
 
uint part_of_prev_key
Definition: myisamdef.h:524
 
bool store_not_null
Definition: myisamdef.h:527
 
Definition: myisamdef.h:170
 
uchar version
Definition: myisamdef.h:173
 
ulong header_length
Definition: myisamdef.h:171
 
uint ref_length
Definition: myisamdef.h:172
 
Definition: myisamdef.h:340
 
uint real_key_length
Definition: myisamdef.h:354
 
int(* key_read)(MI_SORT_PARAM *, void *)
Definition: myisamdef.h:368
 
IO_CACHE tempfile
Definition: myisamdef.h:341
 
uint key
Definition: myisamdef.h:354
 
int(* write_key)(MI_SORT_PARAM *, IO_CACHE *, uchar *, uint, uint)
Definition: myisamdef.h:372
 
uchar ** sort_keys
Definition: myisamdef.h:361
 
my_off_t start_recpos
Definition: myisamdef.h:353
 
bool fix_datafile
Definition: myisamdef.h:356
 
uchar * record
Definition: myisamdef.h:365
 
void * wordptr
Definition: myisamdef.h:363
 
bool calc_checksum
Definition: myisamdef.h:357
 
uint sort_keys_length
Definition: myisamdef.h:355
 
HA_KEYSEG * seg
Definition: myisamdef.h:359
 
void * wordlist
Definition: myisamdef.h:363
 
ulonglong sortbuff_size
Definition: myisamdef.h:351
 
uint maxbuffers
Definition: myisamdef.h:355
 
MI_BIT_BUFF bit_buff
Definition: myisamdef.h:343
 
int(* key_write)(MI_SORT_PARAM *, const void *)
Definition: myisamdef.h:369
 
uint keys
Definition: myisamdef.h:355
 
my_off_t pos
Definition: myisamdef.h:353
 
my_off_t filepos
Definition: myisamdef.h:353
 
int(* key_cmp)(void *, uchar *, uchar *)
Definition: myisamdef.h:367
 
MY_TMPDIR * tmpdir
Definition: myisamdef.h:366
 
uint(* read_to_buffer)(IO_CACHE *, BUFFPEK *, uint)
Definition: myisamdef.h:371
 
DYNAMIC_ARRAY buffpek
Definition: myisamdef.h:342
 
bool master
Definition: myisamdef.h:356
 
my_off_t max_pos
Definition: myisamdef.h:353
 
SORT_INFO * sort_info
Definition: myisamdef.h:360
 
IO_CACHE tempfile_for_exceptions
Definition: myisamdef.h:341
 
uint find_length
Definition: myisamdef.h:355
 
uint key_length
Definition: myisamdef.h:354
 
ulonglong notnull[MI_MAX_KEY_SEG+1]
Definition: myisamdef.h:350
 
MI_KEYDEF * keyinfo
Definition: myisamdef.h:358
 
IO_CACHE read_cache
Definition: myisamdef.h:341
 
uchar * rec_buff
Definition: myisamdef.h:362
 
ulonglong unique[MI_MAX_KEY_SEG+1]
Definition: myisamdef.h:349
 
int(* write_keys)(MI_SORT_PARAM *, uchar **, uint, BUFFPEK *, IO_CACHE *)
Definition: myisamdef.h:370
 
MEM_ROOT wordroot
Definition: myisamdef.h:364
 
Definition: myisamdef.h:69
 
ulong sec_index_changed
Definition: myisamdef.h:100
 
my_off_t * key_del
Definition: myisamdef.h:97
 
ulong version
Definition: myisamdef.h:104
 
uchar language
Definition: myisamdef.h:81
 
my_off_t rec_per_key_rows
Definition: myisamdef.h:98
 
uint sortkey
Definition: myisamdef.h:108
 
time_t recover_time
Definition: myisamdef.h:106
 
ha_checksum checksum
Definition: myisamdef.h:103
 
uchar header_length[2]
Definition: myisamdef.h:73
 
uint state_diff_length
Definition: myisamdef.h:113
 
uchar file_version[4]
Definition: myisamdef.h:71
 
ulonglong auto_increment
Definition: myisamdef.h:90
 
uint state_length
Definition: myisamdef.h:114
 
ulong * key_info
Definition: myisamdef.h:115
 
ha_rows split
Definition: myisamdef.h:88
 
struct MI_STATE_INFO::@208 header
 
ulong * rec_per_key_part
Definition: myisamdef.h:95
 
uchar max_block_size_index
Definition: myisamdef.h:82
 
uchar keys
Definition: myisamdef.h:79
 
ulong status
Definition: myisamdef.h:94
 
uchar state_info_length[2]
Definition: myisamdef.h:74
 
my_off_t * key_root
Definition: myisamdef.h:96
 
MI_STATUS_INFO state
Definition: myisamdef.h:87
 
ulong unique
Definition: myisamdef.h:92
 
uint open_count
Definition: myisamdef.h:109
 
uchar uniques
Definition: myisamdef.h:80
 
uint8 changed
Definition: myisamdef.h:110
 
uchar fulltext_keys
Definition: myisamdef.h:83
 
uchar base_info_length[2]
Definition: myisamdef.h:75
 
uchar key_parts[2]
Definition: myisamdef.h:77
 
time_t create_time
Definition: myisamdef.h:105
 
ulong process
Definition: myisamdef.h:91
 
uchar unique_key_parts[2]
Definition: myisamdef.h:78
 
time_t check_time
Definition: myisamdef.h:107
 
uchar not_used
Definition: myisamdef.h:84
 
my_off_t dellink
Definition: myisamdef.h:89
 
uchar base_pos[2]
Definition: myisamdef.h:76
 
ulonglong key_map
Definition: myisamdef.h:102
 
ulong sec_index_used
Definition: myisamdef.h:101
 
ulong update_count
Definition: myisamdef.h:93
 
Definition: myisamdef.h:58
 
my_off_t data_file_length
Definition: myisamdef.h:64
 
my_off_t key_empty
Definition: myisamdef.h:62
 
my_off_t empty
Definition: myisamdef.h:61
 
ha_rows del
Definition: myisamdef.h:60
 
ha_checksum checksum
Definition: myisamdef.h:65
 
bool uncacheable
Definition: myisamdef.h:66
 
ha_rows records
Definition: myisamdef.h:59
 
my_off_t key_file_length
Definition: myisamdef.h:63
 
Definition: myisamdef.h:178
 
uint w_locks
Definition: myisamdef.h:222
 
bool concurrent_insert
Definition: myisamdef.h:231
 
ulong max_pack_length
Definition: myisamdef.h:213
 
size_t(* file_read)(MI_INFO *, uchar *, size_t, my_off_t, myf)
Definition: myisamdef.h:206
 
MI_KEYDEF ft2_keyinfo
Definition: myisamdef.h:181
 
mysql_rwlock_t * key_root_lock
Definition: myisamdef.h:235
 
uint tot_locks
Definition: myisamdef.h:222
 
char * index_file_name
Definition: myisamdef.h:191
 
ulong last_process
Definition: myisamdef.h:209
 
myf write_flag
Definition: myisamdef.h:224
 
MI_DECODE_TREE * decode_trees
Definition: myisamdef.h:194
 
MI_BASE_INFO base
Definition: myisamdef.h:180
 
uchar * file_map
Definition: myisamdef.h:192
 
int(* update_record)(MI_INFO *, my_off_t, const uchar *)
Definition: myisamdef.h:198
 
MI_UNIQUEDEF * uniqueinfo
Definition: myisamdef.h:183
 
File kfile
Definition: myisamdef.h:218
 
ha_checksum(* calc_checksum)(MI_INFO *, const uchar *)
Definition: myisamdef.h:203
 
char * unique_file_name
Definition: myisamdef.h:189
 
bool have_rtree
Definition: myisamdef.h:231
 
bool global_changed
Definition: myisamdef.h:230
 
LIST * in_use
Definition: myisamdef.h:188
 
MI_BLOB * blobs
Definition: myisamdef.h:187
 
uint32 ftkeys
Definition: myisamdef.h:217
 
int(* compare_unique)(MI_INFO *, MI_UNIQUEDEF *, const uchar *record, my_off_t pos)
Definition: myisamdef.h:204
 
bool temporary
Definition: myisamdef.h:231
 
bool changed
Definition: myisamdef.h:229
 
KEY_CACHE * key_cache
Definition: myisamdef.h:193
 
int(* compare_record)(MI_INFO *, const uchar *)
Definition: myisamdef.h:201
 
uint unique_name_length
Definition: myisamdef.h:216
 
HA_KEYSEG * keyparts
Definition: myisamdef.h:184
 
ulong last_version
Definition: myisamdef.h:210
 
uint blocksize
Definition: myisamdef.h:223
 
MI_STATE_INFO state
Definition: myisamdef.h:179
 
int(* delete_record)(MI_INFO *)
Definition: myisamdef.h:199
 
uint r_locks
Definition: myisamdef.h:222
 
char * data_file_name
Definition: myisamdef.h:190
 
uint rec_reflength
Definition: myisamdef.h:215
 
uint16 * decode_tables
Definition: myisamdef.h:195
 
uint nonmmaped_inserts
Definition: myisamdef.h:237
 
int(* write_record)(MI_INFO *, const uchar *)
Definition: myisamdef.h:197
 
int(* read_rnd)(MI_INFO *, uchar *, my_off_t, bool)
Definition: myisamdef.h:200
 
uint reopen
Definition: myisamdef.h:221
 
MI_COLUMNDEF * rec
Definition: myisamdef.h:185
 
mysql_mutex_t intern_lock
Definition: myisamdef.h:234
 
MI_PACK pack
Definition: myisamdef.h:186
 
mysql_rwlock_t mmap_lock
Definition: myisamdef.h:239
 
bool is_log_table
Definition: myisamdef.h:227
 
my_off_t mmaped_length
Definition: myisamdef.h:236
 
File data_file
Definition: myisamdef.h:219
 
bool delay_key_write
Definition: myisamdef.h:231
 
THR_LOCK lock
Definition: myisamdef.h:233
 
ulong state_diff_length
Definition: myisamdef.h:214
 
enum data_file_type data_file_type
Definition: myisamdef.h:225
 
ulong this_process
Definition: myisamdef.h:208
 
bool not_flushed
Definition: myisamdef.h:231
 
ulong min_pack_length
Definition: myisamdef.h:212
 
MI_KEYDEF * keyinfo
Definition: myisamdef.h:182
 
ulong options
Definition: myisamdef.h:211
 
int mode
Definition: myisamdef.h:220
 
int(* read_record)(MI_INFO *, my_off_t, uchar *)
Definition: myisamdef.h:196
 
size_t(* file_write)(MI_INFO *, const uchar *, size_t, my_off_t, myf)
Definition: myisamdef.h:207
 
Definition: plugin_ftparser.h:195
 
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
 
command
Definition: version_token.cc:280