Commit graph

995 commits

Author SHA1 Message Date
Marko Mäkelä
f192b48d62 Merge 10.1 into 10.2 2017-08-29 10:07:33 +03:00
Marko Mäkelä
11352d52cd Merge 10.0 into 10.1 2017-08-28 15:05:46 +03:00
Vladislav Vaintroub
7aa846e9e3 CONNECT engine: install ha_connect.lib 2017-08-23 23:30:51 +00:00
Vladislav Vaintroub
7b36395ee9 MDEV-13630 : dont install connect-specific JAR files if connect is not built. 2017-08-23 23:29:59 +00:00
Sergei Golubchik
cb1e76e4de Merge branch '10.1' into 10.2 2017-08-17 11:38:34 +02:00
Sergei Golubchik
1b7e55900a CONNECT: compilation fix
tabtyp was defined under ODBC_SUPPORT, but used
outside of it too (under JDBC_SUPPORT).
2017-08-16 18:17:07 +02:00
Sergei Golubchik
158f96f6e3 CONNECT: fix the test to use tcp not unix socket
(socket connection ignores the port and CONNECT connects to the wrong host)
2017-08-16 18:17:03 +02:00
Sergei Golubchik
678fb208e4 Merge branch 'connect/10.2' into 10.2 2017-08-16 18:16:50 +02:00
Olivier Bertrand
60fa113f51 Fix MDEV-13503 Modified: storage/connect/jdbconn.cpp 2017-08-12 18:32:32 +02:00
Olivier Bertrand
efc8a5b689 - Fix gcc compile error: crosses initialization of ‘const char* drv’
modified:   storage/connect/mongo.cpp

- Fix test failures
  modified:   storage/connect/mysql-test/connect/r/mysql.result
  modified:   storage/connect/mysql-test/connect/r/mysql_new.result
  modified:   storage/connect/mysql-test/connect/r/tbl_thread.result
  modified:   storage/connect/mysql-test/connect/t/tbl_thread.test
  modified:   storage/connect/tabjson.cpp
2017-08-09 12:50:06 +02:00
Olivier Bertrand
3523c12eb0 - Re-Re-trying to fix Linux compile on DWORD.
modified:   storage/connect/odbconn.cpp
  modified:   storage/connect/os.h
  modified:   storage/connect/plgdbutl.cpp
2017-08-09 01:37:06 +02:00
Olivier Bertrand
272b397748 - Re-trying to fix Linux compile on DWORD.
modified:   storage/connect/odbconn.cpp
  modified:   storage/connect/plgdbutl.cpp
2017-08-09 01:23:48 +02:00
Olivier Bertrand
7947121e9a Trying to fix Linux compile on DWORDW. Modified: storage/connect/os.h 2017-08-08 22:36:22 +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
017d9ccf5d Fix Linux compile error by #define NODW. Modified: plgdbutl.cpp 2017-08-08 11:32:35 +02:00
Sergei Golubchik
8e8d42ddf0 Merge branch '10.0' into 10.1 2017-08-08 10:18:43 +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
Olivier Bertrand
f5b0993bbd Fix Linux compile error by #define NODW. Modified: plgdbutl.cpp; typo Modified: odbconn.h 2017-08-06 22:01:18 +02:00
Olivier Bertrand
0387c13ee7 - Add a define making ha_connect.cc source unique for all MariaDB version.
#if defined(NEW_MAR)
#define stored_in_db stored_in_db()
#endif   // NEW_MAR)
  modified:   storage/connect/CMakeLists.txt
  modified:   storage/connect/ha_connect.cc

- Fix compile failure for some configuration of CONNECT.
This by updating the #ifdef's JDBC, MONGO and CMGO_SUPPORT.
  modified:   storage/connect/ha_connect.cc
  modified:   storage/connect/tabjson.cpp
  modified:   storage/connect/tabjson.h

- Fix failure of zip.test (restore code wrongly deleted)
  modified:   storage/connect/tabjson.cpp

- Make sure thread TBL table structure is correctly initialized.
  modified:   storage/connect/tabtbl.cpp

- Add new test case in tbl_thread.test
  modified:   storage/connect/mysql-test/connect/r/tbl_thread.result
  modified:   storage/connect/mysql-test/connect/t/tbl_thread.test

- Remake a jar file after Java was updated
  modified:   storage/connect/mysql-test/connect/std_data/Mongo3.jar
