mirror of
https://github.com/MariaDB/server.git
synced 2025-01-17 12:32:27 +01:00
5ae2656b69
commit c545d544378483bf68c4fb713cd4ec872d0df2c4 Author: Olivier Bertrand <bertrandop@gmail.com> Date: Tue Mar 27 23:13:14 2018 +0200 - Fix MDEV-15577 CONNECT engine JDBC remote index prevents UPDATE Fixed in TDBJDBC::OpenDB because query can be null for updates modified: storage/connect/tabjdbc.cpp commit c4f1fe2e8e74566e9c3296f435448d9f5c718b23 Author: Olivier Bertrand <bertrandop@gmail.com> Date: Wed Mar 14 12:21:17 2018 +0100 - Fix MDEV-15429 CONNECT engine JDBC handling Postgresql UUID type Also handle Postgresql sending type VARCHAR for TEXT column and setting length to b x7FFFFFF when the length is unknown. modified: storage/connect/Client.java modified: storage/connect/JavaWrappers.jar modified: storage/connect/JdbcInterface.java modified: storage/connect/PostgresqlInterface.java modified: storage/connect/global.h modified: storage/connect/ha_connect.cc modified: storage/connect/jdbconn.cpp modified: storage/connect/jdbconn.h modified: storage/connect/mysql-test/connect/r/jdbc_postgresql.result modified: storage/connect/mysql-test/connect/t/jdbc_postgresql.test modified: storage/connect/mysql-test/connect/t/jdbconn.inc modified: storage/connect/plgdbsem.h modified: storage/connect/tabjdbc.cpp modified: storage/connect/tabjdbc.h added: storage/connect/mysql-test/connect/std_data/JavaWrappers.jar commit 3068bb4882a316c6c32c624609db2bf24ae3ad40 Author: Olivier Bertrand <bertrandop@gmail.com> Date: Mon Feb 26 19:40:27 2018 +0100 Revert to old cmake file to avoid compile error commit da8c1c0bd6a327fd03bd321be3170f468122ef67 Author: Olivier Bertrand <bertrandop@gmail.com> Date: Mon Feb 26 16:13:39 2018 +0100 - Remove warning on not used tabtyp variable in connect_assisted_discovery modified: storage/connect/ha_connect.cc - Fix a bug causing CONNECT to loop when expanding a JSON column when the expanded column value is null or void array. - Adding the FullArray option to JSON tables. - Skipping expanded JSON lines when the expanded column value is null. modified: storage/connect/connect.cc modified: storage/connect/tabdos.h modified: storage/connect/tabjson.cpp modified: storage/connect/tabjson.h - Fix MDEV-13353 No file privilege for ODBC, JDBC, MONGO, MAC, WMI file types. modified: storage/connect/ha_connect.cc - Make some Json UDFs to accept a non JSON item as 1st parameter. modified: storage/connect/json.cpp modified: storage/connect/json.h modified: storage/connect/jsonudf.cpp modified: storage/connect/jsonudf.h - Update Json UDF tests to cope with above changes. 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/vcol.result modified: storage/connect/mysql-test/connect/t/json_udf.test modified: storage/connect/mysql-test/connect/t/vcol.test - Fix some compiler warning treated as error PlugSubAlloc no more exported because it does throw. modified: storage/connect/global.h modified: storage/connect/ha_connect.cc modified: storage/connect/jsonudf.cpp modified: storage/connect/tabjson.cpp modified: storage/connect/tabjson.h - Other files modified (?) when going back to wrong merge modified: storage/connect/CMakeLists.txt modified: storage/connect/array.cpp modified: storage/connect/colblk.cpp modified: storage/connect/connect.cc modified: storage/connect/csort.cpp modified: storage/connect/domdoc.cpp modified: storage/connect/filamap.cpp modified: storage/connect/filamgz.cpp modified: storage/connect/filamtxt.cpp modified: storage/connect/filamzip.cpp modified: storage/connect/filter.cpp modified: storage/connect/fmdlex.c modified: storage/connect/jdbconn.cpp modified: storage/connect/macutil.cpp modified: storage/connect/myconn.cpp modified: storage/connect/odbconn.cpp modified: storage/connect/plgdbutl.cpp modified: storage/connect/plugutil.cpp modified: storage/connect/preparse.h modified: storage/connect/rcmsg.c modified: storage/connect/rcmsg.h modified: storage/connect/reldef.cpp modified: storage/connect/tabdos.cpp modified: storage/connect/tabfmt.cpp modified: storage/connect/tabmac.cpp modified: storage/connect/tabmul.cpp modified: storage/connect/tabmysql.cpp modified: storage/connect/tabmysql.h modified: storage/connect/tabodbc.cpp modified: storage/connect/tabtbl.cpp modified: storage/connect/tabxml.cpp modified: storage/connect/value.cpp modified: storage/connect/xobject.cpp commit 5095628b31ed8c94bd7c794c6b0162894a9040b1 Author: Olivier Bertrand <bertrandop@gmail.com> Date: Tue Feb 13 14:29:00 2018 +0100 - Fix a bug causing CONNECT to loop when expanding a JSON column when the expanded column value is null or void array. - Adding the FullArray option to JSON tables. - Skipping expanded JSON lines when the expanded column value is null. modified: storage/connect/connect.cc modified: storage/connect/tabdos.h modified: storage/connect/tabjson.cpp modified: storage/connect/tabjson.h commit 9896174328da42016735630c893fd09eb128b48e Author: Olivier Bertrand <bertrandop@gmail.com> Date: Fri Feb 2 15:48:57 2018 +0100 - Remove warning on not used tabtyp variable in connect_assisted_discovery modified: storage/connect/ha_connect.cc commit d7e254c05f88173eb04d8dafc813013eb42ccdbe Author: Olivier Bertrand <bertrandop@gmail.com> Date: Wed Jan 31 14:42:45 2018 +0100 - Use delayed load for the MongoDB C Drive on Windows modified: storage/connect/CMakeLists.txt modified: storage/connect/cmgoconn.cpp modified: storage/connect/ha_connect.cc - Add FORCE to the connect_type_conv enum values This will translate binary values to TYPE_STRING modified: storage/connect/checklvl.h modified: storage/connect/ha_connect.cc modified: storage/connect/odbconn.cpp - Change the connect_xtrace variable to from int to set modified: storage/connect/array.cpp modified: storage/connect/blkfil.cpp modified: storage/connect/block.h modified: storage/connect/cmgoconn.cpp modified: storage/connect/colblk.cpp modified: storage/connect/connect.cc modified: storage/connect/filamap.cpp modified: storage/connect/filamdbf.cpp modified: storage/connect/filamfix.cpp modified: storage/connect/filamgz.cpp modified: storage/connect/filamtxt.cpp modified: storage/connect/filamvct.cpp modified: storage/connect/filamzip.cpp modified: storage/connect/filter.cpp modified: storage/connect/global.h modified: storage/connect/ha_connect.cc modified: storage/connect/inihandl.cpp modified: storage/connect/javaconn.cpp modified: storage/connect/jdbconn.cpp modified: storage/connect/jmgfam.cpp modified: storage/connect/jmgoconn.cpp modified: storage/connect/json.cpp modified: storage/connect/jsonudf.cpp modified: storage/connect/libdoc.cpp modified: storage/connect/mongo.cpp modified: storage/connect/mycat.cc modified: storage/connect/myconn.cpp modified: storage/connect/odbconn.cpp modified: storage/connect/plgdbutl.cpp modified: storage/connect/plugutil.cpp modified: storage/connect/reldef.cpp modified: storage/connect/tabcol.cpp modified: storage/connect/tabdos.cpp modified: storage/connect/tabext.cpp modified: storage/connect/tabfix.cpp modified: storage/connect/tabfmt.cpp modified: storage/connect/tabjdbc.cpp modified: storage/connect/tabjson.cpp modified: storage/connect/table.cpp modified: storage/connect/tabmul.cpp modified: storage/connect/tabmysql.cpp modified: storage/connect/tabodbc.cpp modified: storage/connect/tabpivot.cpp modified: storage/connect/tabsys.cpp modified: storage/connect/tabtbl.cpp modified: storage/connect/tabutil.cpp modified: storage/connect/tabvct.cpp modified: storage/connect/tabwmi.cpp modified: storage/connect/tabxml.cpp modified: storage/connect/user_connect.cc modified: storage/connect/valblk.cpp modified: storage/connect/value.cpp modified: storage/connect/xindex.cpp - Restore connect_enable_mongo variable (but undocumented) modified: storage/connect/ha_connect.cc modified: storage/connect/mycat.cc modified: storage/connect/mysql-test/connect/r/json_java_2.result modified: storage/connect/mysql-test/connect/r/json_java_3.result modified: storage/connect/mysql-test/connect/r/json_mongo_c.result modified: storage/connect/mysql-test/connect/r/mongo_c.result modified: storage/connect/mysql-test/connect/r/mongo_java_2.result modified: storage/connect/mysql-test/connect/r/mongo_java_3.result modified: storage/connect/mysql-test/connect/r/tbl_thread.result modified: storage/connect/mysql-test/connect/t/mongo.inc modified: storage/connect/mysql-test/connect/t/mongo_test.inc modified: storage/connect/mysql-test/connect/t/tbl_thread.test
92 lines
3.1 KiB
C++
92 lines
3.1 KiB
C++
/***********************************************************************/
|
|
/* JDBConn.h : header file for the JDBC connection classes. */
|
|
/***********************************************************************/
|
|
#include "javaconn.h"
|
|
|
|
// JDBC connection to a data source
|
|
class TDBJDBC;
|
|
class JDBCCOL;
|
|
class JDBConn;
|
|
class TDBXJDC;
|
|
|
|
/***********************************************************************/
|
|
/* JDBConn class. */
|
|
/***********************************************************************/
|
|
class JDBConn : public JAVAConn {
|
|
friend class TDBJDBC;
|
|
friend class TDBXJDC;
|
|
//friend PQRYRES GetColumnInfo(PGLOBAL, char*&, char *, int, PVBLK&);
|
|
private:
|
|
JDBConn(); // Standard (unused) constructor
|
|
|
|
public:
|
|
// Constructor
|
|
JDBConn(PGLOBAL g, PCSZ wrapper);
|
|
|
|
virtual void AddJars(PSTRG jpop, char sep);
|
|
PQRYRES AllocateResult(PGLOBAL g, PTDB tdbp);
|
|
|
|
// Attributes
|
|
public:
|
|
char *GetQuoteChar(void) { return m_IDQuoteChar; }
|
|
bool SetUUID(PGLOBAL g, PTDBJDBC tjp);
|
|
virtual int GetMaxValue(int infotype);
|
|
|
|
public:
|
|
// Operations
|
|
virtual bool Connect(PJPARM sop);
|
|
virtual bool MakeCursor(PGLOBAL g, PTDB tdbp, PCSZ options,
|
|
PCSZ filter, bool pipe) {return true;}
|
|
virtual int GetResultSize(PCSZ sql, PCOL colp);
|
|
virtual int ExecuteCommand(PCSZ sql);
|
|
virtual int ExecuteQuery(PCSZ sql);
|
|
virtual int ExecuteUpdate(PCSZ sql);
|
|
virtual int Fetch(int pos = 0);
|
|
virtual void SetColumnValue(int rank, PSZ name, PVAL val);
|
|
|
|
// Jdbc operations
|
|
bool PrepareSQL(PCSZ sql);
|
|
int ExecuteSQL(void); // Prepared statement
|
|
bool SetParam(JDBCCOL *colp);
|
|
int GetCatInfo(JCATPARM *cap);
|
|
bool GetDrivers(PQRYRES qrp);
|
|
PQRYRES GetMetaData(PGLOBAL g, PCSZ src);
|
|
int Rewind(PCSZ sql);
|
|
|
|
// Implementation
|
|
public:
|
|
//virtual ~JDBConn();
|
|
|
|
protected:
|
|
// Members
|
|
jmethodID xqid; // The ExecuteQuery method ID
|
|
jmethodID xuid; // The ExecuteUpdate method ID
|
|
jmethodID xid; // The Execute method ID
|
|
jmethodID grs; // The GetResult method ID
|
|
jmethodID readid; // The ReadNext method ID
|
|
jmethodID fetchid; // The Fetch method ID
|
|
jmethodID typid; // The ColumnType method ID
|
|
jmethodID prepid; // The CreatePrepStmt method ID
|
|
jmethodID xpid; // The ExecutePrep method ID
|
|
jmethodID pcid; // The ClosePrepStmt method ID
|
|
jmethodID objfldid; // The ObjectField method ID
|
|
jmethodID chrfldid; // The StringField method ID
|
|
jmethodID intfldid; // The IntField method ID
|
|
jmethodID dblfldid; // The DoubleField method ID
|
|
jmethodID fltfldid; // The FloatField method ID
|
|
jmethodID datfldid; // The DateField method ID
|
|
jmethodID timfldid; // The TimeField method ID
|
|
jmethodID tspfldid; // The TimestampField method ID
|
|
jmethodID bigfldid; // The BigintField method ID
|
|
jmethodID uidfldid; // The UuidField method ID
|
|
char m_IDQuoteChar[2];
|
|
PCSZ m_Pwd;
|
|
int m_Ncol;
|
|
int m_Aff;
|
|
int m_Fetch;
|
|
int m_RowsetSize;
|
|
jboolean m_Updatable;
|
|
jboolean m_Transact;
|
|
jboolean m_Scrollable;
|
|
bool m_Full;
|
|
}; // end of JDBConn class definition
|