34 #define MYRG_NAME_EXT ".MRG"
37 #define MERGE_INSERT_DISABLED 0
38 #define MERGE_INSERT_TO_FIRST 1
39 #define MERGE_INSERT_TO_LAST 2
41 extern TYPELIB merge_insert_method;
50 ulonglong data_file_length;
51 ulonglong dupp_key_pos;
61 ulonglong file_offset;
66 MYRG_TABLE *open_tables,*current_table,*end_table,*last_used_table;
69 ulonglong data_file_length;
71 uint merge_insert_method;
72 uint tables,options,reclength,keys;
75 my_bool children_attached;
78 ulong *rec_per_key_part;
88 extern MYRG_INFO *myrg_parent_open(
const char *parent_name,
89 int (*callback)(
void*,
const char*),
90 void *callback_param);
91 extern int myrg_attach_children(
MYRG_INFO *m_info,
int handle_locking,
94 my_bool *need_compat_check);
95 extern int myrg_detach_children(
MYRG_INFO *m_info);
96 extern int myrg_panic(
enum ha_panic_function
function);
102 extern int myrg_rkey(
MYRG_INFO *info,uchar *
buf,
int inx,
const uchar *key,
103 key_part_map keypart_map,
enum ha_rkey_function search_flag);
106 extern int myrg_update(
MYRG_INFO *
file,
const uchar *old,uchar *new_rec);
109 extern int myrg_lock_database(
MYRG_INFO *
file,
int lock_type);
110 extern int myrg_create(
const char *
name,
const char **table_names,
111 uint insert_method, my_bool fix_names);
112 extern int myrg_extra(
MYRG_INFO *
file,
enum ha_extra_function
function,
115 extern void myrg_extrafunc(
MYRG_INFO *info,invalidator_by_filename inv);
116 extern ha_rows myrg_records_in_range(
MYRG_INFO *info,
int inx,
118 extern ha_rows myrg_records(
MYRG_INFO *info);
120 extern ulonglong myrg_position(
MYRG_INFO *info);