2017-08-06 19:56:57 +02:00
Olivier Bertrand
d8f99f165b - Add FBLOCK when opening ODBC, JSON and MONGO tables.
This to have automatic closing in case of thrown error.
  modified:   storage/connect/cmgoconn.cpp
  modified:   storage/connect/cmgoconn.h
  modified:   storage/connect/filamzip.cpp
  modified:   storage/connect/javaconn.cpp
  modified:   storage/connect/javaconn.h
  modified:   storage/connect/odbconn.cpp
  modified:   storage/connect/odbconn.h
  modified:   storage/connect/plgdbsem.h
  modified:   storage/connect/plgdbutl.cpp

- Fix INCOL bug when inserting several lines to MONGO tables
  modified:   storage/connect/cmgoconn.cpp
  modified:   storage/connect/tabcmg.cpp
  modified:   storage/connect/tabjmg.cpp

- MONGO_SUPPORT is set for both MongoDB drivers
  CMGO_SUPPORT  is set only when the C driver is available
  modified:   storage/connect/CMakeLists.txt
  modified:   storage/connect/filter.h
  modified:   storage/connect/filter.h
  modified:   storage/connect/ha_connect.cc
  modified:   storage/connect/mongo.cpp
  modified:   storage/connect/mycat.cc
  modified:   storage/connect/tabjson.cpp
  modified:   storage/connect/tabjson.h

- Separate enums JCATINFO and
  modified:   storage/connect/javaconn.h
  modified:   storage/connect/jdbconn.cpp

- Fix crash when executing JDBC catfunc=driver
  modified:   storage/connect/jdbconn.cpp

- Report an error when the Mongo driver if explicitly
specified and not supported.
  modified:   storage/connect/mongo.cpp

- Fix bug causing catalog JSON tables to fail
  modified:   storage/connect/tabjson.cpp

- Protect by mutex the Ready variable of the TBLTBM table type
  modified:   storage/connect/tabtbl.cpp

- Put testing of Thread TBL tables in a separate test
With added case and modified old case that could avoid the test to fail.
  modified:   storage/connect/mysql-test/connect/r/tbl.result
  modified:   storage/connect/mysql-test/connect/t/tbl.test
  new file:   storage/connect/mysql-test/connect/r/tbl_thread.result
  new file:   storage/connect/mysql-test/connect/t/tbl_thread.test

- jmongo3.test no more exists
  deleted:    storage/connect/mysql-test/connect/t/jmongo3.test

- Add new tests for the MONGO feature (disabled)
  modified:   storage/connect/mysql-test/connect/disabled.def
  new file:   storage/connect/mysql-test/connect/r/json_java_2.result
  new file:   storage/connect/mysql-test/connect/r/json_java_3.result
  new file:   storage/connect/mysql-test/connect/r/json_mongo_c.result
  new file:   storage/connect/mysql-test/connect/r/mongo_c.result
  new file:   storage/connect/mysql-test/connect/r/mongo_java_2.result
  new file:   storage/connect/mysql-test/connect/r/mongo_java_3.result
  new file:   storage/connect/mysql-test/connect/std_data/Mongo2.jar
  new file:   storage/connect/mysql-test/connect/std_data/cities.json
  new file:   storage/connect/mysql-test/connect/t/json_java_2.test
  new file:   storage/connect/mysql-test/connect/t/json_java_3.test
  new file:   storage/connect/mysql-test/connect/t/json_mongo_c.test
  new file:   storage/connect/mysql-test/connect/t/mongo.inc
  new file:   storage/connect/mysql-test/connect/t/mongo_c.test
  new file:   storage/connect/mysql-test/connect/t/mongo_java_2.test
  new file:   storage/connect/mysql-test/connect/t/mongo_java_3.test
  new file:   storage/connect/mysql-test/connect/t/mongo_test.inc
2017-08-05 18:08:51 +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
df3fd420e5 wrapname hidden when no JDBC support, modified: storage/connect/tabjson.cpp 2017-07-28 21:13:19 +02:00
Olivier Bertrand
13b26f84bd -- Fix wrong setting of Pipe
modified:   storage/connect/tabcmg.cpp

-- Fix declaration of drv in MGOColumns
  modified:   storage/connect/mongo.cpp

-- Add jmongo3 test (disabled)
  modified:   storage/connect/mysql-test/connect/disabled.def
  added:      storage/connect/mysql-test/connect/std_data/Mongo3.jar
  added:      storage/connect/mysql-test/connect/t/jmongo3.test
