Changeset: 1d479266c45d for MonetDB URL: https://dev.monetdb.org/hg/MonetDB/rev/1d479266c45d Modified Files: clients/Tests/MAL-signatures-hge.test clients/Tests/MAL-signatures.test clients/Tests/exports.stable.out sql/backends/monet5/sql_result.h sql/backends/monet5/vaults/csv/csv.c sql/backends/monet5/vaults/netcdf/netcdf.c sql/storage/store.c sql/test/emptydb/Tests/check.stable.out.32bit testing/sqllogictest.py Branch: nested Log Message:
Merge with default branch. diffs (truncated from 4037 to 300 lines): diff --git a/.hgtags b/.hgtags --- a/.hgtags +++ b/.hgtags @@ -853,3 +853,4 @@ a63e11c1fd1b2dfba2a0ed8a985455286bc023d3 3bc4079f4e74840fe5a946ed084fb439a351049e Dec2025_root b4c2936c46f28ad6b3e59ed5a1a844726d521994 Dec2025_1 b4c2936c46f28ad6b3e59ed5a1a844726d521994 Dec2025_release +69f4fe2ad29b5d50d9ef06ad76639faaa60fcfa8 Dec2025_3 diff --git a/MonetDB.spec b/MonetDB.spec --- a/MonetDB.spec +++ b/MonetDB.spec @@ -93,7 +93,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/Dec2025/MonetDB-%{version}.tar.bz2 +Source: https://www.monetdb.org/downloads/sources/Dec2025-SP1/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 @@ -1070,6 +1070,54 @@ rm "${RPM_BUILD_ROOT}"%{_unitdir}/monetd %endif %changelog +* Mon Feb 16 2026 Sjoerd Mullender <[email protected]> - 11.55.3-20260216 +- Rebuilt. +- GH#7690: CASE operator inside aggregate function error +- GH#7691: Slow execution of a query with a constantly false + WHERE-condition +- GH#7726: MonetDB server (Mar2025-SP2-release) crashes at `ALGgroupby ` +- GH#7759: PCRE replace referencing non-existing capture groups fails with + "Could not allocate space" +- GH#7760: Unexpectedly high resource and time usage when using IN (SELECT + table_name.column_name FROM table_name GROUP BY 1) subquery +- GH#7765: CREATE LOCAL TEMPORARY VIEW leaves orphan dependencies behind +- GH#7766: Assertion failure in exp_bin when using scalar subquery with + GROUP BY inside aggregate +- GH#7767: Assertion failure (sql->session->status == -10) in + rel2bin_select caused by malformed IN (SELECT ...) expression +- GH#7768: Simple single table query returns wrong results +- GH#7769: Crash in NTH_VALUE window function with RANGE frame +- GH#7771: Assertion failure in stmt_alias_ with scalar subquery in INSERT + VALUES +- GH#7772: msqldump does not dump UNLOGGED TABLE definitions +- GH#7773: msqldump generates invalid SQL CREATE TABLE definitions for + tables with multiple CHECK constraints +- GH#7775: heap-buffer-overflow in monetdb causing monetdb crash +- GH#7780: PLAN performance explosion with CTEs, nested CASE, wide column + counts +- GH#7782: system view sys.roles does not list implicitly created roles +- GH#7783: Duplicate rows returned when selecting on composite primary key + after delete/re-insert +- GH#7785: Recursive CTE with UNION ALL may cause infinite loop / + non-terminating execution +- GH#7786: DROP TABLE fails with HY013 "Could not allocate memory" after + ALTER TABLE RENAME +- GH#7787: mserver crash: SQLrun: Assertion `!*m->errstr' sql_execute.c +- GH#7798: running mserver5 under valgrind does not initialize SQL + interface. +- GH#7799: server crashes when an error is detected during initialization +- GH#7803: sever crash at rel_dce_refs +- GH#7804: server crash (assertion failure) when querying: + sys.querylog_catalog order by id desc +- GH#7805: ORDER BY ALL queries return data in reserve order +- GH#7806: Casting to decimal without precision and scale assumes wrong + defaults +- GH#7808: BLOBs longer then 2 GiB cause a server crash +- GH#7810: You can have DATE string, but you cannot have GEOMETRY string + to cast a string constant +- GH#7811: SELECT 'x' - 'x'; gives weird error message. +- GH#7812: MONETDB HEAP BUFFER OVERFLOW + * Tue Dec 16 2025 Lucas Pereira <[email protected]> - 11.55.1-20251209 - sql: New implementation for the CONTAINS filter function for string data types using a much faster algorithm based on the knowledge of the 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 @@ -47364,55 +47364,10 @@ pattern iterator.new(X_0:bat[:any_1]) (X ITRbunIterator Process the buns one by one extracted from a void table. iterator -new -command iterator.new(X_0:bat[:any_1], X_1:lng) (X_2:lng, X_3:bat[:any_1]) -ITRnewChunk -Create an iterator with fixed granule size.@The result is a view. -iterator next pattern iterator.next(X_0:bat[:any_1]) (X_1:oid, X_2:any_1) ITRbunNext Produce the next bun for processing. -iterator -next -command iterator.next(X_0:bat[:any_1], X_1:lng) (X_2:lng, X_3:bat[:any_1]) -ITRnextChunk -Produce the next chunk for processing. -iterator -next -command iterator.next(X_0:dbl, X_1:dbl):dbl -ITRnext_dbl -Advances the iterator with a fixed value -iterator -next -command iterator.next(X_0:flt, X_1:flt):flt -ITRnext_flt -(empty) -iterator -next -command iterator.next(X_0:hge, X_1:hge):hge -ITRnext_hge -(empty) -iterator -next -command iterator.next(X_0:int, X_1:int):int -ITRnext_int -(empty) -iterator -next -command iterator.next(X_0:lng, X_1:lng):lng -ITRnext_lng -(empty) -iterator -next -command iterator.next(X_0:oid, X_1:oid):oid -ITRnext_oid -(empty) -iterator -next -command iterator.next(X_0:sht, X_1:sht):sht -ITRnext_sht -(empty) json dump pattern json.dump(X_0:json):bat[:str] 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 @@ -35864,50 +35864,10 @@ pattern iterator.new(X_0:bat[:any_1]) (X ITRbunIterator Process the buns one by one extracted from a void table. iterator -new -command iterator.new(X_0:bat[:any_1], X_1:lng) (X_2:lng, X_3:bat[:any_1]) -ITRnewChunk -Create an iterator with fixed granule size.@The result is a view. -iterator next pattern iterator.next(X_0:bat[:any_1]) (X_1:oid, X_2:any_1) ITRbunNext Produce the next bun for processing. -iterator -next -command iterator.next(X_0:bat[:any_1], X_1:lng) (X_2:lng, X_3:bat[:any_1]) -ITRnextChunk -Produce the next chunk for processing. -iterator -next -command iterator.next(X_0:dbl, X_1:dbl):dbl -ITRnext_dbl -Advances the iterator with a fixed value -iterator -next -command iterator.next(X_0:flt, X_1:flt):flt -ITRnext_flt -(empty) -iterator -next -command iterator.next(X_0:int, X_1:int):int -ITRnext_int -(empty) -iterator -next -command iterator.next(X_0:lng, X_1:lng):lng -ITRnext_lng -(empty) -iterator -next -command iterator.next(X_0:oid, X_1:oid):oid -ITRnext_oid -(empty) -iterator -next -command iterator.next(X_0:sht, X_1:sht):sht -ITRnext_sht -(empty) json dump pattern json.dump(X_0:json):bat[:str] 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 @@ -1370,50 +1370,6 @@ uint16_t *utf8toutf16(const char *src); int winerror(int); # sql -char *BatType_Format(int); -int BatType_ToPyType(int); -str ConvertFromSQLType(allocator *, Client ctx, BAT *b, sql_subtype *sql_subtype, BAT **ret_bat, int *ret_type); -str ConvertToSQLType(Client cntxt, BAT *b, sql_subtype *sql_subtype, BAT **ret_bat, int *ret_type); -bit ConvertableSQLType(sql_subtype *sql_subtype); -str FITSattach(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci); -str FITSdir(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci); -str FITSdirpat(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci); -str FITSexportTable(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci); -str FITSloadTable(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci); -str FITStest(Client ctx, int *res, str *fname); -bit IsStandardBATType(int type); -str NCDFattach(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci); -str NCDFimportVarStmt(Client ctx, str *sciqlstmt, str *fname, int *varid); -str NCDFimportVariable(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci); -str NCDFtest(Client ctx, int *vars, str *fname); -str PYAPI3PyAPIevalAggr(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci); -str PYAPI3PyAPIevalAggrMap(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci); -str PYAPI3PyAPIevalLoader(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci); -str PYAPI3PyAPIevalStd(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci); -str PYAPI3PyAPIevalStdMap(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci); -PyObject *PyArrayObject_FromBAT(allocator *, Client ctx, PyInput *input_bat, size_t start, size_t end, char **return_message, bool copy); -PyObject *PyArrayObject_FromScalar(PyInput *input_scalar, char **return_message); -PyObject *PyDict_CheckForConversion(PyObject *pResult, int expected_columns, char **retcol_names, char **return_message); -char *PyError_CreateException(char *error_text, char *pycall); -PyObject *PyMaskedArray_FromBAT(allocator *, Client ctx, PyInput *inp, size_t t_start, size_t t_end, char **return_message, bool copy); -PyObject *PyNullMask_FromBAT(BAT *b, size_t start, size_t end); -PyObject *PyObject_CheckForConversion(PyObject *pResult, int expected_columns, int *actual_columns, char **return_message); -BAT *PyObject_ConvertToBAT(allocator *, Client ctx, PyReturn *ret, sql_subtype *type, int bat_type, int index, oid seqbase, char **return_message, bool copy); -str PyObject_GetReturnValues(PyObject *obj, PyReturn *return_value); -bool PyObject_PreprocessObject(PyObject *pResult, PyReturn *pyreturn_values, int column_count, char **return_message); -char *PyType_Format(int); -bool PyType_IsDouble(int); -bool PyType_IsFloat(int); -bool PyType_IsInteger(int); -bool PyType_IsLazyArray(PyObject *object); -bool PyType_IsNumpyArray(PyObject *object); -bool PyType_IsNumpyMaskedArray(PyObject *object); -bool PyType_IsPandasDataFrame(PyObject *object); -bool PyType_IsPyScalar(PyObject *object); -ssize_t PyType_Size(PyObject *obj); -int PyType_ToBat(int); -bool Python_ObtainGIL(void); -bool Python_ReleaseGIL(bool); str RAstatement(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci); str RAstatement2(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci); str RAstatementEnd(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci); @@ -1428,13 +1384,6 @@ str SQLinitClientFromMAL(Client c, const str SQLresetClient(Client c); str SQLstatementIntern(Client c, const char *expr, const char *nme, bit execute, bit output, res_table **result); str SQLtrans(mvc *m); -char *UDFBATfuse(Client ctx, bat *ret, const bat *one, const bat *two); -str UDFBATreverse(Client ctx, bat *ret, const bat *arg); -char *UDFfuse_bte_sht(Client ctx, sht *ret, const bte *one, const bte *two); -char *UDFfuse_int_lng(Client ctx, lng *ret, const int *one, const int *two); -char *UDFfuse_lng_hge(Client ctx, hge *ret, const lng *one, const lng *two); -char *UDFfuse_sht_int(Client ctx, int *ret, const sht *one, const sht *two); -str UDFreverse(Client ctx, str *ret, const str *arg); sql_alias *a_create(allocator *sa, const char *name); str append_to_table_from_emit(Client cntxt, char *sname, char *tname, sql_emit_col *columns, size_t ncols); str batbte_dec2_bte(Client ctx, bat *res, const int *s1, const bat *v, const bat *sid); diff --git a/cmake/monetdb-versions.cmake b/cmake/monetdb-versions.cmake --- a/cmake/monetdb-versions.cmake +++ b/cmake/monetdb-versions.cmake @@ -42,26 +42,26 @@ set(MONETDB_VERSION "${MONETDB_VERSION_M # common/options and common/utils) set(GDK_VERSION_MAJOR "31") set(GDK_VERSION_MINOR "0") -set(GDK_VERSION_PATCH "0") +set(GDK_VERSION_PATCH "1") set(GDK_VERSION "${GDK_VERSION_MAJOR}.${GDK_VERSION_MINOR}.${GDK_VERSION_PATCH}") # version of the MAPI library (subdirectory clients/mapilib) set(MAPI_VERSION_MAJOR "28") set(MAPI_VERSION_MINOR "0") -set(MAPI_VERSION_PATCH "4") +set(MAPI_VERSION_PATCH "5") set(MAPI_VERSION "${MAPI_VERSION_MAJOR}.${MAPI_VERSION_MINOR}.${MAPI_VERSION_PATCH}") # version of the MONETDB5 library (subdirectory monetdb5, not including # extras, and tools/utils/msabaoth.[ch]) set(MONETDB5_VERSION_MAJOR "38") set(MONETDB5_VERSION_MINOR "0") -set(MONETDB5_VERSION_PATCH "0") +set(MONETDB5_VERSION_PATCH "1") set(MONETDB5_VERSION "${MONETDB5_VERSION_MAJOR}.${MONETDB5_VERSION_MINOR}.${MONETDB5_VERSION_PATCH}") # version of the MONETDBE library (subdirectory tools/monetdbe) set(MONETDBE_VERSION_MAJOR "27") set(MONETDBE_VERSION_MINOR "0") -set(MONETDBE_VERSION_PATCH "3") +set(MONETDBE_VERSION_PATCH "4") set(MONETDBE_VERSION "${MONETDBE_VERSION_MAJOR}.${MONETDBE_VERSION_MINOR}.${MONETDBE_VERSION_PATCH}") # version of the MUTILS library (subdirectory common/utils) @@ -72,12 +72,12 @@ set(MUTILS_VERSION "${MUTILS_VERSION_MAJ # version of the SQL library (subdirectory sql) set(SQL_VERSION_MAJOR "17") -set(SQL_VERSION_MINOR "0") +set(SQL_VERSION_MINOR "1") set(SQL_VERSION_PATCH "0") set(SQL_VERSION "${SQL_VERSION_MAJOR}.${SQL_VERSION_MINOR}.${SQL_VERSION_PATCH}") # version of the STREAM library (subdirectory common/stream) _______________________________________________ checkin-list mailing list -- [email protected] To unsubscribe send an email to [email protected]
