Changeset: c7a44fe49243 for MonetDB URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=c7a44fe49243 Modified Files: sql/server/rel_select.c sql/server/rel_unnest.c Branch: typing Log Message:
Merged with default diffs (truncated from 3218 to 300 lines): diff --git a/MonetDB.spec b/MonetDB.spec --- a/MonetDB.spec +++ b/MonetDB.spec @@ -547,7 +547,6 @@ used from the MAL level. %files -n MonetDB5-server-devel %defattr(-,root,root) -%dir %{_includedir}/monetdb %{_includedir}/monetdb/mal*.h %{_libdir}/libmonetdb5.so %{_libdir}/pkgconfig/monetdb5.pc @@ -632,6 +631,8 @@ library. Also see %{name}-embedded-deve %package embedded-devel Summary: MonetDB as an embedded library development files Group: Applications/Databases +Requires: %{name}-embedded%{?_isa} = %{version}-%{release} +Requires: %{name}-devel%{?_isa} = %{version}-%{release} %description embedded-devel MonetDB is a database management system that is developed from a @@ -639,12 +640,14 @@ main-memory perspective with use of a fu automatic index management, extensibility of data types and search accelerators. It also has an SQL front end. -This package contains the library and include files to turn MonetDB -into an embeddable library. +This package contains the library and include files to create a +program that uses MonetDB as an embeddable library. %files embedded-devel +%defattr(-,root,root) %{_libdir}/libmonetdbe.so %{_includedir}/monetdb/monetdbe.h +%{_libdir}/pkgconfig/monetdbe.pc %package testing Summary: MonetDB - Monet Database Management System @@ -821,7 +824,6 @@ rmdir %{buildroot}%{_sysconfdir}/tmpfile install -d -m 0750 %{buildroot}%{_localstatedir}/lib/monetdb install -d -m 0770 %{buildroot}%{_localstatedir}/monetdb5/dbfarm -touch %{buildroot}%{_localstatedir}/monetdb5/dbfarm/.merovingian_lock install -d -m 0775 %{buildroot}%{_localstatedir}/log/monetdb install -d -m 0775 %{buildroot}%{_rundir}/monetdb diff --git a/ctest/tools/monetdbe/test_helper.h b/ctest/tools/monetdbe/test_helper.h --- a/ctest/tools/monetdbe/test_helper.h +++ b/ctest/tools/monetdbe/test_helper.h @@ -36,22 +36,22 @@ TYPE_DEFTEST_TPE(timestamp, monetdbe_dat #define Null ._is_null = 1 -monetdbe_export bool check_column_bool (monetdbe_result* result, size_t column_index, size_t expected_nr_column_entries, TEST_TPE_ID(int8_t) expected_column[]); -monetdbe_export bool check_column_int8_t (monetdbe_result* result, size_t column_index, size_t expected_nr_column_entries, TEST_TPE_ID(int8_t)* expected_column); -monetdbe_export bool check_column_int16_t (monetdbe_result* result, size_t column_index, size_t expected_nr_column_entries, TEST_TPE_ID(int16_t)* expected_column); -monetdbe_export bool check_column_int32_t (monetdbe_result* result, size_t column_index, size_t expected_nr_column_entries, TEST_TPE_ID(int32_t)* expected_column); -monetdbe_export bool check_column_int64_t (monetdbe_result* result, size_t column_index, size_t expected_nr_column_entries, TEST_TPE_ID(int64_t)* expected_column); +extern bool check_column_bool (monetdbe_result* result, size_t column_index, size_t expected_nr_column_entries, TEST_TPE_ID(int8_t) expected_column[]); +extern bool check_column_int8_t (monetdbe_result* result, size_t column_index, size_t expected_nr_column_entries, TEST_TPE_ID(int8_t)* expected_column); +extern bool check_column_int16_t (monetdbe_result* result, size_t column_index, size_t expected_nr_column_entries, TEST_TPE_ID(int16_t)* expected_column); +extern bool check_column_int32_t (monetdbe_result* result, size_t column_index, size_t expected_nr_column_entries, TEST_TPE_ID(int32_t)* expected_column); +extern bool check_column_int64_t (monetdbe_result* result, size_t column_index, size_t expected_nr_column_entries, TEST_TPE_ID(int64_t)* expected_column); #if HAVE_HGE -monetdbe_export bool check_column_int128_t (monetdbe_result* result, size_t column_index, size_t expected_nr_column_entries, TEST_TPE_ID(int128_t)* expected_column); +extern bool check_column_int128_t (monetdbe_result* result, size_t column_index, size_t expected_nr_column_entries, TEST_TPE_ID(int128_t)* expected_column); #endif -monetdbe_export bool check_column_size_t (monetdbe_result* result, size_t column_index, size_t expected_nr_column_entries, TEST_TPE_ID(size_t)* expected_column); -monetdbe_export bool check_column_float (monetdbe_result* result, size_t column_index, size_t expected_nr_column_entries, TEST_TPE_ID(float)* expected_column); -monetdbe_export bool check_column_double (monetdbe_result* result, size_t column_index, size_t expected_nr_column_entries, TEST_TPE_ID(double)* expected_column); -monetdbe_export bool check_column_str (monetdbe_result* result, size_t column_index, size_t expected_nr_column_entries, TEST_TPE_ID(str)* expected_column); -monetdbe_export bool check_column_blob (monetdbe_result* result, size_t column_index, size_t expected_nr_column_entries, TEST_TPE_ID(blob)* expected_column); -monetdbe_export bool check_column_date (monetdbe_result* result, size_t column_index, size_t expected_nr_column_entries, TEST_TPE_ID(date)* expected_column); -monetdbe_export bool check_column_time (monetdbe_result* result, size_t column_index, size_t expected_nr_column_entries, TEST_TPE_ID(time)* expected_column); -monetdbe_export bool check_column_timestamp (monetdbe_result* result, size_t column_index, size_t expected_nr_column_entries, TEST_TPE_ID(timestamp)* expected_column); +extern bool check_column_size_t (monetdbe_result* result, size_t column_index, size_t expected_nr_column_entries, TEST_TPE_ID(size_t)* expected_column); +extern bool check_column_float (monetdbe_result* result, size_t column_index, size_t expected_nr_column_entries, TEST_TPE_ID(float)* expected_column); +extern bool check_column_double (monetdbe_result* result, size_t column_index, size_t expected_nr_column_entries, TEST_TPE_ID(double)* expected_column); +extern bool check_column_str (monetdbe_result* result, size_t column_index, size_t expected_nr_column_entries, TEST_TPE_ID(str)* expected_column); +extern bool check_column_blob (monetdbe_result* result, size_t column_index, size_t expected_nr_column_entries, TEST_TPE_ID(blob)* expected_column); +extern bool check_column_date (monetdbe_result* result, size_t column_index, size_t expected_nr_column_entries, TEST_TPE_ID(date)* expected_column); +extern bool check_column_time (monetdbe_result* result, size_t column_index, size_t expected_nr_column_entries, TEST_TPE_ID(time)* expected_column); +extern bool check_column_timestamp (monetdbe_result* result, size_t column_index, size_t expected_nr_column_entries, TEST_TPE_ID(timestamp)* expected_column); #if HAVE_HGE #define BIGGEST_INTEGER_TPE int128_t @@ -102,4 +102,3 @@ check_column_##TPE ( \ column_index, \ sizeof((TEST_TPE_ID(TPE)[]) COLUMN(__VA_ARGS__)) /sizeof(((TEST_TPE_ID(TPE)[]) COLUMN(__VA_ARGS__))[0]), \ (TEST_TPE_ID(TPE)[]) COLUMN(__VA_ARGS__)) - diff --git a/debian/control b/debian/control --- a/debian/control +++ b/debian/control @@ -5,7 +5,7 @@ Maintainer: MonetDB BV <i...@monetdb.org Homepage: https://www.monetdb.org/ Vcs-Browser: https://dev.monetdb.org/hg/MonetDB/ Vcs-Hg: https://dev.monetdb.org/hg/MonetDB/ -Build-Depends: debhelper (>= 9), autotools-dev, bison, +Build-Depends: debhelper (>= 9), cmake, bison, libbz2-dev, libcurl4-gnutls-dev, libgeos-dev (>= 3.4.0), libpcre3-dev, libreadline-dev, liblzma-dev, libssl-dev, libxml2-dev, pkg-config, @@ -172,9 +172,9 @@ Architecture: any Depends: ${shlibs:Depends}, ${misc:Depends}, adduser Recommends: monetdb5-sql (= ${source:Version}) Suggests: monetdb-client (= ${source:Version}) -Conflicts: monetdb5-server-hugeint (<< 11.38.0) +Conflicts: monetdb5-server-hugeint (<< 11.38.0), + python-pymonetdb (<< 1.0.6) Replaces: monetdb5-server-hugeint (<< 11.38.0) -Conflicts: python-pymonetdb (<< 1.0.6) Description: MonetDB database server version 5 MonetDB is a database management system that is developed from a main-memory perspective with use of a fully decomposed storage model, @@ -247,6 +247,31 @@ Description: Integration of MonetDB and know how this package affects the security of your system, do not install it. +Package: libmonetdbe0 +Architecture: any +Depends: ${shlibs:Depends}, ${misc:Depends} +Description: MonetDB as an embedded library + 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 library to turn MonetDB into an embeddable + library. Also see %{name}-embedded-devel to use this in a program. + +Package: libmonetdbe-dev +Architecture: any +Depends: ${shlibs:Depends}, ${misc:Depends}, + libmonetdbe0, libmonetdb-dev +Description: MonetDB development files + 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 library and include files to create a + program that uses MonetDB as an embeddable library. + Package: monetdb-testing Architecture: any Depends: ${shlibs:Depends}, ${misc:Depends} diff --git a/debian/libmonetdb-client12.install b/debian/libmonetdb-client12.install --- a/debian/libmonetdb-client12.install +++ b/debian/libmonetdb-client12.install @@ -1,1 +1,2 @@ -debian/tmp/usr/lib/x86_64-linux-gnu/libmapi.so.* /usr/lib/x86_64-linux-gnu +debian/tmp/usr/lib/x86_64-linux-gnu/libmapi.so.12 /usr/lib/x86_64-linux-gnu +debian/tmp/usr/lib/x86_64-linux-gnu/libmapi.so.12.* /usr/lib/x86_64-linux-gnu diff --git a/debian/libmonetdb-dev.install b/debian/libmonetdb-dev.install --- a/debian/libmonetdb-dev.install +++ b/debian/libmonetdb-dev.install @@ -2,5 +2,7 @@ debian/tmp/usr/lib/x86_64-linux-gnu/libb debian/tmp/usr/include/monetdb/gdk*.h usr/include/monetdb debian/tmp/usr/include/monetdb/matomic.h usr/include/monetdb debian/tmp/usr/include/monetdb/mstring.h usr/include/monetdb -debian/tmp/usr/include/monetdb/monet*.h usr/include/monetdb +# usr/include/monetdb/monetdb*.h EXCEPT: monetdbe.h +debian/tmp/usr/include/monetdb/monet_*.h usr/include/monetdb +debian/tmp/usr/include/monetdb/monetdb_*.h usr/include/monetdb debian/tmp/usr/lib/x86_64-linux-gnu/pkgconfig/monetdb-gdk.pc usr/lib/x86_64-linux-gnu/pkgconfig diff --git a/debian/libmonetdb-stream13.install b/debian/libmonetdb-stream13.install --- a/debian/libmonetdb-stream13.install +++ b/debian/libmonetdb-stream13.install @@ -1,1 +1,2 @@ -debian/tmp/usr/lib/x86_64-linux-gnu/libstream.so.* usr/lib/x86_64-linux-gnu +debian/tmp/usr/lib/x86_64-linux-gnu/libstream.so.13 usr/lib/x86_64-linux-gnu +debian/tmp/usr/lib/x86_64-linux-gnu/libstream.so.13.* usr/lib/x86_64-linux-gnu diff --git a/debian/libmonetdb20.install b/debian/libmonetdb20.install --- a/debian/libmonetdb20.install +++ b/debian/libmonetdb20.install @@ -1,1 +1,2 @@ -debian/tmp/usr/lib/x86_64-linux-gnu/libbat.so.* usr/lib/x86_64-linux-gnu +debian/tmp/usr/lib/x86_64-linux-gnu/libbat.so.20 usr/lib/x86_64-linux-gnu +debian/tmp/usr/lib/x86_64-linux-gnu/libbat.so.20.* usr/lib/x86_64-linux-gnu diff --git a/debian/libmonetdbe-dev.install b/debian/libmonetdbe-dev.install new file mode 100644 --- /dev/null +++ b/debian/libmonetdbe-dev.install @@ -0,0 +1,3 @@ +debian/tmp/usr/lib/x86_64-linux-gnu/libmonetdbe.so usr/lib/x86_64-linux-gnu +debian/tmp/usr/include/monetdb/monetdbe.h usr/include/monetdb +debian/tmp/usr/lib/x86_64-linux-gnu/pkgconfig/monetdbe.pc usr/lib/x86_64-linux-gnu/pkgconfig diff --git a/debian/libmonetdbe0.install b/debian/libmonetdbe0.install new file mode 100644 --- /dev/null +++ b/debian/libmonetdbe0.install @@ -0,0 +1,2 @@ +debian/tmp/usr/lib/x86_64-linux-gnu/libmonetdbe.so.0 usr/lib/x86_64-linux-gnu +debian/tmp/usr/lib/x86_64-linux-gnu/libmonetdbe.so.0.* usr/lib/x86_64-linux-gnu diff --git a/debian/monetdb5-server.install b/debian/monetdb5-server.install --- a/debian/monetdb5-server.install +++ b/debian/monetdb5-server.install @@ -6,4 +6,5 @@ debian/tmp/usr/lib/x86_64-linux-gnu/mone debian/tmp/usr/lib/x86_64-linux-gnu/monetdb5/lib_generator.so usr/lib/x86_64-linux-gnu/monetdb5 debian/tmp/usr/lib/x86_64-linux-gnu/monetdb5/lib_udf.so usr/lib/x86_64-linux-gnu/monetdb5 -debian/tmp/usr/lib/x86_64-linux-gnu/monetdb5/benchmark.mal usr/lib/x86_64-linux-gnu/monetdb5 +debian/tmp/usr/lib/x86_64-linux-gnu/monetdb5/microbenchmark.mal usr/lib/x86_64-linux-gnu/monetdb5 +debian/tmp/usr/lib/x86_64-linux-gnu/monetdb5/run_*.mal usr/lib/x86_64-linux-gnu/monetdb5 diff --git a/debian/monetdb5-sql.install b/debian/monetdb5-sql.install --- a/debian/monetdb5-sql.install +++ b/debian/monetdb5-sql.install @@ -3,6 +3,6 @@ debian/tmp/usr/bin/monetdb usr/bin debian/tmp/usr/lib/systemd/system/monetdbd.service lib/systemd/system debian/tmp/etc/logrotate.d/monetdbd etc/logrotate.d debian/tmp/etc/tmpfiles.d/monetdbd.conf usr/lib/tmpfiles.d -debian/tmp/usr/lib/x86_64-linux-gnu/monetdb5/lib_sql.so usr/lib/x86_64-linux-gnu/monetdb5 +debian/tmp/usr/lib/x86_64-linux-gnu/monetdb5/lib_sql.so* usr/lib/x86_64-linux-gnu/monetdb5 debian/tmp/var/monetdb5/dbfarm/.merovingian_properties var/monetdb5/dbfarm debian/tmp/var/monetdb5/dbfarm/.merovingian_lock var/monetdb5/dbfarm diff --git a/debian/rules b/debian/rules --- a/debian/rules +++ b/debian/rules @@ -13,43 +13,33 @@ DH_VERBOSE=1 override_dh_auto_configure: dh_auto_configure -- \ - --with-rundir=/run/monetdb \ - --enable-assert=no \ - --enable-debug=yes \ - --enable-developer=no \ - --enable-embedded=no \ - --enable-embedded-r=no \ - --enable-fits=yes \ - --enable-geom=yes \ - --enable-mapi=yes \ - --enable-netcdf=no \ - --enable-odbc=yes \ - --enable-optimize=yes \ - --enable-profiler=no \ - --enable-py3integration=yes \ - --enable-rintegration=yes \ - --enable-sanitizer=no \ - --enable-shp=no \ - --enable-static-analysis=no \ - --enable-strict=no \ - --enable-testing=yes \ - --with-bz2=yes \ - --with-curl=yes \ - --with-gdal=no \ - --with-geos=yes \ - --with-libxml2=yes \ - --with-lz4=no \ - --with-lzma=yes \ - --with-openssl=yes \ - --with-proj=no \ - --with-pthread=yes \ - --with-python3=yes \ - --with-readline=yes \ - --with-regex=PCRE \ - --with-snappy=no \ - --with-unixodbc=yes \ - --with-uuid=yes \ - --with-valgrind=no + -DASSERT=OFF \ + -DCINTEGRATION=ON \ + -DFITS=ON \ + -DGEOM=ON \ + -DINT128=ON \ + -DNETCDF=OFF \ + -DODBC=ON \ + -DPY3INTEGRATION=ON \ + -DRINTEGRATION=ON \ + -DSANITIZER=OFF \ + -DSHP=OFF \ + -DSTRICT=OFF \ + -DTESTING=ON \ + -DWITH_BZ2=ON \ + -DWITH_CMOCKA=OFF \ + -DWITH_CRYPTO=ON \ + -DWITH_CURL=ON \ + -DWITH_LZ4=OFF \ + -DWITH_LZMA=ON \ + -DWITH_PCRE=ON \ + -DWITH_PROJ=OFF \ + -DWITH_READLINE=ON \ + -DWITH_SNAPPY=OFF \ + -DWITH_UUID=ON \ + -DWITH_VALGRIND=OFF \ + -DWITH_XML2=ON \ + -DWITH_ZLIB=ON # currently the test suite fails override_dh_auto_test: diff --git a/sql/backends/monet5/rel_bin.c b/sql/backends/monet5/rel_bin.c --- a/sql/backends/monet5/rel_bin.c +++ b/sql/backends/monet5/rel_bin.c @@ -25,7 +25,7 @@ #define OUTER_ZERO 64 -static stmt * exp_bin(backend *be, sql_exp *e, stmt *left, stmt *right, stmt *grp, stmt *ext, stmt *cnt, stmt *sel, stmt *cond, int depth, int reduce); +static stmt * exp_bin(backend *be, sql_exp *e, stmt *left, stmt *right, stmt *grp, stmt *ext, stmt *cnt, stmt *sel, int depth, int reduce); static stmt * rel_bin(backend *be, sql_rel *rel); static stmt * subrel_bin(backend *be, sql_rel *rel, list *refs); _______________________________________________ checkin-list mailing list checkin-list@monetdb.org https://www.monetdb.org/mailman/listinfo/checkin-list