2017-07-28 15:39:31 +02:00
Olivier Bertrand
c51b1a1f60 Update storage/connect/JavaWrappers.jar 2017-07-25 00:40:42 +02:00
Olivier Bertrand
f5cd810629 Update storage/connect/JavaWrappers.jar 2017-07-25 00:21:45 +02:00
Olivier Bertrand
376d1c433c Update storage/connect/JavaWrappers.jar 2017-07-24 00:05:07 +02:00
Olivier Bertrand
510e67c6fd Fix discovery crash for Java Mongo tables. Modified: storage/connect/tabjmg.cpp 2017-07-23 12:41:44 +02:00
Olivier Bertrand
7388f95319 -- Last wrappers version with support of Java Mongo discovery.
modified:   storage/connect/JavaWrappers.jar

-- Typo
  modified:   storage/connect/ha_connect.cc
  modified:   storage/connect/plgdbutl.cpp
2017-07-23 11:58:20 +02:00
Olivier Bertrand
cfe3252afe -- No suppressing of the GetPlug function. It is GetUser that can cause memory leak
when xp is modified. The old xp must be poped or is never freed.
  modified:   storage/connect/ha_connect.cc
2017-07-22 17:23:26 +02:00
Sergei Golubchik
2ce3f95151 Connect engine is Gamma 2017-07-22 13:10:10 +02:00
Olivier Bertrand
3329fbae19 -- Suppress the GetPlug function causing memory leak
modified:   storage/connect/ha_connect.h
  modified:   storage/connect/ha_connect.cc

-- Trace work storage allocation and freeing in DEVELOPMENT mode
   (Fix a compile error)
  modified:   storage/connect/plugutil.cpp
2017-07-22 00:21:59 +02:00
Olivier Bertrand
6fdd5cda6a Fix compile error. Modified user_connect.cc ha_connect.cc 2017-07-21 16:26:08 +02:00
Olivier Bertrand
8476d3052a -- Add mutex for user_connect handling
modified:   storage/connect/ha_connect.cc
  modified:   storage/connect/user_connect.cc
  modified:   storage/connect/plgdbutl.cpp
  modified:   storage/connect/user_connect.cc

-- Trace work storage allocation and freeing in DEVELOPMENT mode
  modified:   storage/connect/ha_connect.cc
  modified:   storage/connect/jsonudf.cpp
  modified:   storage/connect/plugutil.cpp
2017-07-21 15:24:13 +02:00
Olivier Bertrand
df091237a8 Modified /storage/connect/value.cpp line 668 2017-07-20 11:19:44 +02:00
Olivier Bertrand
e99af2a3fa -- Fix warnings from the new GCC 7
modified:   storage/connect/ha_connect.cc

-- Set NULL false in SetJsonValue
  modified:   storage/connect/jsonudf.cpp
  modified:   storage/connect/tabjson.cpp
2017-07-19 23:30:40 +02:00
Olivier Bertrand
ad2a4c42b6 Parenthesize set null in SetValue_pval. Modified /storage/connect/value.cpp 2017-07-19 18:31:40 +02:00
Olivier Bertrand
e05920f783 -- Check whether USERBLK still exists in PlugExit
modified:   storage/connect/connect.cc
  modified:   storage/connect/plugutil.cpp
  modified:   storage/connect/jsonudf.cpp

-- Update result from json_udf test
  modified:   storage/connect/mysql-test/connect/r/json_udf.result
2017-07-19 00:16:58 +02:00
Olivier Bertrand
38c9c0d22b Fix compile warnings and errors for nullptr. Modified /storage/connect/tabjmg (cpp and h) 2017-07-18 16:12:32 +02: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
Sergei Golubchik
1b3cf18e4e CONNECT: accessed p[i] outside of the loop
this failed json.test on fulltest2 builder
2017-07-15 19:36:43 +02:00
Sergei Golubchik
95dcfeded4 deb packages didn't build
because they compile with -Werror=format-security
2017-07-13 19:19:43 +02:00
Sergei Golubchik
b9aab7d9e3 Merge branch 'connect/10.2' into 10.2 2017-07-13 10:33:24 +02:00
Olivier Bertrand
a9d32010d0 - Fix MDEV-13239 Suppress the restriction about no blanks
around , and = in the OPTION_LIST.
  modified:   storage/connect/ha_connect.cc
2017-07-04 19:18:14 +02:00
Olivier Bertrand
b63f847743 - Suppress warning when creating mongo JSON tables
modified:   storage/connect/ha_connect.cc

- Add catalog table for Mongo java driver tables
  modified:   storage/connect/mongo.cpp
  modified:   storage/connect/mongo.h
  modified:   storage/connect/tabjmg.cpp
  modified:   storage/connect/tabjmg.h
