summaryrefslogtreecommitdiff
path: root/sql/ha_innodb.h
diff options
context:
space:
mode:
Diffstat (limited to 'sql/ha_innodb.h')
-rw-r--r--sql/ha_innodb.h12
1 files changed, 11 insertions, 1 deletions
diff --git a/sql/ha_innodb.h b/sql/ha_innodb.h
index 8031fa0aa29..5677d22a2ca 100644
--- a/sql/ha_innodb.h
+++ b/sql/ha_innodb.h
@@ -58,7 +58,15 @@ class ha_innobase: public handler
ulong start_of_scan; /* this is set to 1 when we are
starting a table scan but have not
yet fetched any row, else 0 */
-
+ uint active_index_before_scan;
+ /* since a table scan in InnoDB is
+ always done through an index, a table
+ scan may change active_index; but
+ MySQL may assume that active_index
+ after a table scan is the same as
+ before; we store the value here so
+ that we can restore the value after
+ a scan */
uint last_match_mode;/* match mode of the latest search:
ROW_SEL_EXACT, ROW_SEL_EXACT_PREFIX,
or undefined */
@@ -118,6 +126,7 @@ class ha_innobase: public handler
void initialize(void);
int close(void);
double scan_time();
+ double read_time(uint index, uint ranges, ha_rows rows);
int write_row(byte * buf);
int update_row(const byte * old_data, byte * new_data);
@@ -143,6 +152,7 @@ class ha_innobase: public handler
void position(const byte *record);
void info(uint);
+ int analyze(THD* thd,HA_CHECK_OPT* check_opt);
int extra(enum ha_extra_function operation);
int reset(void);
int external_lock(THD *thd, int lock_type);