Changeset: 502dcb90a74c for MonetDB URL: https://dev.monetdb.org/hg/MonetDB/rev/502dcb90a74c Modified Files: clients/Tests/MAL-signatures-hge.test clients/Tests/MAL-signatures.test clients/Tests/exports.stable.out gdk/gdk_bat.c sql/backends/monet5/rel_bin.c sql/backends/monet5/sql.c sql/backends/monet5/sql_statement.c sql/common/sql_types.c sql/server/sql_atom.c sql/storage/bat/bat_storage.c sql/storage/sql_storage.h sql/storage/store.c Branch: nilmask Log Message:
Merge with default branch. diffs (truncated from 6080 to 300 lines): diff --git a/CMakeLists.txt b/CMakeLists.txt --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -182,6 +182,11 @@ install(FILES DESTINATION ${EXPORT_TARGET_PATH} COMPONENT monetdbdev) +install(FILES + ${CMAKE_CURRENT_BINARY_DIR}/MonetDBConfigVersion.cmake + DESTINATION ${EXPORT_TARGET_PATH} + COMPONENT monetdbdev) + include(monetdb-packages) include(CTest) diff --git a/clients/Tests/All b/clients/Tests/All --- a/clients/Tests/All +++ b/clients/Tests/All @@ -1,6 +1,6 @@ exports -HAVE_HGE&HAVE_FITS&HAVE_GEOM&HAVE_LIBR&HAVE_LIBPY3&HAVE_NETCDF&HAVE_SHP&NOT_WIN32?MAL-signatures-hge -!HAVE_HGE&HAVE_FITS&HAVE_GEOM&HAVE_LIBR&HAVE_LIBPY3&HAVE_NETCDF&HAVE_SHP&NOT_WIN32?MAL-signatures +HAVE_HGE&HAVE_FITS&HAVE_GEOM&HAVE_LIBR&HAVE_LIBPY3&HAVE_NETCDF&HAVE_SHP&HAVE_CUDF?MAL-signatures-hge +!HAVE_HGE&HAVE_FITS&HAVE_GEOM&HAVE_LIBR&HAVE_LIBPY3&HAVE_NETCDF&HAVE_SHP&HAVE_CUDF?MAL-signatures NOT_WIN32?melcheck mclient-uri testcondvar diff --git a/clients/Tests/MAL-signatures-hge.test b/clients/Tests/MAL-signatures-hge.test --- a/clients/Tests/MAL-signatures-hge.test +++ b/clients/Tests/MAL-signatures-hge.test @@ -47524,6 +47524,16 @@ command mmath.log2arg(X_0:flt, X_1:flt): MATHbinary_LOGflt; The log(x) function returns the logarithm of x in the given base. mmath +nextafter +command mmath.nextafter(X_0:dbl, X_1:dbl):dbl +MATHbinary_NEXTAFTERdbl; +The returns the next representable floating-point value of x in the direction of y. +mmath +nextafter +command mmath.nextafter(X_0:flt, X_1:flt):flt +MATHbinary_NEXTAFTERflt; +The returns the next representable floating-point value of x in the direction of y. +mmath pi command mmath.pi():dbl MATHpi; diff --git a/clients/Tests/MAL-signatures.test b/clients/Tests/MAL-signatures.test --- a/clients/Tests/MAL-signatures.test +++ b/clients/Tests/MAL-signatures.test @@ -35994,6 +35994,16 @@ command mmath.log2arg(X_0:flt, X_1:flt): MATHbinary_LOGflt; The log(x) function returns the logarithm of x in the given base. mmath +nextafter +command mmath.nextafter(X_0:dbl, X_1:dbl):dbl +MATHbinary_NEXTAFTERdbl; +The returns the next representable floating-point value of x in the direction of y. +mmath +nextafter +command mmath.nextafter(X_0:flt, X_1:flt):flt +MATHbinary_NEXTAFTERflt; +The returns the next representable floating-point value of x in the direction of y. +mmath pi command mmath.pi():dbl MATHpi; 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 @@ -790,7 +790,6 @@ str AUTHunlockVault(const char *password str AUTHverifyPassword(const char *passwd); str BKCmirror(bat *ret, const bat *bid); str BKCnewBAT(bat *res, const int *tt, const BUN *cap, role_t role); -str CLTsessions(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci); str CLTshutdown(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci); str COPYrejects(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci); str COPYrejects_clear(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci); @@ -1022,6 +1021,7 @@ int getOidConstant(MalBlkPtr mb, oid val int getPC(MalBlkPtr mb, InstrPtr p); str getPipeCatalog(bat *nme, bat *def, bat *stat); const char *getRef; +str getScenarioLanguage(Client c); int getShtConstant(MalBlkPtr mb, sht val); int getStrConstant(MalBlkPtr mb, str val); const char *getTraceRef; diff --git a/clients/odbc/winsetup/CMakeLists.txt b/clients/odbc/winsetup/CMakeLists.txt --- a/clients/odbc/winsetup/CMakeLists.txt +++ b/clients/odbc/winsetup/CMakeLists.txt @@ -21,8 +21,6 @@ target_sources(MonetODBCs resource.h) target_include_directories(MonetODBCs -# PRIVATE -# $<$<PLATFORM_ID:Windows>:${HAVE_AFXRES_H}> PUBLIC $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}> $<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}/monetdb>) diff --git a/clients/odbc/winsetup/setup.rc b/clients/odbc/winsetup/setup.rc --- a/clients/odbc/winsetup/setup.rc +++ b/clients/odbc/winsetup/setup.rc @@ -10,7 +10,8 @@ // // Generated from the TEXTINCLUDE 2 resource. // -#include "afxres.h" +#include "WinResrc.h" +#define IDC_STATIC (-1) ///////////////////////////////////////////////////////////////////////////// #undef APSTUDIO_READONLY_SYMBOLS @@ -37,22 +38,7 @@ END 2 TEXTINCLUDE BEGIN - "#include ""afxres.h""\r\n" - "\0" -END - -3 TEXTINCLUDE -BEGIN - "#define _AFX_NO_SPLITTER_RESOURCES\r\n" - "#define _AFX_NO_OLE_RESOURCES\r\n" - "#define _AFX_NO_TRACKER_RESOURCES\r\n" - "#define _AFX_NO_PROPERTY_RESOURCES\r\n" - "\r\n" - "#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_ENU)\r\n" - "LANGUAGE 9, 1\r\n" - "#pragma code_page(1252)\r\n" - "#include ""afxres.rc"" // Standard components\r\n" - "#endif\r\n" + "#include ""WinResrc.h""\r\n" "\0" END @@ -187,25 +173,3 @@ END IDB_BANNER BITMAP "banner.bmp" #endif // English (U.S.) resources ///////////////////////////////////////////////////////////////////////////// - - - -#ifndef APSTUDIO_INVOKED -///////////////////////////////////////////////////////////////////////////// -// -// Generated from the TEXTINCLUDE 3 resource. -// -#define _AFX_NO_SPLITTER_RESOURCES -#define _AFX_NO_OLE_RESOURCES -#define _AFX_NO_TRACKER_RESOURCES -#define _AFX_NO_PROPERTY_RESOURCES - -#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_ENU) -LANGUAGE 9, 1 -#pragma code_page(1252) -#include "afxres.rc" // Standard components -#endif - -///////////////////////////////////////////////////////////////////////////// -#endif // not APSTUDIO_INVOKED - diff --git a/cmake/monetdb-defines.cmake b/cmake/monetdb-defines.cmake --- a/cmake/monetdb-defines.cmake +++ b/cmake/monetdb-defines.cmake @@ -20,14 +20,10 @@ function(monetdb_configure_defines) check_include_file("fcntl.h" HAVE_FCNTL_H) # use find_path for getopt.h since we need the path on Windows find_path(HAVE_GETOPT_H "getopt.h") - check_include_file("io.h" HAVE_IO_H) check_include_file("kvm.h" HAVE_KVM_H) - check_include_file("libgen.h" HAVE_LIBGEN_H) - check_include_file("libintl.h" HAVE_LIBINTL_H) check_include_file("mach/mach_init.h" HAVE_MACH_MACH_INIT_H) check_include_file("mach/task.h" HAVE_MACH_TASK_H) check_include_file("mach-o/dyld.h" HAVE_MACH_O_DYLD_H) - check_include_file("netinet/in.h" HAVE_NETINET_IN_H) check_include_file("poll.h" HAVE_POLL_H) check_include_file("procfs.h" HAVE_PROCFS_H) check_include_file("pwd.h" HAVE_PWD_H) @@ -42,13 +38,11 @@ function(monetdb_configure_defines) check_include_files("stdlib.h;sys/random.h" HAVE_SYS_RANDOM_H) check_include_file("sys/resource.h" HAVE_SYS_RESOURCE_H) check_include_file("sys/stat.h" HAVE_SYS_STAT_H) - check_include_file("sys/sysctl.h" HAVE_SYS_SYSCTL_H) check_include_file("sys/termios.h" HAVE_TERMIOS_H) check_include_file("sys/times.h" HAVE_SYS_TIMES_H) check_include_file("sys/types.h" HAVE_SYS_TYPES_H) check_include_file("sys/uio.h" HAVE_SYS_UIO_H) check_include_file("sys/un.h" HAVE_SYS_UN_H) - check_include_file("sys/wait.h" HAVE_SYS_WAIT_H) check_include_file("unistd.h" HAVE_UNISTD_H) check_include_file("winsock2.h" HAVE_WINSOCK_H) @@ -105,23 +99,15 @@ function(monetdb_configure_defines) # Some POSIX systems don't have it (e.g. Macos) check_symbol_exists("posix_fallocate" "fcntl.h" HAVE_POSIX_FALLOCATE) check_symbol_exists("posix_madvise" "sys/mman.h" HAVE_POSIX_MADVISE) - check_function_exists("putenv" HAVE_PUTENV) check_function_exists("setsid" HAVE_SETSID) check_function_exists("shutdown" HAVE_SHUTDOWN) check_function_exists("sigaction" HAVE_SIGACTION) check_function_exists("siglongjmp" HAVE_SIGLONGJMP) - check_symbol_exists("stpcpy" "string.h" HAVE_STPCPY) - check_function_exists("strcasestr" HAVE_STRCASESTR) - check_symbol_exists("strncasecmp" "strings.h" HAVE_STRNCASECMP) check_function_exists("strptime" HAVE_STRPTIME) - check_function_exists("strsignal" HAVE_STRSIGNAL) check_symbol_exists("sysconf" "unistd.h" HAVE_SYSCONF) check_function_exists("task_info" HAVE_TASK_INFO) check_function_exists("times" HAVE_TIMES) check_function_exists("uname" HAVE_UNAME) - check_symbol_exists("wcwidth" "wchar.h" HAVE_WCWIDTH) - # Some libc versions on Linux distributions don't have it - check_symbol_exists("semtimedop" "sys/types.h;sys/ipc.h;sys/sem.h" HAVE_SEMTIMEDOP) cmake_push_check_state() set(CMAKE_REQUIRED_LIBRARIES "${CMAKE_THREAD_LIBS_INIT}") check_function_exists("pthread_kill" HAVE_PTHREAD_KILL) @@ -290,7 +276,6 @@ macro(monetdb_configure_sizes) set(CMAKE_REQUIRED_INCLUDES "${CMAKE_REQUIRED_INCLUDES};${ODBC_INCLUDE_DIRS}") if(WIN32) set(CMAKE_EXTRA_INCLUDE_FILES "${CMAKE_EXTRA_INCLUDE_FILES};Windows.h;sqlext.h;sqltypes.h") - check_include_file("afxres.h" HAVE_AFXRES_H) else() set(CMAKE_EXTRA_INCLUDE_FILES "${CMAKE_EXTRA_INCLUDE_FILES};sql.h;sqltypes.h") endif() diff --git a/common/stream/Tests/urlstream.py b/common/stream/Tests/urlstream.py --- a/common/stream/Tests/urlstream.py +++ b/common/stream/Tests/urlstream.py @@ -9,25 +9,6 @@ import time OUTPUT = io.StringIO() -def wait_for_server(timeout): - deadline = time.time() + timeout - while time.time() < deadline: - if port == 0: - time.sleep(0.25) - continue - s = socket.socket(socket.AF_INET, socket.SOCK_STREAM) - s.settimeout(0.1) - try: - s.connect(('localhost', port)) - break - except ConnectionRefusedError: - time.sleep(0.1) - finally: - s.close() - else: - print(f'Warning: waited {timeout} seconds for the server to start but could still not connect', file=OUTPUT) - - class Handler(http.server.BaseHTTPRequestHandler): def log_message(self, format, *args): # add a # at the beginning of the line to not mess up Mtest diffs @@ -66,19 +47,23 @@ class Handler(http.server.BaseHTTPReques self.end_headers() self.wfile.write(b'NOT FOUND\n') +b = threading.Barrier(2) + def runserver(): global port addr = ('127.0.0.1', 0) srv = http.server.HTTPServer(addr, Handler) port = srv.server_port print(f"Listening on {port}", file=OUTPUT) + b.wait() srv.serve_forever() # Start the http server port = 0 t = threading.Thread(target=lambda: runserver(), daemon=True) t.start() -wait_for_server(5.0) +# and wait for it to fill in the port +b.wait() url = f'http://localhost:{port}' diff --git a/common/utils/msabaoth.c b/common/utils/msabaoth.c --- a/common/utils/msabaoth.c +++ b/common/utils/msabaoth.c @@ -721,9 +721,15 @@ msab_getSingleStatus(const char *pathbuf }; /* store the database name */ - snprintf(buf, sizeof(buf), "%s/%s", pathbuf, dbname); + int dbnamestart; +#ifdef _MSC_VER + dbnamestart = snprintf(buf, sizeof(buf), "%s/", pathbuf); + snprintf(buf + dbnamestart, sizeof(buf) - dbnamestart, "%s", dbname); +#else + snprintf(buf, sizeof(buf), "%s/%n%s", pathbuf, &dbnamestart, dbname); +#endif sdb->path = strdup(buf); - sdb->dbname = sdb->path + strlen(sdb->path) - strlen(dbname); + sdb->dbname = sdb->path + dbnamestart; /* check the state of the server by looking at its gdk lock: _______________________________________________ checkin-list mailing list -- checkin-list@monetdb.org To unsubscribe send an email to checkin-list-le...@monetdb.org