2017-07-03 22:28:55 +02:00
Olivier Bertrand
94e5d7de85 - Add Support of the MongoDB Java Driver.
modified:   storage/connect/CMakeLists.txt
  modified:   storage/connect/JavaWrappers.jar
  modified:   storage/connect/colblk.h
  modified:   storage/connect/filter.cpp
  modified:   storage/connect/filter.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/mongofam.cpp
  modified:   storage/connect/mongofam.h
  modified:   storage/connect/mycat.cc
  modified:   storage/connect/mycat.h
  modified:   storage/connect/tabext.h
  modified:   storage/connect/tabjdbc.cpp
  modified:   storage/connect/tabjdbc.h
  modified:   storage/connect/tabjson.cpp
  modified:   storage/connect/tabjson.h
  modified:   storage/connect/tabmgo.cpp
  modified:   storage/connect/tabmgo.h
  created:    storage/connect/Mongo2Interface.java
  created:    storage/connect/Mongo3Interface.java
  created:    storage/connect/cmgoconn.cpp
  created:    storage/connect/cmgoconn.h
  created:    storage/connect/javaconn.cpp
  created:    storage/connect/javaconn.h
  created:    storage/connect/jmgfam.cpp
  created:    storage/connect/jmgfam.h
  created:    storage/connect/jmgoconn.cpp
  created:    storage/connect/jmgoconn.h
  created:    storage/connect/mongo.cpp
  created:    storage/connect/mongo.h
  created:    storage/connect/tabjmg.cpp
  created:    storage/connect/tabjmg.h

- tdbp not initialized when catched exception
in CntGetTDB (connect.cc line 188)
  modified:   storage/connect/connect.h

- CheckCleanup should sometimes doing cleanup on pure info
Sometimes MariaDB loops on info to get the size of all tables in a database.
This can sometimes fail by exhausted memory.
CheckCleanup now have a force boolean parameter (defaulting to false)
  modified:   storage/connect/ha_connect.cc
  modified:   storage/connect/user_connect.cc
  modified:   storage/connect/user_connect.h

Change the copyright of some source files
  modified:   storage/connect/connect.cc
  modified:   storage/connect/connect.h
  modified:   storage/connect/engmsg.h
  modified:   storage/connect/global.h
  modified:   storage/connect/ha_connect.cc
  modified:   storage/connect/ha_connect.h
  modified:   storage/connect/msgid.h
  modified:   storage/connect/mycat.cc
  modified:   storage/connect/mycat.h
  modified:   storage/connect/os.h
  modified:   storage/connect/osutil.c
  modified:   storage/connect/osutil.h
  modified:   storage/connect/user_connect.cc
  modified:   storage/connect/user_connect.h
2017-07-02 22:41:11 +02:00
Monty
92f1837a27 Fixed compilation warnings (while testing 32 bit builds) 2017-07-01 14:26:42 +03:00
Olivier Bertrand
c51548d6b4 Fix unhandled exception:
Force type int for ENUMs.
Replace remaining longjmp.
  modified:   storage/connect/array.cpp
  modified:   storage/connect/colblk.cpp
  modified:   storage/connect/connect.cc
  modified:   storage/connect/filter.cpp
  modified:   storage/connect/jdbconn.cpp
  modified:   storage/connect/plgdbutl.cpp
  modified:   storage/connect/tabdos.cpp
  modified:   storage/connect/tabvir.cpp
  modified:   storage/connect/tabxml.cpp
  modified:   storage/connect/value.cpp
  modified:   storage/connect/xobject.cpp
2017-06-11 17:22:56 +02:00
Olivier Bertrand
f3452fcd84 Add MONGO catalog table
modified:   storage/connect/tabmgo.cpp
  modified:   storage/connect/tabmgo.h
2017-06-10 00:52:56 +02:00
Olivier Bertrand
da3c3b903f Fix MDEV-12973: Blank columns querying SQL Server
Added support of NCHAR, NVARCHAR an ROWID JDBC types.
  modified:   storage/connect/jdbconn.cpp
2017-06-08 18:01:47 +02:00
Olivier Bertrand
5b534a6889 Fix MDEV-12969. Crash during inserting binary value in Connect table.
Seems due to making an index on unsigned integer that triggers an
un-handled THROW.
  modified:   storage/connect/tabdos.cpp
  modified:   storage/connect/xindex.cpp
2017-06-06 17:28:26 +02:00