Changeset: 7be61e8efda3 for MonetDB URL: https://dev.monetdb.org/hg/MonetDB/rev/7be61e8efda3 Removed Files: monetdb5/optimizer/opt_prelude.c monetdb5/optimizer/opt_prelude.h Modified Files: clients/Tests/exports.stable.out gdk/gdk.h gdk/gdk_bat.c gdk/gdk_string.c gdk/gdk_utils.c monetdb5/extras/rapi/rapi.c monetdb5/mal/mal_function.c monetdb5/mal/mal_instruction.c monetdb5/mal/mal_instruction.h monetdb5/mal/mal_interpreter.c monetdb5/mal/mal_parser.c monetdb5/mal/mal_profiler.c monetdb5/mal/mal_session.c monetdb5/modules/mal/calc.c monetdb5/modules/mal/mal_mapi.c monetdb5/modules/mal/manifold.c monetdb5/modules/mal/remote.c monetdb5/optimizer/opt_coercion.c monetdb5/optimizer/opt_commonTerms.c monetdb5/optimizer/opt_garbageCollector.c monetdb5/optimizer/opt_generator.c monetdb5/optimizer/opt_inline.h monetdb5/optimizer/opt_mergetable.c monetdb5/optimizer/opt_mitosis.c monetdb5/optimizer/opt_pipes.c monetdb5/optimizer/opt_profiler.c monetdb5/optimizer/opt_remoteQueries.c sql/backends/monet5/UDF/capi/capi.c sql/backends/monet5/generator/generator.c sql/backends/monet5/rel_bin.c sql/backends/monet5/sql.c sql/backends/monet5/sql_execute.c sql/backends/monet5/sql_gencode.c sql/backends/monet5/sql_scenario.c sql/backends/monet5/sql_statement.c sql/backends/monet5/sql_statement.h sql/server/rel_basetable.c sql/server/rel_dump.c sql/server/rel_exp.c sql/server/rel_exp.h sql/server/rel_optimize_others.c sql/server/rel_optimize_proj.c sql/server/rel_optimize_sel.c sql/server/rel_optimizer.c sql/server/rel_rel.c sql/server/rel_schema.c sql/server/rel_select.c sql/server/rel_statistics.c sql/server/rel_unnest.c sql/server/rel_updates.c sql/server/sql_atom.c sql/server/sql_parser.y sql/storage/bat/bat_storage.c sql/storage/store.c tools/monetdbe/monetdbe.c Branch: resource_management Log Message:
merge with default diffs (truncated from 30215 to 300 lines): diff --git a/.hgtags b/.hgtags --- a/.hgtags +++ b/.hgtags @@ -835,3 +835,5 @@ dce400b68239412b1835fb28bd183bf50f5e8692 dce400b68239412b1835fb28bd183bf50f5e8692 Aug2024_release ab5d60be21cd1c65e9de476d71a86c2995f70785 Aug2024_5 ab5d60be21cd1c65e9de476d71a86c2995f70785 Aug2024_SP1_release +30e6380820842b9e0325536eb22d7cb3843ab095 Aug2024_7 +30e6380820842b9e0325536eb22d7cb3843ab095 Aug2024_SP2_release diff --git a/MonetDB.spec b/MonetDB.spec --- a/MonetDB.spec +++ b/MonetDB.spec @@ -95,7 +95,7 @@ Group: Applications/Databases License: MPL-2.0 URL: https://www.monetdb.org/ BugURL: https://github.com/MonetDB/MonetDB/issues -Source: https://www.monetdb.org/downloads/sources/Aug2024-SP1/MonetDB-%{version}.tar.bz2 +Source: https://www.monetdb.org/downloads/sources/Aug2024-SP2/MonetDB-%{version}.tar.bz2 # The Fedora packaging document says we need systemd-rpm-macros for # the _unitdir and _tmpfilesdir macros to exist; however on RHEL 7 @@ -923,6 +923,7 @@ sed -i 's/1\.2/1.1/' misc/selinux/monetd -DWITH_PCRE=ON \ -DWITH_PROJ=OFF \ -DWITH_READLINE=ON \ + -DWITH_SQLPARSE=OFF \ -DWITH_VALGRIND=OFF \ -DWITH_XML2=ON \ -DWITH_ZLIB=ON @@ -989,6 +990,26 @@ rm "${RPM_BUILD_ROOT}"%{_unitdir}/monetd %endif %changelog +* Mon Dec 16 2024 Sjoerd Mullender <sjo...@acm.org> - 11.51.7-20241216 +- Rebuilt. +- GH#7112: Need keyboard shortcut to interrupt query execution rather than + session +- GH#7205: Unpredictable performance when performing joins over nested + queries +- GH#7574: Assertion failure at `rel2bin_select` when using `STARTSWITH` +- GH#7588: incorrect output with single row inputs for var_samp(c) over() +- GH#7589: "SELECT * FROM sessions" crashes monetdb/e +- GH#7593: A value is being returned with unnecessary scientific notation +- GH#7595: SQLTestCase leaks pymonetdb connections +- GH#7597: Upgrade + quick restart causes database inconsistency +- GH#7599: str_to_date fails when combined with SQL CASE clause +- GH#7602: COPY INTO from multiple files causes an assertion error. +- GH#7603: COPY INTO from three or more files crashes the server. +- GH#7604: file_loader() causes server crash when csv file contains too + few field separators or contains empty lines +- GH#7607: Adding a column of serial type fails with "Access denied for + <user> to schema 'sys'" + * Thu Oct 24 2024 Sjoerd Mullender <sjo...@acm.org> - 11.51.5-20241024 - Rebuilt. - GH#7281: UDFs defined at compile time in a user schema should not become diff --git a/buildtools/conf/monetdbd.conf.in b/buildtools/conf/monetdbd.conf.in --- a/buildtools/conf/monetdbd.conf.in +++ b/buildtools/conf/monetdbd.conf.in @@ -1,3 +1,6 @@ # this file is for systemd # monetdbd needs a directory in /run that is owned by monetdb:monetdb d @CMAKE_INSTALL_FULL_RUNSTATEDIR@/monetdb 0775 monetdb monetdb - +# do not touch our socket files +x /tmp/.s.monetdb.* +x /tmp/.s.merovingian.* diff --git a/clients/CMakeLists.txt b/clients/CMakeLists.txt --- a/clients/CMakeLists.txt +++ b/clients/CMakeLists.txt @@ -11,7 +11,9 @@ #]] add_subdirectory(mapilib) -add_subdirectory(mapiclient) +if(WITH_MAPI_CLIENT) + add_subdirectory(mapiclient) +endif() add_subdirectory(odbc) if(TESTING) add_subdirectory(examples) 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 @@ -43710,12 +43710,12 @@ str_2dec_lng; cast to dec(lng) and check for overflow calc max -pattern calc.max(X_0:any_1, X_1:any_1):any_1 +pattern calc.max(X_0:any_1, X_1:any_1...):any_1 CALCmax; Return max of V1 and V2 calc max_no_nil -pattern calc.max_no_nil(X_0:any_1, X_1:any_1):any_1 +pattern calc.max_no_nil(X_0:any_1, X_1:any_1...):any_1 CALCmax_no_nil; Return max of V1 and V2, ignoring nil values calc @@ -43730,12 +43730,12 @@ mbrFromString; (empty) calc min -pattern calc.min(X_0:any_1, X_1:any_1):any_1 +pattern calc.min(X_0:any_1, X_1:any_1...):any_1 CALCmin; Return min of V1 and V2 calc min_no_nil -pattern calc.min_no_nil(X_0:any_1, X_1:any_1):any_1 +pattern calc.min_no_nil(X_0:any_1, X_1:any_1...):any_1 CALCmin_no_nil; Return min of V1 and V2, ignoring nil values calc 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 @@ -32325,12 +32325,12 @@ str_2dec_lng; cast to dec(lng) and check for overflow calc max -pattern calc.max(X_0:any_1, X_1:any_1):any_1 +pattern calc.max(X_0:any_1, X_1:any_1...):any_1 CALCmax; Return max of V1 and V2 calc max_no_nil -pattern calc.max_no_nil(X_0:any_1, X_1:any_1):any_1 +pattern calc.max_no_nil(X_0:any_1, X_1:any_1...):any_1 CALCmax_no_nil; Return max of V1 and V2, ignoring nil values calc @@ -32345,12 +32345,12 @@ mbrFromString; (empty) calc min -pattern calc.min(X_0:any_1, X_1:any_1):any_1 +pattern calc.min(X_0:any_1, X_1:any_1...):any_1 CALCmin; Return min of V1 and V2 calc min_no_nil -pattern calc.min_no_nil(X_0:any_1, X_1:any_1):any_1 +pattern calc.min_no_nil(X_0:any_1, X_1:any_1...):any_1 CALCmin_no_nil; Return min of V1 and V2, ignoring nil values calc 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 @@ -282,7 +282,7 @@ bool GDKexiting(void); jmp_buf GDKfataljump; bit GDKfataljumpenable; str GDKfatalmsg; -char *GDKfilepath(int farmid, const char *dir, const char *nme, const char *ext); +gdk_return GDKfilepath(char *buf, size_t bufsize, int farmid, const char *dir, const char *nme, const char *ext) __attribute__((__access__(write_only, 1, 2))); void GDKfree(void *blk); char *GDKgetbuf(void); unsigned GDKgetdebug(void); @@ -301,7 +301,7 @@ MT_Lock *volatile GDKlocklist; ATOMIC_FLAG GDKlocklistlock; ATOMIC_TYPE GDKlocksleepcnt; void GDKlockstatistics(int); -void *GDKmalloc(size_t size) __attribute__((__malloc__)) __attribute__((__alloc_size__(1))) __attribute__((__warn_unused_result__)); +void *GDKmalloc(size_t size) __attribute__((__malloc__)) __attribute__((__malloc__(GDKfree, 1))) __attribute__((__alloc_size__(1))) __attribute__((__warn_unused_result__)); size_t GDKmallocated(const void *s); size_t GDKmem_cursize(void); gdk_return GDKmergeidx(BAT *b, BAT **a, int n_ar); @@ -324,9 +324,9 @@ stream *GDKstdout; ssize_t GDKstrFromStr(unsigned char *restrict dst, const unsigned char *restrict src, ssize_t len, char quote); int GDKstrcasecmp(const char *s1, const char *s2); char *GDKstrcasestr(const char *haystack, const char *needle); -str GDKstrdup(const char *s) __attribute__((__malloc__)) __attribute__((__warn_unused_result__)); +str GDKstrdup(const char *s) __attribute__((__malloc__)) __attribute__((__malloc__(GDKfree, 1))) __attribute__((__warn_unused_result__)); int GDKstrncasecmp(const char *str1, const char *str2, size_t l1, size_t l2); -str GDKstrndup(const char *s, size_t n) __attribute__((__malloc__)) __attribute__((__warn_unused_result__)); +str GDKstrndup(const char *s, size_t n) __attribute__((__malloc__)) __attribute__((__malloc__(GDKfree, 1))) __attribute__((__warn_unused_result__)); gdk_return GDKtolower(char **restrict buf, size_t *restrict buflen, const char *restrict s) __attribute__((__access__(read_write, 1))) __attribute__((__access__(read_write, 2))); gdk_return GDKtoupper(char **restrict buf, size_t *restrict buflen, const char *restrict s) __attribute__((__access__(read_write, 1))) __attribute__((__access__(read_write, 2))); gdk_return GDKtracer_fill_comp_info(BAT *id, BAT *component, BAT *log_level); @@ -348,7 +348,7 @@ gdk_return GDKupgradevarheap(BAT *b, var lng GDKusec(void); const char *GDKversion(void) __attribute__((__const__)); size_t GDKvm_cursize(void); -void *GDKzalloc(size_t size) __attribute__((__malloc__)) __attribute__((__alloc_size__(1))) __attribute__((__warn_unused_result__)); +void *GDKzalloc(size_t size) __attribute__((__malloc__)) __attribute__((__malloc__(GDKfree, 1))) __attribute__((__alloc_size__(1))) __attribute__((__warn_unused_result__)); void HASHdestroy(BAT *b); BUN HASHlist(Hash *h, BUN i); BUN HASHprobe(const Hash *h, const void *v); @@ -527,15 +527,15 @@ int dlclose(void *handle); char *dlerror(void); void *dlopen(const char *file, int mode); void *dlsym(void *handle, const char *name); -_Noreturn void eb_error(exception_buffer *eb, char *msg, int val); +_Noreturn void eb_error(exception_buffer *eb, const char *msg, int val); exception_buffer *eb_init(exception_buffer *eb) __attribute__((__access__(write_only, 1))); size_t escapedStr(char *restrict dst, const char *restrict src, size_t dstlen, const char *sep1, const char *sep2, int quote); size_t escapedStrlen(const char *restrict src, const char *sep1, const char *sep2, int quote); ssize_t fltFromStr(const char *src, size_t *len, flt **dst, bool external); ssize_t fltToStr(str *dst, size_t *len, const flt *src, bool external); const flt flt_nil; -gdk_return gdk_add_callback(char *name, gdk_callback_func *f, int argc, void *argv[], int interval); -gdk_return gdk_remove_callback(char *, gdk_callback_func *f); +gdk_return gdk_add_callback(const char *name, gdk_callback_func *f, int argc, void *argv[], int interval); +gdk_return gdk_remove_callback(const char *, gdk_callback_func *f); bat getBBPsize(void); char *get_bin_path(void); int gettimeofday(struct timeval *tv, int *ignore_zone); @@ -842,147 +842,147 @@ int UTF8_strwidth(const char *s); void addMalException(MalBlkPtr mb, str msg); str addOptimizerPipe(Client cntxt, MalBlkPtr mb, const char *name); str addPipeDefinition(Client cntxt, const char *name, const char *pipe); -const char *affectedRowsRef; -const char *aggrRef; -const char *alarmRef; -const char *algebraRef; -const char *alter_add_range_partitionRef; -const char *alter_add_tableRef; -const char *alter_add_value_partitionRef; -const char *alter_del_tableRef; -const char *alter_seqRef; -const char *alter_set_tableRef; -const char *alter_tableRef; -const char *alter_userRef; -const char *appendBulkRef; -const char *appendRef; -const char *assertRef; -const char *avgRef; -const char *bandjoinRef; +const char affectedRowsRef[]; +const char aggrRef[]; +const char alarmRef[]; +const char algebraRef[]; +const char alter_add_range_partitionRef[]; +const char alter_add_tableRef[]; +const char alter_add_value_partitionRef[]; +const char alter_del_tableRef[]; +const char alter_seqRef[]; +const char alter_set_tableRef[]; +const char alter_tableRef[]; +const char alter_userRef[]; +const char appendBulkRef[]; +const char appendRef[]; +const char assertRef[]; +const char avgRef[]; +const char bandjoinRef[]; void batAfterCall(ValPtr v, ValPtr bak); void batBeforeCall(ValPtr v, ValPtr bak); -const char *batRef; -const char *batalgebraRef; -const char *batcalcRef; -const char *batcapiRef; -const char *batmalRef; -const char *batmkeyRef; -const char *batmmathRef; -const char *batmtimeRef; -const char *batpyapi3Ref; -const char *batrapiRef; -const char *batsqlRef; -const char *batstrRef; +const char batRef[]; +const char batalgebraRef[]; +const char batcalcRef[]; +const char batcapiRef[]; +const char batmalRef[]; +const char batmkeyRef[]; +const char batmmathRef[]; +const char batmtimeRef[]; +const char batpyapi3Ref[]; +const char batrapiRef[]; +const char batsqlRef[]; +const char batstrRef[]; bool batstr_func_has_candidates(const char *func); -const char *bbpRef; -const char *betweenRef; -const char *bindRef; -const char *binddbatRef; -const char *bindidxRef; -const char *blockRef; -const char *bstreamRef; -const char *calcRef; +const char bbpRef[]; +const char betweenRef[]; +const char bindRef[]; +const char binddbatRef[]; +const char bindidxRef[]; +const char blockRef[]; +const char bstreamRef[]; +const char calcRef[]; str callMAL(Client cntxt, MalBlkPtr mb, MalStkPtr *glb, ValPtr argv[]); -const char *capiRef; +const char capiRef[]; str cfcnDefinition(Symbol s, str t, int flg, str base, size_t len); str chkDeclarations(MalBlkPtr mb); str chkFlow(MalBlkPtr mb); int chkInstruction(Module s, MalBlkPtr mb, InstrPtr p); str chkProgram(Module s, MalBlkPtr mb); str chkTypes(Module s, MalBlkPtr mb, int silent); -const char *claimRef; +const char claimRef[]; void clearTrace(Client cntxt); _______________________________________________ checkin-list mailing list -- checkin-list@monetdb.org To unsubscribe send an email to checkin-list-le...@monetdb.org