diff options
author | Olivier Bertrand <bertrandop@gmail.com> | 2014-05-02 15:55:45 +0200 |
---|---|---|
committer | Olivier Bertrand <bertrandop@gmail.com> | 2014-05-02 15:55:45 +0200 |
commit | cdbb79583778827e7ceb90f3e9230062327e0b09 (patch) | |
tree | 1684a22d140413412e43cf7d8564645c2fbc071f /storage/connect/table.cpp | |
parent | 006dfe52822ee3550a42a9338ad29aca012945f4 (diff) | |
download | mariadb-git-cdbb79583778827e7ceb90f3e9230062327e0b09.tar.gz |
- Adding fetched columns to Dynamic index key (unique only)
Fix two bugs concerning added KXYCOL's:
1 - Not set during reading
2 - Val_K not set in FastFind
modified:
storage/connect/connect.cc
storage/connect/filamtxt.h
storage/connect/tabdos.cpp
storage/connect/tabfix.cpp
storage/connect/table.cpp
storage/connect/valblk.h
storage/connect/xindex.cpp
storage/connect/xindex.h
storage/connect/xtable.h
Diffstat (limited to 'storage/connect/table.cpp')
-rw-r--r-- | storage/connect/table.cpp | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/storage/connect/table.cpp b/storage/connect/table.cpp index f550420ef3a..6cd043ec9a9 100644 --- a/storage/connect/table.cpp +++ b/storage/connect/table.cpp @@ -314,10 +314,14 @@ int TDBASE::ResetTableOpt(PGLOBAL g, bool dop, bool dox) /***********************************************************************/
/* SetKindex: set or reset the index pointer. */
/***********************************************************************/
-void TDBASE::SetKindex(PKXBASE kxp)
+void TDBASE::SetKindex(PGLOBAL g, PKXBASE kxp)
{
- if (To_Kindex)
+ if (To_Kindex) {
+ int pos = GetRecpos(); // To be reset in Txfp
+
To_Kindex->Close(); // Discard old index
+ SetRecpos(g, pos); // Ignore return value
+ } // endif To_Kindex
To_Kindex = kxp;
} // end of SetKindex
|