summaryrefslogtreecommitdiff
path: root/sql/table.h
diff options
context:
space:
mode:
authorAlexander Nozdrin <alik@sun.com>2010-06-07 12:47:04 +0400
committerAlexander Nozdrin <alik@sun.com>2010-06-07 12:47:04 +0400
commit8a247e963dcaa12b70e9aae0c9f3cb831d30f4a7 (patch)
tree4268070936d3c9dbd27165b1d9c1593e17ec0d61 /sql/table.h
parente4ab99764249f90a83c7f384eadc913331c59aee (diff)
parent75dce25ca8276f56c45f747c9a9a1b4046b6efca (diff)
downloadmariadb-git-8a247e963dcaa12b70e9aae0c9f3cb831d30f4a7.tar.gz
Manual merge from mysql-trunk-bugfixing.
Conflicts: - BUILD/SETUP.sh - mysql-test/mysql-test-run.pl - mysql-test/r/partition_error.result - mysql-test/t/disabled.def - mysql-test/t/partition_error.test - sql/share/errmsg-utf8.txt
Diffstat (limited to 'sql/table.h')
-rw-r--r--sql/table.h29
1 files changed, 24 insertions, 5 deletions
diff --git a/sql/table.h b/sql/table.h
index 0725d62b286..34f71d6bba4 100644
--- a/sql/table.h
+++ b/sql/table.h
@@ -488,6 +488,19 @@ typedef struct st_table_field_def
} TABLE_FIELD_DEF;
+#ifdef WITH_PARTITION_STORAGE_ENGINE
+/**
+ Partition specific ha_data struct.
+*/
+typedef struct st_ha_data_partition
+{
+ bool auto_inc_initialized;
+ mysql_mutex_t LOCK_auto_inc; /**< protecting auto_inc val */
+ ulonglong next_auto_inc_val; /**< first non reserved value */
+} HA_DATA_PARTITION;
+#endif
+
+
class Table_check_intact
{
protected:
@@ -627,13 +640,11 @@ struct TABLE_SHARE
int cached_row_logging_check;
#ifdef WITH_PARTITION_STORAGE_ENGINE
- /** @todo: Move into *ha_data for partitioning */
+ /* filled in when reading from frm */
bool auto_partitioned;
- const char *partition_info;
- uint partition_info_len;
+ const char *partition_info_str;
+ uint partition_info_str_len;
uint partition_info_buffer_size;
- const char *part_state;
- uint part_state_len;
handlerton *default_part_db_type;
#endif
@@ -653,6 +664,14 @@ struct TABLE_SHARE
void *ha_data;
void (*ha_data_destroy)(void *); /* An optional destructor for ha_data */
+#ifdef WITH_PARTITION_STORAGE_ENGINE
+ /** place to store partition specific data, LOCK_ha_data hold while init. */
+ HA_DATA_PARTITION *ha_part_data;
+ /* Destructor for ha_part_data */
+ void (*ha_part_data_destroy)(HA_DATA_PARTITION *);
+#endif
+
+
/** Instrumentation for this table share. */
PSI_table_share *m_psi;