summaryrefslogtreecommitdiff
path: root/storage/connect/xindex.h
diff options
context:
space:
mode:
authorOlivier Bertrand <bertrandop@gmail.com>2014-04-30 10:48:29 +0200
committerOlivier Bertrand <bertrandop@gmail.com>2014-04-30 10:48:29 +0200
commite7c7256d1d67125921d9f688a382aef873f5b9ce (patch)
tree06a78782e6deea301516dc6df03a3a686b191130 /storage/connect/xindex.h
parent883c37a827ede4379d25896e482e0fe5292330a3 (diff)
downloadmariadb-git-e7c7256d1d67125921d9f688a382aef873f5b9ce.tar.gz
- Implementation of adding selected columns to dynamic indexes.
modified: storage/connect/connect.cc storage/connect/ha_connect.cc storage/connect/ha_connect.h storage/connect/tabdos.cpp storage/connect/tabdos.h storage/connect/tabvct.cpp storage/connect/tabvct.h storage/connect/xindex.cpp storage/connect/xindex.h
Diffstat (limited to 'storage/connect/xindex.h')
-rw-r--r--storage/connect/xindex.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/storage/connect/xindex.h b/storage/connect/xindex.h
index f447051a517..50f8282e5c3 100644
--- a/storage/connect/xindex.h
+++ b/storage/connect/xindex.h
@@ -177,6 +177,8 @@ class DllExport XXBASE : public CSORT, public BLOCK {
virtual void Reset(void) = 0;
virtual bool IsMul(void) {return false;}
virtual bool IsRandom(void) {return true;}
+ virtual bool IsDynamic(void) {return Dynamic;}
+ virtual void SetDynamic(bool dyn) {Dynamic = dyn;}
virtual bool HaveSame(void) {return false;}
virtual int GetCurPos(void) {return Cur_K;}
virtual void SetNval(int n) {assert(n == 1);}
@@ -227,6 +229,7 @@ class DllExport XXBASE : public CSORT, public BLOCK {
OPVAL Op; // Search operator
bool Mul; // true if multiple
bool Srtd; // true for sorted column
+ bool Dynamic; // true when dynamically made
int Val_K; // Index of current value
int Nblk; // Number of blocks
int Sblk; // Block size
@@ -275,6 +278,7 @@ class DllExport XINDEX : public XXBASE {
bool GetAllSizes(PGLOBAL g, int &ndif, int &numk);
protected:
+ bool AddColumns(void);
bool NextValDif(void);
// Members