it belongs to each tables and the catalog being share between several
instances of CONNECT, when a query implied several tables belonging to
different databases, some where pointing on the wrong database. This
fix bugs occuring in queries such as:
INSERT into db1.t1 select * from db2.t2;
Where the t1 data file was made in db2.
modified:
storage/connect/catalog.h
storage/connect/connect.cc
storage/connect/filamdbf.cpp
storage/connect/filamdbf.h
storage/connect/ha_connect.cc
storage/connect/ha_connect.h
storage/connect/mycat.cc
storage/connect/mycat.h
storage/connect/plgdbsem.h
storage/connect/plgdbutl.cpp
storage/connect/reldef.cpp
storage/connect/reldef.h
storage/connect/tabfix.h
storage/connect/tabfmt.cpp
storage/connect/tabfmt.h
storage/connect/tabmul.cpp
catalog data path had not been set. This was added into ha_connect::info.
modified:
storage/connect/ha_connect.cc
- All the functions querying table options could return information from the wrong
table when several CONNECT tables were used in the same query (for instance joined
together) This was because they belonged to the catalog class that is shared between
all tables in the same query. They have been moved from the catalog class to the
TABDEF/RELDEF class that is attached to each table. This was a major potential bug.
modified:
storage/connect/catalog.h
storage/connect/filamvct.cpp
storage/connect/filamzip.cpp
storage/connect/mycat.cc
storage/connect/mycat.h
storage/connect/reldef.cpp
storage/connect/reldef.h
storage/connect/tabdos.cpp
storage/connect/tabfmt.cpp
storage/connect/tabmul.cpp
storage/connect/tabmysql.cpp
storage/connect/taboccur.cpp
storage/connect/tabodbc.cpp
storage/connect/tabpivot.cpp
storage/connect/tabsys.cpp
storage/connect/tabtbl.cpp
storage/connect/tabutil.cpp
storage/connect/tabvct.cpp
storage/connect/tabwmi.cpp
storage/connect/tabxcl.cpp
storage/connect/tabxml.cpp
storage/connect/xindex.cpp
- Prepare indexing of MYSQL/ODBC tables (as does FEDERATED) (Not implemented yet)
modified:
storage/connect/ha_connect.cc
storage/connect/ha_connect.h
storage/connect/mycat.cc
storage/connect/mycat.h
- Typo
modified:
storage/connect/plgdbutl.cpp
- Fix accidental crash when closing domdoc xml table
modified:
storage/connect/domdoc.cpp
- Update table and index flags. Correct version number in maria_declare_plugin.
modified:
storage/connect/ha_connect.cc
storage/connect/ha_connect.h
storage/connect/mycat.cc
storage/connect/mycat.h
- Fix syntax error when getting columns of a non-select srcdef (discovery)
modified:
storage/connect/myconn.cpp
- Update some tests and result according to new flag setting
modified:
storage/connect/mysql-test/connect/r/alter.result
storage/connect/mysql-test/connect/r/dbf.result
storage/connect/mysql-test/connect/t/dbf.test
- Change some tracing tests to avoid too much test printed
modified:
storage/connect/plgdbutl.cpp
storage/connect/tabutil.cpp
storage/connect/value.cpp
sub-tables are accessed via the MySQL API like the MYSQL CONNECT tables.
modified:
mysql-test/suite/connect/r/tbl.result
mysql-test/suite/connect/t/tbl.test
storage/connect/catalog.h
storage/connect/ha_connect.cc
storage/connect/mycat.cc
storage/connect/mycat.h
storage/connect/tabmysql.h
storage/connect/tabtbl.cpp
catalog functions have been changed:
Table_types are now internally represented be enum TABTYPE.
Catalog function names are internally translated to a uint.
The function GetTypeID was modified accordingly and a new
function GetFuncID was implemented in mycat.cc.
Modified:
ha_connect.cc
odbccat.h
odbconn.cpp
tabodbc.cpp
tabfmt.cpp
tabmysql.h
tabmysql.cpp
tabwmi.cpp
mycat.h
mycat.cc
plgdbsem.h
reldef.h
tabdos.cpp
rcmsg.h