Changeset: d9f37ac453d3 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB/rev/d9f37ac453d3
Modified Files:
clients/Tests/MAL-signatures-hge.test
clients/Tests/exports.stable.out
clients/mapiclient/dump.c
cmake/monetdb-findpackages.cmake
gdk/gdk_analytic_func.c
monetdb5/optimizer/opt_mitosis.c
monetdb5/optimizer/opt_support.c
sql/backends/monet5/rel_bin.c
sql/backends/monet5/rel_physical.c
sql/backends/monet5/sql.c
sql/backends/monet5/sql_execute.c
sql/backends/monet5/sql_gencode.c
sql/backends/monet5/sql_rank.c
sql/backends/monet5/sql_statement.c
sql/backends/monet5/sql_upgrades.c
sql/include/sql_catalog.h
sql/include/sql_relation.h
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_optimizer_private.h
sql/server/rel_prop.c
sql/server/rel_prop.h
sql/server/rel_psm.c
sql/server/rel_rel.c
sql/server/rel_rel.h
sql/server/rel_rewriter.c
sql/server/rel_rewriter.h
sql/server/rel_select.c
sql/server/rel_statistics.c
sql/server/rel_unnest.c
sql/server/sql_mvc.h
sql/server/sql_parser.y
sql/storage/store.c
sql/test/BugTracker-2024/Tests/7439-exps-cards-crash.test
sql/test/SQLancer/Tests/sqlancer10.test
sql/test/SQLancer/Tests/sqlancer22.test
sql/test/emptydb/Tests/check.stable.out.int128
sql/test/prepare/Tests/sqlancer_prepare.test
tools/mserver/mserver5.c
Branch: nested
Log Message:
merged with default
diffs (truncated from 18798 to 300 lines):
diff --git a/.github/workflows/linux.yml b/.github/workflows/linux.yml
--- a/.github/workflows/linux.yml
+++ b/.github/workflows/linux.yml
@@ -46,7 +46,7 @@ jobs:
runs-on: ${{ matrix.os }}
steps:
- name: Checkout
- uses: actions/checkout@v4
+ uses: actions/checkout@v6
with:
ref: ${{ github.ref }}
@@ -75,7 +75,6 @@ jobs:
cmake .. \
-DCMAKE_INSTALL_PREFIX=$HOME/MDB \
-DPY3INTEGRATION=OFF \
- -DRINTEGRATION=OFF \
-DCMAKE_BUILD_TYPE=Release \
-DASSERT=OFF \
-DCMAKE_C_COMPILER=${{ matrix.c_compiler }} \
@@ -94,7 +93,6 @@ jobs:
cmake .. \
-DCMAKE_INSTALL_PREFIX=$HOME/MDB \
-DPY3INTEGRATION=OFF \
- -DRINTEGRATION=OFF \
-DCMAKE_BUILD_TYPE=Release \
-DASSERT=OFF \
-DCMAKE_C_COMPILER=${{ matrix.c_compiler }} \
@@ -110,7 +108,6 @@ jobs:
cmake .. \
-DCMAKE_INSTALL_PREFIX=$HOME/MDB \
-DPY3INTEGRATION=OFF \
- -DRINTEGRATION=OFF \
-DCMAKE_BUILD_TYPE=Release \
-DASSERT=OFF \
-DCMAKE_C_COMPILER=${{ matrix.c_compiler }} \
@@ -130,7 +127,7 @@ jobs:
run: |
mkdir build
cd build
- cmake .. -DCMAKE_INSTALL_PREFIX=C:\MDB
-DCMAKE_TOOLCHAIN_FILE=C:\vcpkg\scripts\buildsystems\vcpkg.cmake
-DPY3INTEGRATION=OFF -DRINTEGRATION=OFF -DCMAKE_BUILD_TYPE=Release
-DASSERT=OFF -DCMAKE_C_COMPILER=${{ matrix.c_compiler }} -DCMAKE_SUMMARY=ON
+ cmake .. -DCMAKE_INSTALL_PREFIX=C:\MDB
-DCMAKE_TOOLCHAIN_FILE=C:\vcpkg\scripts\buildsystems\vcpkg.cmake
-DPY3INTEGRATION=OFF -DCMAKE_BUILD_TYPE=Release -DASSERT=OFF
-DCMAKE_C_COMPILER=${{ matrix.c_compiler }} -DCMAKE_SUMMARY=ON
cmake --build . --target install
if: runner.os == 'Windows'
@@ -163,7 +160,7 @@ jobs:
- name: Tar files
run: tar -cvf mtests.tar mTests
- name: Publish mtest results
- uses: actions/upload-artifact@v4
+ uses: actions/upload-artifact@v7
with:
name: mtest-${{ github.sha }}-${{ matrix.os }}-${{ matrix.c_compiler
}}
path: mtests.tar
diff --git a/.hgtags b/.hgtags
--- a/.hgtags
+++ b/.hgtags
@@ -857,3 +857,4 @@ b4c2936c46f28ad6b3e59ed5a1a844726d521994
69f4fe2ad29b5d50d9ef06ad76639faaa60fcfa8 Dec2025_SP1_release
691e862e16ceb7f720536063ed6d3c2e3d11e33a Dec2025_5
691e862e16ceb7f720536063ed6d3c2e3d11e33a Dec2025_SP2_release
+1d742c123cb0e622d9a137b10bfbd7e4c446fde2 Dec2025_7
diff --git a/ChangeLog b/ChangeLog
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,6 +1,23 @@
# ChangeLog file for devel
# This file is updated with Maddlog
+* Fri Jun 19 2026 Sjoerd Mullender <[email protected]>
+- Removed embedded R support. It is no longer possible to use
+ user-defined functions which are written in R (i.e. using `CREATE
+ FUNCTION ... LANGUAGE R ...`). Upgrading to this version will succeed
+ if such functions are defined, but they cannot be used anymore.
+ Use this query to find all affected functions: `SELECT s.name, f.name
+ FROM sys.functions f JOIN sys.schemas s ON s.id = f.schema_id WHERE
+ f.language = 3;`. These functions can then be dropped manually.
+- Removed embedded C support. It is no longer possible to use user-defined
+ functions which are written in C or C++ (i.e. using `CREATE FUNCTION
+ ... LANGUAGE C ...`). Upgrading to this version will succeed if such
+ functions are defined, but they cannot be used anymore. Use this
+ query to find all affected functions: `SELECT s.name, f.name FROM
+ sys.functions f JOIN sys.schemas s ON s.id = f.schema_id WHERE
+ f.language IN (4, 12);`. These functions can then be dropped
+ manually.
+
* Thu May 7 2026 Niels Nes <[email protected]>
- disallow casting /coercing from decimal to integers when the functions
work on bits (like xor, and, or, <<, >> etc)
diff --git a/ChangeLog-Archive b/ChangeLog-Archive
--- a/ChangeLog-Archive
+++ b/ChangeLog-Archive
@@ -1,6 +1,31 @@
# DO NOT EDIT THIS FILE -- MAINTAINED AUTOMATICALLY
# This file contains past ChangeLog entries
+* Fri Jun 12 2026 Sjoerd Mullender <[email protected]> - 11.55.7-20260615
+- Fixed a number of race conditions.
+- Improved summing of floating point values in window functions.
+ The result is now as exact as floating point allows. This uses the
+ same algorithm that was already used in the floating sum aggregate.
+- Added a new tracer component MAL_INSTRUCTION to log MAL instructions
+ during execution.
+- Fixed calculation of integer averages when the simple summing of
+ values (before the sum is divided by the count) overflows. When it
+ does overflow we continue with a different algorithm, but the switch
+ was done incorrectly. Summation was done in 128 bit integers, so
+ overflow was exceedingly rare.
+- Fixed a race condition during server exit.
+- Improvements to the way execution of prepared statements are being
+ reported.
+
+* Tue May 12 2026 Lucas Pereira <[email protected]> -
11.55.7-20260615
+- Fix using --logging option of mserver5 to change component levels
+ that are also used by --debug option. For overlapping components,
+ component level change via --logging was being discarded.
+
+* Thu Apr 23 2026 Sjoerd Mullender <[email protected]> - 11.55.7-20260615
+- It is no longer allowed to run mserver5 or monetdbd as root. There are
+ important security concerns when these servers are run as root.
+
* Wed Mar 4 2026 Joeri van Ruth <[email protected]> -
11.55.5-20260403
- Suppress error messages in merovingian.log when incoming connections
are closed by the client before any I/O takes place.
diff --git a/ChangeLog.Dec2025 b/ChangeLog.Dec2025
--- a/ChangeLog.Dec2025
+++ b/ChangeLog.Dec2025
@@ -1,12 +1,3 @@
# ChangeLog file for devel
# This file is updated with Maddlog
-* Tue May 12 2026 Lucas Pereira <[email protected]>
-- Fix using --logging option of mserver5 to change component levels
- that are also used by --debug option. For overlapping components,
- component level change via --logging was being discarded.
-
-* Thu Apr 23 2026 Sjoerd Mullender <[email protected]>
-- It is no longer allowed to run mserver5 or monetdbd as root. There are
- important security concerns when these servers are run as root.
-
diff --git a/MonetDB.spec b/MonetDB.spec
--- a/MonetDB.spec
+++ b/MonetDB.spec
@@ -67,14 +67,6 @@
# operators. Otherwise the POSIX regex functions are used.
%bcond_without pcre
-# By default, include C integration
-%bcond_without cintegration
-
-%if %{fedpkgs}
-# By default, create the MonetDB-R package.
-%bcond_without rintegration
-%endif
-
# By default, include Python 3 integration.
%bcond_without py3integration
@@ -93,7 +85,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-SP2/MonetDB-%{version}.tar.bz2
+Source:
https://www.monetdb.org/downloads/sources/Dec2025-SP3/MonetDB-%{version}.tar.bz2
# We need checkpolicy and selinux-policy-devel for the SELinux policy.
BuildRequires: systemd-rpm-macros
@@ -134,9 +126,6 @@ BuildRequires: pkgconfig(liblz4) >= 1.8
BuildRequires: pkgconfig(python3) >= 3.5
BuildRequires: python3dist(numpy)
%endif
-%if %{with rintegration}
-BuildRequires: pkgconfig(libR)
-%endif
# optional packages:
# BuildRequires: pkgconfig(cmocka) # -DWITH_CMOCKA=ON
# BuildRequires: pkgconfig(gdal) # -DSHP=ON
@@ -456,6 +445,7 @@ developer.
%{_bindir}/smack01
%{_bindir}/sqlsample.php
%{_bindir}/sqlsample.pl
+%{_bindir}/sqlsample.py
%{_bindir}/streamcat
%{_bindir}/testcondvar
%endif
@@ -483,31 +473,6 @@ extensions for %{name}-server.
%{_libdir}/monetdb5*/lib_geom.so
%endif
-%if %{with rintegration}
-%package R
-Summary: Integration of MonetDB and R, allowing use of R from within SQL
-Group: Applications/Databases
-Requires: %{name}-server%{?_isa} = %{version}-%{release}
-
-%description R
-MonetDB is a database management system that is developed from a
-main-memory perspective with use of a fully decomposed storage model,
-automatic index management, extensibility of data types and search
-accelerators. It also has an SQL front end.
-
-This package contains the interface to use the R language from within
-SQL queries.
-
-NOTE: INSTALLING THIS PACKAGE OPENS UP SECURITY ISSUES. If you don't
-know how this package affects the security of your system, do not
-install it.
-
-%files R
-%defattr(-,root,root)
-%{_libdir}/monetdb5*/rapi.R
-%{_libdir}/monetdb5*/lib_rapi.so
-%endif
-
%if %{with py3integration}
%package python3
Summary: Integration of MonetDB and Python, allowing use of Python from within
SQL
@@ -578,9 +543,6 @@ embedded library (%{name}-embedded).
%{_libdir}/libmonetdb5*.so.*
%{_libdir}/libmonetdbsql*.so*
%dir %{_libdir}/monetdb5-%{version}
-%if %{with cintegration}
-%{_libdir}/monetdb5*/lib_capi.so
-%endif
%{_libdir}/monetdb5*/lib_csv.so
%{_libdir}/monetdb5*/lib_generator.so
%{_libdir}/monetdb5*/lib_monetdb_loader.so
@@ -951,14 +913,12 @@ fi
-DCMAKE_INSTALL_RUNSTATEDIR=/run \
-DRELEASE_VERSION=ON \
-DASSERT=OFF \
- -DCINTEGRATION=%{?with_cintegration:ON}%{!?with_cintegration:OFF} \
-DFITS=%{?with_fits:ON}%{!?with_fits:OFF} \
-DGEOM=%{?with_geos:ON}%{!?with_geos:OFF} \
-DINT128=%{?with_hugeint:ON}%{!?with_hugeint:OFF} \
-DNETCDF=OFF \
-DODBC=ON \
-DPY3INTEGRATION=%{?with_py3integration:ON}%{!?with_py3integration:OFF} \
- -DRINTEGRATION=%{?with_rintegration:ON}%{!?with_rintegration:OFF} \
-DSANITIZER=OFF \
-DSHP=OFF \
-DSTRICT=OFF \
@@ -1068,6 +1028,7 @@ rm "${RPM_BUILD_ROOT}"%{_bindir}/smack01
rm "${RPM_BUILD_ROOT}"%{_bindir}/sqllogictest.py
rm "${RPM_BUILD_ROOT}"%{_bindir}/sqlsample.php
rm "${RPM_BUILD_ROOT}"%{_bindir}/sqlsample.pl
+rm "${RPM_BUILD_ROOT}"%{_bindir}/sqlsample.py
rm "${RPM_BUILD_ROOT}"%{_bindir}/streamcat
rm "${RPM_BUILD_ROOT}"%{_bindir}/testcondvar
rm -r "${RPM_BUILD_ROOT}"%{_datadir}/doc/MonetDB*
@@ -1088,6 +1049,112 @@ rm "${RPM_BUILD_ROOT}"%{_unitdir}/monetd
%endif
%changelog
+* Mon Jun 15 2026 Sjoerd Mullender <[email protected]> - 11.55.7-20260615
+- Rebuilt.
+- GH#7729: MonetDB server (Mar2025-SP2-release) crashes at `tail_type`
+- GH#7871: Server crash in `rel_unnest_dependent`
+- GH#7879: MonetDB crash triggered by LATERAL subquery with window
+ function and complex expressions
+- GH#7891: Wrong result in UPDATE ... FROM with NOT BETWEEN rewrite under
+ OR constant-false timestamp predicate
+- GH#7892: Logic Bug: Incorrect evaluation of constant boolean expressions
+ leads to wrong COUNT results in subqueries
+- GH#7893: Logic Bug: Incorrect evaluation of constant boolean expressions
+ with RIGHT JOIN and LATERAL subqueries in MonetDB
+- GH#7894: Logic Bug: Incorrect evaluation of constant boolean expressions
+ with RIGHT JOIN and subquery functions in MonetDB
+- GH#7895: Logic Bug: MonetDB miscomputes COUNT with always-false AND
+ NULLIF condition
+- GH#7896: Logic Bug: MonetDB miscomputes COUNT with complex FALSE AND
+ CASE conditions
+- GH#7897: MonetDB wrong result in `DELETE ... WHERE IN (...)` with nested
+ `UNION`/`EXCEPT` and `UNION ALL` vs `INTERSECT`
+- GH#7898: Logic Bug: MonetDB produces inconsistent results between
+ COUNT(*) and SUM(EXISTS) with LATERAL subqueries
+- GH#7899: Logic Bug: MonetDB evaluates EXISTS inconsistently between
+ WHERE and CASE contexts with LATERAL subqueries
+- GH#7900: Logic Bug: MonetDB miscomputes SUM(CASE WHEN ...) vs COUNT(*)
+ with complex CASE, JOIN, and always-false predicates
+- GH#7901: MonetDB miscomputes SUM(CASE WHEN ...) vs COUNT(*) with
+ constant-false AND/OR conditions
+- GH#7902: Logic Bug: MonetDB miscomputes SUM(CASE WHEN ...) vs COUNT(*)
+ with constant ASCII comparison and INNER JOIN
+- GH#7903: MonetDB NoREC SUM query can not produce any result
+- GH#7904: Logic Bug: MonetDB produces inconsistent results between
+ COUNT(*) and SUM(CASE WHEN ...) for simple predicates
+- GH#7905: Logic Bug: MonetDB produces inconsistent results between
+ COUNT(*) and SUM(CASE WHEN ...) with CASE and COALESCE expressions
+- GH#7906: MonetDB server crash during SELECT with LATERAL subquery, mixed
+ JOIN types, and Window Functions.
+- GH#7910: Incorrect optimization of CASE WHEN and always-false predicates
+ leading to wrong results or planner error
+- GH#7911: MonetDB returns non-resultset response for a SELECT (pymonetdb
+ raises “query didn't result in a resultset”)
+- GH#7912: Incorrect result under tautological OR with correlated
+ aggregate subquery (AVG(...) ... LIMIT 1)
+- GH#7913: Incorrect DELETE behavior with EXISTS((... EXCEPT ...) UNION
+ ALL ...) due to non-resultset response in subquery branch
+- GH#7914: MonetDB wrong-result: EXISTS over GROUP BY is non-equivalent
_______________________________________________
checkin-list mailing list -- [email protected]
To unsubscribe send an email to [email protected]