diff options
author | Olivier Bertrand <bertrandop@gmail.com> | 2017-05-11 21:57:21 +0200 |
---|---|---|
committer | Olivier Bertrand <bertrandop@gmail.com> | 2017-05-11 21:57:21 +0200 |
commit | 1c88b9a8d3200bdf554ece09316cacf2146877ee (patch) | |
tree | 9e19a4dcc5079412870b83bf7473b0cb8bf1670f /storage/connect/xindex.cpp | |
parent | 531698e0da307943dff5ee6830a241d6829345cd (diff) | |
download | mariadb-git-1c88b9a8d3200bdf554ece09316cacf2146877ee.tar.gz |
Fix wrong value of JSON column
When null and the column is NOT NULL the value was not reset.
modified: storage/connect/tabjson.cpp
Fix converting bstr_t string to set error message
modified: storage/connect/domdoc.cpp
Fix MDEV-12768: -Wformat-overflow compile warnings
modified: storage/connect/global.h
modified: storage/connect/jsonudf.cpp
modified: storage/connect/plugutil.cpp
modified: storage/connect/tabvct.cpp
Typo (in external_lock)
modified: storage/connect/ha_connect.cc
Remove some warnings
modified: storage/connect/odbconn.cpp
modified: storage/connect/tabmysql.cpp
Add MEM_RESERVE flag to virtualAlloc
modified: storage/connect/plgdbutl.cpp
Fix MDEV-12573:
Accept=1 may show incorrect value for NULL column in CONNECT TBL
modified: storage/connect/tabutil.cpp
Fix wrong setting of key size when greater than 2G
modified: storage/connect/xindex.cpp
Fixing MDEV-12149: compile errors on Windows with /Zc:strictStrings
Introduce typedef PCSZ and replace PSZ by it where it matters
All done on CONNECT but compile still fails because of an included system file
modified: storage/connect/array.cpp
modified: storage/connect/catalog.h
modified: storage/connect/colblk.cpp
modified: storage/connect/colblk.h
modified: storage/connect/connect.cc
modified: storage/connect/domdoc.cpp
modified: storage/connect/domdoc.h
modified: storage/connect/filamdbf.cpp
modified: storage/connect/filamdbf.h
modified: storage/connect/filamfix.cpp
modified: storage/connect/filamgz.cpp
modified: storage/connect/filamtxt.h
modified: storage/connect/filamvct.cpp
modified: storage/connect/filamvct.h
modified: storage/connect/filamzip.cpp
modified: storage/connect/filamzip.h
modified: storage/connect/ha_connect.cc
modified: storage/connect/ha_connect.h
modified: storage/connect/jdbccat.h
modified: storage/connect/jdbconn.cpp
modified: storage/connect/jdbconn.h
modified: storage/connect/json.cpp
modified: storage/connect/json.h
modified: storage/connect/jsonudf.cpp
modified: storage/connect/jsonudf.h
modified: storage/connect/libdoc.cpp
modified: storage/connect/macutil.cpp
modified: storage/connect/myconn.cpp
modified: storage/connect/myutil.cpp
modified: storage/connect/myutil.h
modified: storage/connect/odbccat.h
modified: storage/connect/odbconn.cpp
modified: storage/connect/odbconn.h
modified: storage/connect/os.h
modified: storage/connect/plgdbsem.h
modified: storage/connect/plgdbutl.cpp
modified: storage/connect/plgxml.cpp
modified: storage/connect/plgxml.h
modified: storage/connect/plugutil.cpp
modified: storage/connect/preparse.h
modified: storage/connect/reldef.cpp
modified: storage/connect/reldef.h
modified: storage/connect/tabdos.cpp
modified: storage/connect/tabdos.h
modified: storage/connect/tabext.cpp
modified: storage/connect/tabext.h
modified: storage/connect/tabfix.cpp
modified: storage/connect/tabfix.h
modified: storage/connect/tabfmt.cpp
modified: storage/connect/tabfmt.h
modified: storage/connect/tabjdbc.cpp
modified: storage/connect/tabjdbc.h
modified: storage/connect/tabjson.cpp
modified: storage/connect/tabjson.h
modified: storage/connect/table.cpp
modified: storage/connect/tabmac.cpp
modified: storage/connect/tabmul.cpp
modified: storage/connect/tabmul.h
modified: storage/connect/tabmysql.cpp
modified: storage/connect/tabmysql.h
modified: storage/connect/tabodbc.cpp
modified: storage/connect/tabodbc.h
modified: storage/connect/tabpivot.cpp
modified: storage/connect/tabpivot.h
modified: storage/connect/tabsys.cpp
modified: storage/connect/tabsys.h
modified: storage/connect/tabutil.cpp
modified: storage/connect/tabutil.h
modified: storage/connect/tabvir.cpp
modified: storage/connect/tabvir.h
modified: storage/connect/tabwmi.cpp
modified: storage/connect/tabwmi.h
modified: storage/connect/tabxml.cpp
modified: storage/connect/tabxml.h
modified: storage/connect/tabzip.cpp
modified: storage/connect/tabzip.h
modified: storage/connect/valblk.cpp
modified: storage/connect/valblk.h
modified: storage/connect/value.cpp
modified: storage/connect/value.h
modified: storage/connect/xindex.cpp
modified: storage/connect/xobject.cpp
modified: storage/connect/xobject.h
modified: storage/connect/xtable.h
Fix MDEV-12603 Insert replaces values in ZIP file
modified: storage/connect/filamzip.cpp
modified: storage/connect/filamzip.h
Fix MDEV-12686 Handle null in json
Fix MDEV-12688 Insert does not handle type TINYINT
modified: storage/connect/json.cpp
modified: storage/connect/tabjson.cpp
Fix MDEV-12653 Cannot add index for ZIP CONNECT table
modified: storage/connect/filamzip.cpp
modified: storage/connect/ha_connect.cc
modified: storage/connect/tabdos.cpp
modified: storage/connect/tabfmt.cpp
modified: storage/connect/tabjson.cpp
modified: storage/connect/xindex.cpp
Diffstat (limited to 'storage/connect/xindex.cpp')
-rwxr-xr-x | storage/connect/xindex.cpp | 22 |
1 files changed, 9 insertions, 13 deletions
diff --git a/storage/connect/xindex.cpp b/storage/connect/xindex.cpp index 48edd12b3d8..e6e530c4dc2 100755 --- a/storage/connect/xindex.cpp +++ b/storage/connect/xindex.cpp @@ -446,11 +446,7 @@ bool XINDEX::Make(PGLOBAL g, PIXDEF sxp) #if 0 if (!dup->Step) { strcpy(g->Message, MSG(QUERY_CANCELLED)); -#if defined(USE_TRY) throw 99; -#else // !USE_TRY - longjmp(g->jumper[g->jump_level], 99); -#endif // !USE_TRY } // endif Step #endif // 0 @@ -823,7 +819,7 @@ bool XINDEX::Reorder(PGLOBAL g __attribute__((unused))) /***********************************************************************/ bool XINDEX::SaveIndex(PGLOBAL g, PIXDEF sxp) { - char *ftype; + PCSZ ftype; char fn[_MAX_PATH]; int n[NZ], nof = (Mul) ? (Ndif + 1) : 0; int id = -1, size = 0; @@ -952,7 +948,7 @@ bool XINDEX::Init(PGLOBAL g) /* Table will be accessed through an index table. */ /* If sorting is required, this will be done later. */ /*********************************************************************/ - char *ftype; + PCSZ ftype; char fn[_MAX_PATH]; int k, n, nv[NZ], id = -1; bool estim = false; @@ -969,8 +965,8 @@ bool XINDEX::Init(PGLOBAL g) // For DBF tables, Cardinality includes bad or soft deleted lines // that are not included in the index, and can be larger then the // index size. - estim = (Tdbp->Ftype == RECFM_DBF || Tdbp->Txfp->GetAmType() == TYPE_AM_ZIP); - n = Tdbp->Cardinality(g); // n is exact table size + estim = (Tdbp->Ftype == RECFM_DBF || Tdbp->Txfp->GetAmType() == TYPE_AM_ZIP); + n = Tdbp->Cardinality(g); // n is exact table size } else { // Variable table not optimized estim = true; // n is an estimate of the size @@ -1416,7 +1412,7 @@ err: /***********************************************************************/ bool XINDEX::GetAllSizes(PGLOBAL g,/* int &ndif,*/ int &numk) { - char *ftype; + PCSZ ftype; char fn[_MAX_PATH]; int nv[NZ], id = -1; // n //bool estim = false; @@ -2324,9 +2320,9 @@ XFILE::XFILE(void) : XLOAD() /***********************************************************************/ bool XFILE::Open(PGLOBAL g, char *filename, int id, MODE mode) { - char *pmod; - bool rc; - IOFF noff[MAX_INDX]; + PCSZ pmod; + bool rc; + IOFF noff[MAX_INDX]; /*********************************************************************/ /* Open the index file according to mode. */ @@ -3036,7 +3032,7 @@ bool KXYCOL::Init(PGLOBAL g, PCOL colp, int n, bool sm, int kln) return true; Klen = Valp->GetClen(); - Keys.Size = n * Klen; + Keys.Size = (size_t)n * (size_t)Klen; if (!PlgDBalloc(g, NULL, Keys)) { sprintf(g->Message, MSG(KEY_ALLOC_ERROR), Klen, n); |