summaryrefslogtreecommitdiff
path: root/sql/ha_partition.cc
diff options
context:
space:
mode:
authorunknown <mikael@c-870ae253.1238-1-64736c10.cust.bredbandsbolaget.se>2006-05-12 12:22:31 -0400
committerunknown <mikael@c-870ae253.1238-1-64736c10.cust.bredbandsbolaget.se>2006-05-12 12:22:31 -0400
commit0e336304d0892e6819a04cc5acd9083754529460 (patch)
tree19a757ed971dd9d4403a66cca15db1c9bfee8e12 /sql/ha_partition.cc
parenta8c13c34a1b39b1f1fe06458b95f46b900576a51 (diff)
parentb6bb92a25a6090689a812a55c31520e98fd41ace (diff)
downloadmariadb-git-0e336304d0892e6819a04cc5acd9083754529460.tar.gz
Merge c-870ae253.1238-1-64736c10.cust.bredbandsbolaget.se:/home/pappa/clean-mysql-5.1-new
into c-870ae253.1238-1-64736c10.cust.bredbandsbolaget.se:/home/pappa/bug19010 mysql-test/r/ndb_dd_basic.result: Auto merged mysql-test/r/ndb_partition_key.result: Auto merged mysql-test/t/ndb_partition_key.test: Auto merged sql/ha_partition.cc: Auto merged sql/sql_parse.cc: Auto merged sql/sql_partition.cc: Auto merged sql/sql_show.cc: Auto merged sql/sql_table.cc: Auto merged sql/table.cc: Auto merged sql/table.h: Auto merged sql/unireg.cc: Auto merged
Diffstat (limited to 'sql/ha_partition.cc')
-rw-r--r--sql/ha_partition.cc80
1 files changed, 80 insertions, 0 deletions
diff --git a/sql/ha_partition.cc b/sql/ha_partition.cc
index b1a5a447b6f..7b9dd00ed56 100644
--- a/sql/ha_partition.cc
+++ b/sql/ha_partition.cc
@@ -4175,6 +4175,8 @@ void ha_partition::info(uint flag)
index_file_length: Length of index file, in principle bytes in
indexes in the table
We report sum
+ delete_length: Length of free space easily used by new records in table
+ We report sum
mean_record_length:Mean record length in the table
We calculate this
check_time: Time of last check (only applicable to MyISAM)
@@ -4184,6 +4186,7 @@ void ha_partition::info(uint flag)
deleted= 0;
data_file_length= 0;
index_file_length= 0;
+ delete_length= 0;
check_time= 0;
file_array= m_file;
do
@@ -4196,6 +4199,7 @@ void ha_partition::info(uint flag)
deleted+= file->deleted;
data_file_length+= file->data_file_length;
index_file_length+= file->index_file_length;
+ delete_length+= file->delete_length;
if (file->check_time > check_time)
check_time= file->check_time;
}
@@ -5325,6 +5329,82 @@ void ha_partition::init_table_handle_for_HANDLER()
/****************************************************************************
+ MODULE enable/disable indexes
+****************************************************************************/
+
+/*
+ Disable indexes for a while
+ SYNOPSIS
+ disable_indexes()
+ mode Mode
+ RETURN VALUES
+ 0 Success
+ != 0 Error
+*/
+
+int ha_partition::disable_indexes(uint mode)
+{
+ handler **file;
+ int error= 0;
+
+ for (file= m_file; *file; file++)
+ {
+ if ((error= (*file)->disable_indexes(mode)))
+ break;
+ }
+ return error;
+}
+
+
+/*
+ Enable indexes again
+ SYNOPSIS
+ enable_indexes()
+ mode Mode
+ RETURN VALUES
+ 0 Success
+ != 0 Error
+*/
+
+int ha_partition::enable_indexes(uint mode)
+{
+ handler **file;
+ int error= 0;
+
+ for (file= m_file; *file; file++)
+ {
+ if ((error= (*file)->enable_indexes(mode)))
+ break;
+ }
+ return error;
+}
+
+
+/*
+ Check if indexes are disabled
+ SYNOPSIS
+ indexes_are_disabled()
+
+ RETURN VALUES
+ 0 Indexes are enabled
+ != 0 Indexes are disabled
+*/
+
+int ha_partition::indexes_are_disabled(void)
+{
+ handler **file;
+ int error= 0;
+
+ for (file= m_file; *file; file++)
+ {
+ if ((error= (*file)->indexes_are_disabled()))
+ break;
+ }
+ return error;
+}
+
+
+/****************************************************************************
MODULE Partition Share
****************************************************************************/
/*