Changeset: ad6f5c353f46 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=ad6f5c353f46
Modified Files:
clients/Tests/MAL-signatures.stable.out
clients/Tests/MAL-signatures.stable.out.int128
clients/Tests/exports.stable.out
gdk/CMakeLists.txt
gdk/gdk_string.c
monetdb5/modules/atoms/str.c
monetdb5/modules/mal/CMakeLists.txt
monetdb5/modules/mal/batcalc.c
monetdb5/modules/mal/calc.c
monetdb5/optimizer/CMakeLists.txt
monetdb5/optimizer/opt_mergetable.c
sql/backends/monet5/CMakeLists.txt
sql/backends/monet5/UDF/capi/capi.c
sql/backends/monet5/rel_bin.c
sql/backends/monet5/sql.c
sql/backends/monet5/sql_scenario.c
sql/backends/monet5/sql_upgrades.c
sql/backends/monet5/vaults/fits/fits.c
sql/backends/monet5/vaults/netcdf/netcdf.c
sql/backends/monet5/vaults/shp/shp.c
sql/backends/monet5/wlr.c
sql/common/sql_types.c
sql/server/rel_optimizer.c
sql/server/sql_parser.y
sql/storage/sql_storage.h
sql/test/emptydb/Tests/check.stable.out
sql/test/emptydb/Tests/check.stable.out.32bit
sql/test/emptydb/Tests/check.stable.out.int128
sql/test/miscellaneous/Tests/groupby_error.stable.out
sql/test/sys-schema/Tests/systemfunctions.stable.out
sql/test/sys-schema/Tests/systemfunctions.stable.out.int128
tools/monetdbe/monetdbe.c
Branch: unlock
Log Message:
merged with default
diffs (truncated from 159057 to 300 lines):
diff --git a/clients/Tests/exports.stable.out b/clients/Tests/exports.stable.out
--- a/clients/Tests/exports.stable.out
+++ b/clients/Tests/exports.stable.out
@@ -878,7 +878,7 @@ str MCsuspendClient(int id);
int MCvalid(Client c);
void MPresetProfiler(stream *fdout);
char *MSP_locate_sqlscript(const char *mod_name, bit recurse);
-str MSinitClientPrg(Client cntxt, str mod, str nme);
+str MSinitClientPrg(Client cntxt, const char *mod, const char *nme);
void MSresetInstructions(MalBlkPtr mb, int start);
void MSresetVariables(Client cntxt, MalBlkPtr mb, MalStkPtr glb, int start);
void MSscheduleClient(str command, str challenge, bstream *fin, stream *fout,
protocol_version protocol, size_t blocksize);
@@ -1004,7 +1004,6 @@ str SERVERsuspend(void *ret);
str SERVERtrace(void *ret, int *mid, int *flag);
BUN SQLload_file(Client cntxt, Tablet *as, bstream *b, stream *out, const char
*csep, const char *rsep, char quote, lng skip, lng maxrow, int best, bool
from_stdin, const char *tabnam, bool escape);
str STRBytes(int *res, const str *arg1);
-str STRConcat(str *res, const str *val1, const str *val2);
str STRFromWChr(str *res, const int *at);
str STRLength(int *res, const str *arg1);
str STRLower(str *res, const str *arg1);
diff --git a/clients/examples/C/CMakeLists.txt
b/clients/examples/C/CMakeLists.txt
--- a/clients/examples/C/CMakeLists.txt
+++ b/clients/examples/C/CMakeLists.txt
@@ -40,7 +40,7 @@ if(TESTING)
add_executable(streamcat
streamcat.c)
- target_link_libraries(streamcat
+ target_link_libraries(streamcat
PRIVATE
monetdb_config_header
stream)
diff --git a/clients/mapiclient/CMakeLists.txt
b/clients/mapiclient/CMakeLists.txt
--- a/clients/mapiclient/CMakeLists.txt
+++ b/clients/mapiclient/CMakeLists.txt
@@ -17,16 +17,12 @@ target_sources(mcutil
PRIVATE
dump.c
dotmonetdb.c
- dotmonetdb.h
- eventparser.c
- eventparser.h)
+ dotmonetdb.h)
target_link_libraries(mcutil
PRIVATE
monetdb_config_header
- mutils
- mcrypt
- moptions
+ mstring
mapi
stream)
@@ -40,15 +36,21 @@ target_sources(mclient
mhelp.c
mhelp.h)
+target_include_directories(mclient
+ PRIVATE
+ $<$<PLATFORM_ID:Windows>:${HAVE_GETOPT_H}>)
+
target_link_libraries(mclient
PRIVATE
monetdb_config_header
mcutil
mprompt
moptions
+ mutils
mapi
stream
$<$<BOOL:${READLINE_FOUND}>:Readline::Readline>
+ $<$<BOOL:${Iconv_FOUND}>:Iconv::Iconv>
$<$<PLATFORM_ID:Windows>:${GETOPT_LIB}>)
add_executable(msqldump)
@@ -58,11 +60,16 @@ target_sources(msqldump
msqldump.c
msqldump.h)
+target_include_directories(msqldump
+ PRIVATE
+ $<$<PLATFORM_ID:Windows>:${HAVE_GETOPT_H}>)
+
target_link_libraries(msqldump
PRIVATE
monetdb_config_header
mcutil
moptions
+ mutils
mapi
stream
mprompt
@@ -72,7 +79,13 @@ add_executable(stethoscope)
target_sources(stethoscope
PRIVATE
- stethoscope.c)
+ stethoscope.c
+ eventparser.c
+ eventparser.h)
+
+target_include_directories(stethoscope
+ PRIVATE
+ $<$<PLATFORM_ID:Windows>:${HAVE_GETOPT_H}>)
target_link_libraries(stethoscope
PRIVATE
diff --git a/clients/mapiclient/dump.c b/clients/mapiclient/dump.c
--- a/clients/mapiclient/dump.c
+++ b/clients/mapiclient/dump.c
@@ -776,7 +776,7 @@ dump_type(Mapi mid, stream *toConsole, c
space = mnstr_printf(toConsole, "INTERVAL MONTH");
else
fprintf(stderr, "Internal error: unrecognized month
interval %s\n", c_type_digits);
- } else if (strcmp(c_type, "sec_interval") == 0) {
+ } else if (strlen(c_type) > 4 && strcmp(c_type+3, "_interval") == 0) {
if (strcmp(c_type_digits, "4") == 0)
space = mnstr_printf(toConsole, "INTERVAL DAY");
else if (strcmp(c_type_digits, "5") == 0)
@@ -1777,7 +1777,7 @@ dump_table_data(Mapi mid, const char *sc
mnstr_printf(toConsole, "NULL");
else if (useInserts) {
const char *tp = mapi_get_type(hdl, i);
- if (strcmp(tp, "sec_interval") == 0) {
+ if (strlen(tp) > 4 && strcmp(tp+3, "_interval")
== 0) {
const char *p = strchr(s, '.');
if (p == NULL)
p = s + strlen(s);
diff --git a/clients/mapiclient/mhelp.c b/clients/mapiclient/mhelp.c
--- a/clients/mapiclient/mhelp.c
+++ b/clients/mapiclient/mhelp.c
@@ -524,9 +524,9 @@ SQLhelp sqlhelp1[] = {
NULL},
{"START TRANSACTION",
"Change transaction mode from auto-commit to user controlled
commit/rollback",
- "{ START | BEGIN } TRANSACTION transactionmode",
+ "{ START | BEGIN } TRANSACTION [ transactionmode ]",
"transactionmode",
- "See also
https://www.monetdb.org/Documentation/Manuals/SQLreference/Transactions"},
+ "See also
https://www.monetdb.org/Documentation/SQLreference/Transactions"},
{"TABLE JOINS",
"",
"'(' joined_table ') |\n"
diff --git a/clients/mapilib/monetdb-mapi.pc.in
b/clients/mapilib/monetdb-mapi.pc.in
--- a/clients/mapilib/monetdb-mapi.pc.in
+++ b/clients/mapilib/monetdb-mapi.pc.in
@@ -6,8 +6,9 @@
Name: monetdb-mapi
Description: MonetDB MAPI C-client libary
+URL: https://www.monetdb.org/
Version: @MONETDB_VERSION@
-Requires: monetdb-stream openssl
+Requires.private: monetdb-stream = @MONETDB_VERSION@ openssl
Libs: -L@CMAKE_INSTALL_FULL_LIBDIR@ -lmapi
Cflags: -I@CMAKE_INSTALL_FULL_INCLUDEDIR@/monetdb
diff --git a/clients/odbc/driver/CMakeLists.txt
b/clients/odbc/driver/CMakeLists.txt
--- a/clients/odbc/driver/CMakeLists.txt
+++ b/clients/odbc/driver/CMakeLists.txt
@@ -106,6 +106,8 @@ target_sources(MonetODBC
ODBC.syms)
target_include_directories(MonetODBC
+ PRIVATE
+ $<$<BOOL:${ODBC_FOUND}>:${ODBC_INCLUDE_DIR}>
PUBLIC
$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}>
$<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}/monetdb>)
@@ -118,8 +120,7 @@ target_link_libraries(MonetODBC
PRIVATE
monetdb_config_header
mutils
- mapi
- ODBC::ODBC)
+ mapi)
install(TARGETS
MonetODBC
diff --git a/clients/odbc/driver/ODBCQueries.h
b/clients/odbc/driver/ODBCQueries.h
--- a/clients/odbc/driver/ODBCQueries.h
+++ b/clients/odbc/driver/ODBCQueries.h
@@ -9,148 +9,115 @@
/* this file contains parts of queries that are used in multiple
* places */
-#define DATA_TYPE(t) \
- "case " #t ".type " \
- "when 'bigint' then %d " \
- "when 'blob' then %d " \
- "when 'boolean' then %d " \
- "when 'char' then %d " \
- "when 'clob' then %d " \
- "when 'date' then %d " \
- "when 'decimal' then %d " \
- "when 'double' then %d " \
- "when 'hugeint' then %d " \
- "when 'int' then %d " \
- "when 'month_interval' then " \
- "case " #t ".type_digits " \
- "when 1 then %d " \
- "when 2 then %d " \
- "when 3 then %d " \
- "end " \
- "when 'real' then %d " \
- "when 'sec_interval' then " \
- "case " #t ".type_digits " \
- "when 4 then %d " \
- "when 5 then %d " \
- "when 6 then %d " \
- "when 7 then %d " \
- "when 8 then %d " \
- "when 9 then %d " \
- "when 10 then %d " \
- "when 11 then %d " \
- "when 12 then %d " \
- "when 13 then %d " \
- "end " \
- "when 'smallint' then %d " \
- "when 'time' then %d " \
- "when 'timestamp' then %d " \
- "when 'timestamptz' then %d " \
- "when 'timetz' then %d " \
- "when 'tinyint' then %d " \
- "when 'varchar' then %d " \
+#define DATA_TYPE(t) \
+ "case " #t ".type "
\
+ "when 'bigint' then %d " \
+ "when 'blob' then %d " \
+ "when 'boolean' then %d " \
+ "when 'char' then %d " \
+ "when 'clob' then %d " \
+ "when 'date' then %d " \
+ "when 'decimal' then %d " \
+ "when 'double' then %d " \
+ "when 'hugeint' then %d " \
+ "when 'int' then %d " \
+ "when 'month_interval' then " \
+ "case " #t ".type_digits " \
+ "when 1 then %d " \
+ "when 2 then %d " \
+ "when 3 then %d " \
+ "end "
\
+ "when 'real' then %d " \
+ "when 'sec_interval' then " \
+ "case " #t ".type_digits " \
+ "when 4 then %d " \
+ "when 5 then %d " \
+ "when 6 then %d " \
+ "when 7 then %d " \
+ "when 8 then %d " \
+ "when 9 then %d " \
+ "when 10 then %d " \
+ "when 11 then %d " \
+ "when 12 then %d " \
+ "when 13 then %d " \
+ "end "
\
+ "when 'smallint' then %d " \
+ "when 'time' then %d " \
+ "when 'timestamp' then %d " \
+ "when 'timestamptz' then %d " \
+ "when 'timetz' then %d " \
+ "when 'tinyint' then %d " \
+ "when 'varchar' then %d " \
"end as data_type"
-#define DATA_TYPE_ARGS \
- SQL_BIGINT, SQL_LONGVARBINARY, SQL_BIT, SQL_WCHAR, \
- SQL_WLONGVARCHAR, SQL_TYPE_DATE, SQL_DECIMAL, \
- SQL_DOUBLE, SQL_HUGEINT, SQL_INTEGER, \
- SQL_INTERVAL_YEAR, SQL_INTERVAL_YEAR_TO_MONTH, \
- SQL_INTERVAL_MONTH, SQL_REAL, SQL_INTERVAL_DAY, \
+#define DATA_TYPE_ARGS
\
+ SQL_BIGINT, SQL_LONGVARBINARY, SQL_BIT, SQL_WCHAR,
\
+ SQL_WLONGVARCHAR, SQL_TYPE_DATE, SQL_DECIMAL,
\
+ SQL_DOUBLE, SQL_HUGEINT, SQL_INTEGER,
\
+ SQL_INTERVAL_YEAR, SQL_INTERVAL_YEAR_TO_MONTH,
\
+ SQL_INTERVAL_MONTH, SQL_REAL, SQL_INTERVAL_DAY,
\
SQL_INTERVAL_DAY_TO_HOUR, SQL_INTERVAL_DAY_TO_MINUTE, \
- SQL_INTERVAL_DAY_TO_SECOND, SQL_INTERVAL_HOUR, \
- SQL_INTERVAL_HOUR_TO_MINUTE, \
- SQL_INTERVAL_HOUR_TO_SECOND, SQL_INTERVAL_MINUTE, \
- SQL_INTERVAL_MINUTE_TO_SECOND, SQL_INTERVAL_SECOND, \
- SQL_SMALLINT, SQL_TYPE_TIME, SQL_TYPE_TIMESTAMP, \
- SQL_TYPE_TIMESTAMP, SQL_TYPE_TIME, SQL_TINYINT, \
+ SQL_INTERVAL_DAY_TO_SECOND, SQL_INTERVAL_HOUR,
\
+ SQL_INTERVAL_HOUR_TO_MINUTE,
\
+ SQL_INTERVAL_HOUR_TO_SECOND, SQL_INTERVAL_MINUTE,
\
+ SQL_INTERVAL_MINUTE_TO_SECOND, SQL_INTERVAL_SECOND,
\
+ SQL_SMALLINT, SQL_TYPE_TIME, SQL_TYPE_TIMESTAMP,
\
+ SQL_TYPE_TIMESTAMP, SQL_TYPE_TIME, SQL_TINYINT,
\
SQL_WVARCHAR
-#define TYPE_NAME(t) \
- "case " #t ".type " \
- "when 'bigint' then 'BIGINT' " \
- "when 'blob' then 'BINARY LARGE OBJECT' " \
- "when 'boolean' then 'BOOLEAN' " \
- "when 'char' then 'CHARACTER' " \
- "when 'clob' then 'CHARACTER LARGE OBJECT' " \
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list