From e2804d9b74099b9ae2b9f012be881d04dd78a75a Mon Sep 17 00:00:00 2001 From: Olivier Bertrand Date: Mon, 16 Dec 2013 01:32:47 +0100 Subject: - Fix MDEV-5393 and MDEV-5434. It is a major update of ODBC catalog tables processing that takes care of: - Drastically reduce the amount of storge needed to process them. - Handle longjmp's. - Makes the line limit an opion (MAXRES) - Schema can also be specified with the DBNAME option. - Issue warnings on fetch errors or when result lines have been limited. - Change some column names to reflect ODBC version 3 standard. The documentation have been updated accordingly modified: storage/connect/filamdbf.cpp storage/connect/ha_connect.cc storage/connect/myconn.cpp storage/connect/mysql-test/connect/r/odbc.result storage/connect/mysql-test/connect/r/odbc_postgresql.result storage/connect/mysql-test/connect/r/odbc_sqlite3.result storage/connect/mysql-test/connect/r/odbc_xls.result storage/connect/mysql-test/connect/r/xml.result storage/connect/mysql-test/connect/t/odbc_postgresql.test storage/connect/odbccat.h storage/connect/odbconn.cpp storage/connect/odbconn.h storage/connect/plgdbsem.h storage/connect/plgdbutl.cpp storage/connect/rcmsg.c storage/connect/tabfmt.cpp storage/connect/table.cpp storage/connect/tabodbc.cpp storage/connect/tabodbc.h storage/connect/tabutil.cpp storage/connect/tabwmi.cpp storage/connect/user_connect.cc storage/connect/valblk.cpp storage/connect/valblk.h storage/connect/value.cpp --- storage/connect/odbccat.h | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) (limited to 'storage/connect/odbccat.h') diff --git a/storage/connect/odbccat.h b/storage/connect/odbccat.h index 1c89334f5a9..9cc14695977 100644 --- a/storage/connect/odbccat.h +++ b/storage/connect/odbccat.h @@ -4,9 +4,10 @@ #if defined(PROMPT_OK) char *ODBCCheckConnection(PGLOBAL g, char *dsn, int cop); #endif // PROMPT_OK -PQRYRES ODBCDataSources(PGLOBAL g, bool info); -PQRYRES ODBCColumns(PGLOBAL g, char *dsn, char *table, - char *colpat, bool info); +PQRYRES ODBCDataSources(PGLOBAL g, int maxres, bool info); +PQRYRES ODBCColumns(PGLOBAL g, char *dsn, char *db, char *table, + char *colpat, int maxres, bool info); PQRYRES ODBCSrcCols(PGLOBAL g, char *dsn, char *src); -PQRYRES ODBCTables(PGLOBAL g, char *dsn, char *tabpat, bool info); -PQRYRES ODBCDrivers(PGLOBAL g, bool info); +PQRYRES ODBCTables(PGLOBAL g, char *dsn, char *db, char *tabpat, + int maxres, bool info); +PQRYRES ODBCDrivers(PGLOBAL g, int maxres, bool info); -- cgit v1.2.1