~drizzle-trunk/drizzle/development

« back to all changes in this revision

Viewing changes to drizzled/table_share.h

Added code necessary for building plugins dynamically.
Merged in changes from lifeless to allow autoreconf to work.
Touching plugin.ini files now triggers a rebuid - so config/autorun.sh is no
longer required to be run after touching those.
Removed the duplicate plugin names - also removed the issue that getting them
different would silently fail weirdly later.

Show diffs side-by-side

added added

removed removed

Lines of Context:
115
115
 
116
116
  inline const char *getComment()
117
117
  {
118
 
    return (table_proto) ?  table_proto->options().comment().c_str() : NULL; 
 
118
    return (table_proto && table_proto->has_options()) ?  table_proto->options().comment().c_str() : NULL; 
119
119
  }
120
120
 
121
121
  inline uint32_t getCommentLength()
123
123
    return (table_proto) ? table_proto->options().comment().length() : 0; 
124
124
  }
125
125
 
 
126
  inline bool hasKeyBlockSize()
 
127
  {
 
128
    return (table_proto) ? table_proto->options().has_key_block_size() : false;
 
129
  }
 
130
 
 
131
  inline uint32_t getKeyBlockSize()
 
132
  {
 
133
    return (table_proto) ? table_proto->options().key_block_size() : 0;
 
134
  }
 
135
 
126
136
  inline uint64_t getMaxRows()
127
137
  {
128
138
    return max_rows;
141
151
  enum tmp_table_type tmp_table;
142
152
 
143
153
  uint32_t ref_count;       /* How many Table objects uses this */
144
 
  uint32_t key_block_size;                      /* create key_block_size, if used */
145
154
  uint32_t null_bytes;
146
155
  uint32_t last_null_bit_pos;
147
156
  uint32_t fields;                              /* Number of fields */
157
166
  uint32_t db_options_in_use;           /* Options in use */
158
167
  uint32_t db_record_offset;            /* if HA_REC_IN_SEQ */
159
168
  uint32_t rowid_field_offset;          /* Field_nr +1 to rowid field */
 
169
  /**
 
170
   * @TODO 
 
171
   *
 
172
   * Currently the replication services component uses
 
173
   * the primary_key member to determine which field is the table's
 
174
   * primary key.  However, as it exists, because this member is scalar, it
 
175
   * only supports a single-column primary key. Is there a better way
 
176
   * to ask for the fields which are in a primary key?
 
177
   */
 
178
  uint32_t primary_key;
160
179
  /* Index of auto-updated TIMESTAMP field in field array */
161
 
  uint32_t primary_key;
162
180
  uint32_t next_number_index;               /* autoincrement key number */
163
181
  uint32_t next_number_key_offset;          /* autoinc keypart offset in a key */
164
182
  uint32_t next_number_keypart;             /* autoinc keypart number in a key */