~drizzle-trunk/drizzle/development

« back to all changes in this revision

Viewing changes to drizzled/handler_structs.h

  • Committer: Monty Taylor
  • Date: 2009-04-20 14:42:34 UTC
  • mto: (997.2.5 mordred)
  • mto: This revision was merged to the branch mainline in revision 1003.
  • Revision ID: mordred@inaugust.com-20090420144234-4k1x60fiag2l1y0n
Ported InnoDB to register_plugins.

Show diffs side-by-side

added added

removed removed

Lines of Context:
29
29
#include <drizzled/lex_string.h>
30
30
 
31
31
class Ha_trx_info;
 
32
struct StorageEngine;
32
33
struct st_key;
33
34
typedef struct st_key KEY;
34
35
struct st_key_cache;
35
36
typedef struct st_key_cache KEY_CACHE;
36
37
 
37
 
namespace drizzled
38
 
{
39
 
namespace plugin
40
 
{
41
 
class StorageEngine;
42
 
}
43
 
}
44
 
 
45
38
struct Session_TRANS
46
39
{
47
40
  Session_TRANS() {};
83
76
  void reset() { no_2pc= false; modified_non_trans_table= false; }
84
77
};
85
78
 
 
79
typedef struct {
 
80
  uint64_t data_file_length;
 
81
  uint64_t max_data_file_length;
 
82
  uint64_t index_file_length;
 
83
  uint64_t delete_length;
 
84
  ha_rows records;
 
85
  uint32_t mean_rec_length;
 
86
  time_t create_time;
 
87
  time_t check_time;
 
88
  time_t update_time;
 
89
  uint64_t check_sum;
 
90
} PARTITION_INFO;
 
91
 
86
92
typedef struct st_ha_create_information
87
93
{
88
94
  const CHARSET_INFO *table_charset, *default_table_charset;
 
95
  LEX_STRING connect_string;
 
96
  LEX_STRING comment;
 
97
  const char *data_file_name, *index_file_name;
89
98
  const char *alias;
 
99
  uint64_t max_rows,min_rows;
90
100
  uint64_t auto_increment_value;
91
101
  uint32_t table_options;
 
102
  uint32_t avg_row_length;
92
103
  uint32_t used_fields;
 
104
  uint32_t key_block_size;
 
105
  uint32_t block_size;
 
106
  StorageEngine *db_type;
93
107
  enum row_type row_type;
94
 
  drizzled::plugin::StorageEngine *db_type;
 
108
  uint32_t null_bits;                       /* NULL bits at start of record */
 
109
  uint32_t options;                         /* OR of HA_CREATE_ options */
 
110
  uint32_t extra_size;                      /* length of extra data segment */
95
111
  bool table_existed;                   /* 1 in create if table existed */
 
112
  bool varchar;                         /* 1 if table has a VARCHAR */
 
113
  enum ha_choice page_checksum;         /* If we have page_checksums */
96
114
} HA_CREATE_INFO;
97
115
 
98
116
typedef struct st_ha_alter_information
111
129
{
112
130
  enum ha_key_alg algorithm;
113
131
  uint32_t block_size;
 
132
  LEX_STRING parser_name;
114
133
  LEX_STRING comment;
115
134
} KEY_CREATE_INFO;
116
135
 
118
137
typedef struct st_ha_check_opt
119
138
{
120
139
  st_ha_check_opt() {}                        /* Remove gcc warning */
 
140
  uint32_t flags;       /* myisam layer flags (e.g. for myisamchk) */
 
141
  /* Just rebuild based on the defintion of the table */
 
142
  bool use_frm;
 
143
  /* new key cache when changing key cache */
 
144
  KEY_CACHE *key_cache;
 
145
  void init();
121
146
} HA_CHECK_OPT;
122
147
 
123
148