Sergei Golubchik
cb1e76e4de
Merge branch '10.1' into 10.2
2017-08-17 11:38:34 +02:00
Olivier Bertrand
4d4ba60c6e
- Fix MDEV-13463 unescape table name during detection of table structure
...
modified: storage/connect/myconn.cpp
- Remove a few gcc warnings
modified: storage/connect/jmgoconn.cpp
modified: storage/connect/json.h
modified: storage/connect/tabjson.cpp
2017-08-08 17:36:54 +02:00
Olivier Bertrand
cdf00b8d92
- Fix bug returning pointer to a stack string
...
in JVALUE::GetString
modified: storage/connect/json.cpp
modified: storage/connect/json.h
modified: storage/connect/jsonudf.cpp
- Fix a compiler bug happening on some configuration and platforms
in JSNX::CalculateArray
modified: storage/connect/jsonudf.cpp
- Set default Schema as current directory
This fix several bugs like:
Fail to make JSON catalog tables
Fail to use zipped file made by a file LOAD
modified: storage/connect/reldef.cpp
modified: storage/connect/tabjson.cpp
modified: storage/connect/tabjson.h
2017-08-07 16:24:53 +02:00
Vicențiu Ciorbaru
60c9485a8e
Merge connect/10.0 into 10.0
...
Squash all connect/10.0's commits into one and keep only
changes from storage/connect directory.
2017-08-01 11:39:10 +03:00
Olivier Bertrand
f590296c28
-- Finalize work on MongoDB access
...
Implement discovery for the MongoDB Java Driver
Create classes to minimize code and avoid dupicates
Rearrange and rename implied files
modified: storage/connect/CMakeLists.txt
renamed: storage/connect/mongofam.cpp -> storage/connect/cmgfam.cpp
renamed: storage/connect/mongofam.h -> storage/connect/cmgfam.h
modified: storage/connect/cmgoconn.h
modified: storage/connect/javaconn.h
modified: storage/connect/jdbconn.cpp
modified: storage/connect/jmgoconn.cpp
modified: storage/connect/jmgoconn.h
modified: storage/connect/mongo.cpp
modified: storage/connect/mongo.h
renamed: storage/connect/tabmgo.cpp -> storage/connect/tabcmg.cpp
renamed: storage/connect/tabmgo.h -> storage/connect/tabcmg.h
modified: storage/connect/tabjmg.cpp
modified: storage/connect/tabjmg.h
modified: storage/connect/tabjson.cpp
modified: storage/connect/tabjson.h
-- Trace Sarea allocation and freeing
modified: storage/connect/connect.cc
modified: storage/connect/plugutil.cpp
modified: storage/connect/user_connect.cc
-- Null Json values where not mark as null in JSNX::SetJsonValue
This was added in TYPE_NULL (declared as TYPE_VOID)
modified: storage/connect/json.cpp
modified: storage/connect/json.h
modified: storage/connect/jsonudf.cpp
-- Null JValues are ignored in JSNX::CalculateArray
Also done in tabjson.cpp for JSONCOL::CalculateArray
modified: storage/connect/json.h
modified: storage/connect/jsonudf.cpp
modified: storage/connect/tabjson.cpp
-- Null JSON values now represented by connect_json_null session variable
modified: storage/connect/json.cpp
modified: storage/connect/json.h
modified: storage/connect/jsonudf.cpp
modified: storage/connect/tabjson.cpp
-- JVALUE has size = 1
modified: storage/connect/json.h
-- Fix by vuvova because Debian compilation failure.
modified: storage/connect/value.cpp
2017-07-18 13:16:55 +02:00
Olivier Bertrand
3e36eb230b
Fix gcc compiler warnings reported by Sergei
...
modified: storage/connect/array.cpp
modified: storage/connect/array.h
modified: storage/connect/blkfil.cpp
modified: storage/connect/blkfil.h
modified: storage/connect/block.h
modified: storage/connect/colblk.cpp
modified: storage/connect/colblk.h
modified: storage/connect/csort.h
modified: storage/connect/filamvct.cpp
modified: storage/connect/filter.cpp
modified: storage/connect/filter.h
modified: storage/connect/global.h
modified: storage/connect/json.h
modified: storage/connect/plgdbsem.h
modified: storage/connect/plgdbutl.cpp
modified: storage/connect/tabcol.cpp
modified: storage/connect/tabcol.h
modified: storage/connect/tabdos.cpp
modified: storage/connect/tabdos.h
modified: storage/connect/tabjson.cpp
modified: storage/connect/table.cpp
modified: storage/connect/tabodbc.cpp
modified: storage/connect/tabodbc.h
modified: storage/connect/tabsys.h
modified: storage/connect/tabxml.h
modified: storage/connect/value.cpp
modified: storage/connect/value.h
modified: storage/connect/xindex.cpp
modified: storage/connect/xindex.h
modified: storage/connect/xobject.cpp
modified: storage/connect/xobject.h
modified: storage/connect/xtable.h
Set values as nullable when retrieving catalog info
modified: storage/connect/jdbconn.cpp
modified: storage/connect/mysql-test/connect/r/odbc_oracle.result
modified: storage/connect/odbconn.cpp
Change format of Jpath
modified: storage/connect/json.cpp
modified: storage/connect/jsonudf.cpp
modified: storage/connect/mysql-test/connect/r/json.result
modified: storage/connect/mysql-test/connect/r/json_udf.result
modified: storage/connect/mysql-test/connect/r/json_udf_bin.result
modified: storage/connect/mysql-test/connect/r/zip.result
modified: storage/connect/mysql-test/connect/t/json.test
modified: storage/connect/mysql-test/connect/t/json_udf.test
modified: storage/connect/mysql-test/connect/t/json_udf_bin.test
modified: storage/connect/mysql-test/connect/t/zip.test
modified: storage/connect/tabjson.cpp
modified: storage/connect/tabjson.h
modified: storage/connect/tabmgo.cpp
Change null representation from ??? to <null>
modified: storage/connect/json.cpp
Change the name of UDF that are equal to a native JSON function name
modified: storage/connect/jsonudf.cpp
modified: storage/connect/jsonudf.h
modified: storage/connect/mysql-test/connect/t/json_udf.inc
modified: storage/connect/mysql-test/connect/t/json_udf2.inc
Fix bug in making JSON project info
modified: storage/connect/mongofam.cpp
Fix COMPUTE when one argument is null
modified: storage/connect/value.cpp
Value is null only when nullable
modified: storage/connect/value.h
2017-05-23 19:35:50 +02:00
Olivier Bertrand
1c88b9a8d3
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
2017-05-11 21:57:21 +02:00
Olivier Bertrand
27f9d2f929
Commit updating CONNECT from the 10.1 version
2015-12-04 22:38:16 +01:00
Olivier Bertrand
0ec89291f1
Remove warning on Linux
...
modified: storage/connect/filamzip.cpp
Avoid calling the wrong AddValue (Windows compiler error ???)
modified: storage/connect/json.h
Fix looping bug in JARRAY::AddValue for arrays having one value.
Fix potential crash in JVALUE::SetValue
modified: storage/connect/json.cpp
Many changes to fix bugs, enhance memory handling and modify Jpath.
In JSNX some functions have been re-written or added to handle new Jpath.
BMX was re-defined to avoid a different size between Windows an Linux.
Jbin memory was fixed to use the proper memory when adding values.
Default pretty value is now 0 instead of 2.
Filename is stored in BSON when IsJson == 2.
BSON size is added to memlen in CalcLen when applicable.
The order or parameter was switch in Json_Object_Grp.
File name argument must be a constant (temporary?)
Json_Set_Item now returns file name when applicable.
modified: storage/connect/jsonudf.cpp
modified: storage/connect/jsonudf.h
Include "mycat.h"
modified: storage/connect/mycat.cc
Udf_json test revisited and fixed for Linux
modified: storage/connect/mysql-test/connect/r/json_udf.result
modified: storage/connect/mysql-test/connect/t/json_udf.inc
modified: storage/connect/mysql-test/connect/t/json_udf.test
modified: storage/connect/mysql-test/connect/t/json_udf2.inc
2015-12-04 01:02:27 +01:00
Olivier Bertrand
1d239d8c94
Make changes required by version 10.1.9 (see Sergei's mmail):
...
Use PlgDBSuballoc in JbinAlloc to avoid unsupported longjmp's.
modified: storage/connect/ha_connect.cc
modified: storage/connect/jsonudf.cpp
modified: storage/connect/jsonudf.h
modified: storage/connect/mysql-test/connect/r/json_udf.result
modified: storage/connect/mysql-test/connect/t/json_udf.inc
modified: storage/connect/tabjson.cpp
modified: storage/connect/value.cpp
Add new UDF functions jsoncontains, jsoncontains_path, json_set_item,
json_insert_item, json_update_item, jbin_set_item, jbin_insert_item,
jbin_update_item
modified: storage/connect/json.cpp
modified: storage/connect/json.h
modified: storage/connect/jsonudf.cpp
modified: storage/connect/jsonudf.h
2015-11-22 14:49:51 +01:00
Olivier Bertrand
100be0b6ee
Update JSON UDFs to version 1.04.0004
...
modified: storage/connect/json.cpp
modified: storage/connect/json.h
modified: storage/connect/jsonudf.cpp
modified: storage/connect/mysql-test/connect/r/json_udf.result
modified: storage/connect/mysql-test/connect/std_data/biblio.json
modified: storage/connect/mysql-test/connect/t/json_udf.inc
modified: storage/connect/mysql-test/connect/t/json_udf.test
modified: storage/connect/tabjson.cpp
2015-10-17 17:23:11 +02:00
Olivier Bertrand
f4fe138321
Fix assert error for where clause with UDF's
...
was fixed in HA_CONNECT::CondFilter moving res= pval->val_str(&tmp)
but this was wrong. Now res is only used for strings.
Change version number
modified: storage/connect/ha_connect.cc
Add some new UDF's
modified: storage/connect/json.cpp
modified: storage/connect/json.h
modified: storage/connect/jsonudf.cpp
modified: storage/connect/jsonudf.h
Fix change in tests json_udf
modified: storage/connect/mysql-test/connect/r/json_udf.result
modified: storage/connect/mysql-test/connect/t/json_udf.inc
modified: storage/connect/mysql-test/connect/t/json_udf.test
2015-09-15 20:42:51 +02:00
Olivier Bertrand
7915abffbf
Add experimental Bson_Array function (not documented)
...
Change names of functions not returning Json.
modified: storage/connect/json.cpp
modified: storage/connect/json.h
modified: storage/connect/jsonudf.cpp
modified: storage/connect/jsonudf.h
modified: storage/connect/mysql-test/connect/r/json_udf.result
modified: storage/connect/plugutil.c
modified: storage/connect/value.cpp
modified: storage/connect/value.h
2015-09-06 15:51:48 +02:00
Olivier Bertrand
69ce20c4bd
Add new json UDF Json_Object_List.
...
modified: storage/connect/json.cpp
modified: storage/connect/json.h
modified: storage/connect/jsonudf.cpp
modified: storage/connect/jsonudf.h
2015-08-18 12:03:29 +02:00
Olivier Bertrand
55cb3d8b44
Add new json UDFs and make possible to use a json file name as json item.
...
modified: storage/connect/json.cpp
modified: storage/connect/json.h
modified: storage/connect/jsonudf.cpp
modified: storage/connect/mysql-test/connect/r/json_udf.result
modified: storage/connect/mysql-test/connect/t/json.test
modified: storage/connect/tabjson.cpp
Fix wrong calculation of Estimated Length when the table has virtual or special columns
modified: storage/connect/reldef.h
modified: storage/connect/tabdos.cpp
Fix wrong handling of null values in ODBCCOL::ReadColumn
modified: storage/connect/tabodbc.cpp
Fix crash when SetValue_char is called with a negative length value.
This can happen in odbconn.cpp when SQLFetch returns SQL_NO_TOTAL (-4) as length.
modified: storage/connect/odbconn.cpp
modified: storage/connect/value.cpp
2015-08-14 17:07:50 +02:00
Olivier Bertrand
7482f073ae
Commit od last modifications made for version 10.0
2015-06-06 19:23:06 +02:00
Olivier Bertrand
1c756512b0
Commit win and CONNECT resolved files
2015-06-05 23:54:19 +02:00
Olivier Bertrand
f8fa5fe1bc
Commit merge resolve
2015-06-05 23:24:39 +02:00
Olivier Bertrand
893631a8c1
All the last changes made in the ob-10.0 branch including also changes of line endings of some test files
2015-05-20 12:39:17 +02:00
Olivier Bertrand
7733b247e1
Same changes than in version 10.0.17
2015-03-19 12:21:08 +01:00
Olivier Bertrand
2bb42803df
This commit includes changes done in a previous (deleted) branch plus new ones.
...
From the previous branch:
commit eda4928ff122a0845baf5ade83b4aa29244a3a89
Author: Olivier Bertrand <bertrandop@gmail.com >
Date: Mon Mar 9 22:34:56 2015 +0100
- Add discovery to JSON tables
When columns are not defined, CONNECT analyses the json file to find column definitions.
This wors only on table that are an array of objects. Pair keys are used to generate the
column names and pair values are used for its definition. When the LEVEL option is defined
as a not null integer, the eventual JPATH is scanned up to the LEVEL value.
From the current one:
- Fix MDEV-7521 when column names are utf8 encoded (not a general multi-charset fix)
- Adds more to JSON discovery processing and UDF's
- Use PlugDup everywhere it replaces PlugSubAlloc + strcpy.
2015-03-18 13:30:14 +01:00
Olivier Bertrand
e027f5e8d5
- Fix MDEV-7616 by adding SQLCOM_SET_OPTION to the accepted command list.
...
modified:
storage/connect/ha_connect.cc
- Add new JSON UDF functions and JSON functionalities.
modified:
storage/connect/json.cpp
storage/connect/json.h
storage/connect/jsonudf.cpp
storage/connect/tabjson.cpp
2015-02-24 23:18:04 +01:00
Olivier Bertrand
dcfe068d59
- Adding json udf's. Making the second version of json tables.
...
added:
storage/connect/jsonudf.cpp
modified:
storage/connect/CMakeLists.txt
storage/connect/json.cpp
storage/connect/json.h
storage/connect/tabjson.cpp
storage/connect/tabjson.h
- Fix utf8 issues with PROXY tables
modified:
storage/connect/ha_connect.cc
storage/connect/tabutil.cpp
storage/connect/tabutil.h
2015-02-11 21:39:41 +01:00
Olivier Bertrand
fd1ca70bb3
- Enhance JSON tables handling.
...
modified:
storage/connect/json.cpp
storage/connect/json.h
storage/connect/mysql-test/connect/r/json.result
storage/connect/mysql-test/connect/t/json.test
storage/connect/tabjson.cpp
storage/connect/tabjson.h
- Avoid crash when a partition table name pattern is ill formed
(such as using place holder %i instead of %s)
modified:
storage/connect/ha_connect.cc
2015-01-30 10:57:00 +01:00
Olivier Bertrand
ee5a4c8b33
- Begin eliminating on Linux OverloadedVirtual warnings.
...
However some tests failed. Going to windows to try tracing them.
modified:
storage/connect/CMakeLists.txt
storage/connect/array.h
storage/connect/json.h
storage/connect/tabdos.h
storage/connect/tabjson.h
storage/connect/taboccur.cpp
storage/connect/tabpivot.h
storage/connect/tabutil.h
storage/connect/tabxcl.h
storage/connect/valblk.h
storage/connect/xindex.h
2015-01-27 19:18:51 +01:00
Olivier Bertrand
8fc6956430
- Fix compile errors and warnings of LINUX G++
...
added:
storage/connect/json.cpp
storage/connect/json.h
storage/connect/mysql-test/connect/r/json.result
storage/connect/mysql-test/connect/std_data/biblio.jsn
storage/connect/mysql-test/connect/std_data/expense.jsn
storage/connect/mysql-test/connect/std_data/mulexp3.jsn
storage/connect/mysql-test/connect/std_data/mulexp4.jsn
storage/connect/mysql-test/connect/std_data/mulexp5.jsn
storage/connect/mysql-test/connect/t/json.test
storage/connect/tabjson.cpp
storage/connect/tabjson.h
modified:
storage/connect/CMakeLists.txt
storage/connect/engmsg.h
storage/connect/filamtxt.h
storage/connect/ha_connect.cc
storage/connect/msgid.h
storage/connect/mycat.cc
storage/connect/plgdbsem.h
storage/connect/tabdos.cpp
storage/connect/value.cpp
storage/connect/value.h
2015-01-20 01:21:56 +01:00
Olivier Bertrand
2d2e110bce
- Adding the JSON table type
...
added:
storage/connect/json.cpp
storage/connect/json.h
storage/connect/mysql-test/connect/r/json.result
storage/connect/mysql-test/connect/std_data/biblio.jsn
storage/connect/mysql-test/connect/std_data/expense.jsn
storage/connect/mysql-test/connect/std_data/mulexp3.jsn
storage/connect/mysql-test/connect/std_data/mulexp4.jsn
storage/connect/mysql-test/connect/std_data/mulexp5.jsn
storage/connect/mysql-test/connect/t/json.test
storage/connect/tabjson.cpp
storage/connect/tabjson.h
modified:
storage/connect/CMakeLists.txt
storage/connect/engmsg.h
storage/connect/filamtxt.h
storage/connect/ha_connect.cc
storage/connect/msgid.h
storage/connect/mycat.cc
storage/connect/plgdbsem.h
storage/connect/tabdos.cpp
storage/connect/value.cpp
storage/connect/value.h
2015-01-19 18:55:25 +01:00