Changeset: 95b78f831b0b for MonetDB URL: https://dev.monetdb.org/hg/MonetDB/rev/95b78f831b0b Modified Files: MonetDB.spec clients/Tests/exports.stable.out debian/control gdk/gdk_batop.c sql/backends/monet5/sql.c Branch: default Log Message:
Merge with Aug2024 branch. diffs (truncated from 1447 to 300 lines): diff --git a/ChangeLog.Dec2023 b/ChangeLog.Dec2023 --- a/ChangeLog.Dec2023 +++ b/ChangeLog.Dec2023 @@ -1,3 +1,7 @@ # ChangeLog file for devel # This file is updated with Maddlog +* Tue Aug 6 2024 Sjoerd Mullender <sjo...@acm.org> +- The CMake configuration files for building extensions have now been + included in the various MonetDB development RPMs and debs. + diff --git a/MonetDB.spec b/MonetDB.spec --- a/MonetDB.spec +++ b/MonetDB.spec @@ -211,6 +211,12 @@ functionality of MonetDB. %{_includedir}/monetdb/monet*.h %{_libdir}/libbat*.so %{_libdir}/pkgconfig/monetdb-gdk.pc +%dir %{_datadir}/monetdb +%dir %{_datadir}/monetdb/cmake +%{_datadir}/monetdb/cmake/gdkTargets*.cmake +%{_datadir}/monetdb/cmake/matomicTargets.cmake +%{_datadir}/monetdb/cmake/mstringTargets.cmake +%{_datadir}/monetdb/cmake/monetdb_config_headerTargets.cmake %endif %package stream @@ -258,6 +264,7 @@ library. %{_includedir}/monetdb/stream.h %{_includedir}/monetdb/stream_socket.h %{_libdir}/pkgconfig/monetdb-stream.pc +%{_datadir}/monetdb/cmake/streamTargets*.cmake %endif %package client-lib @@ -338,6 +345,7 @@ This package contains the files needed t %{_includedir}/monetdb/mapi*.h %{_includedir}/monetdb/msettings.h %{_libdir}/pkgconfig/monetdb-mapi.pc +%{_datadir}/monetdb/cmake/mapiTargets*.cmake %endif %if %{without compat} @@ -644,6 +652,7 @@ used from the MAL level. %{_includedir}/monetdb/mel.h %{_libdir}/libmonetdb5*.so %{_libdir}/pkgconfig/monetdb5.pc +%{_datadir}/monetdb/cmake/monetdb5Targets*.cmake %endif %package SQL @@ -701,6 +710,7 @@ Summary: MonetDB SQL server modules deve Group: Applications/Databases Requires: %{name}-SQL%{?_isa} = %{version}-%{release} Requires: %{name}-server-devel%{?_isa} = %{version}-%{release} +Requires: %{name}-embedded-devel%{?_isa} = %{version}-%{release} %description SQL-devel MonetDB is a database management system that is developed from a @@ -716,6 +726,8 @@ This package contains files needed to de %{_includedir}/monetdb/rel_*.h %{_includedir}/monetdb/sql*.h %{_includedir}/monetdb/store_*.h +%{_datadir}/monetdb/cmake/MonetDBConfig*.cmake +%{_datadir}/monetdb/cmake/sqlTargets*.cmake %endif %if %{without compat} @@ -759,6 +771,7 @@ program that uses MonetDB as an embeddab %{_libdir}/libmonetdbe.so %{_includedir}/monetdb/monetdbe.h %{_libdir}/pkgconfig/monetdbe.pc +%{_datadir}/monetdb/cmake/monetdbeTargets*.cmake %package embedded-tests Summary: MonetDBe tests package @@ -938,7 +951,6 @@ rm -f "${RPM_BUILD_ROOT}"%{_libdir}/mone rm -f "${RPM_BUILD_ROOT}"%{_libdir}/monetdb5*/lib_microbenchmark*.so rm -f "${RPM_BUILD_ROOT}"%{_libdir}/monetdb5*/lib_udf*.so rm -f "${RPM_BUILD_ROOT}"%{_bindir}/monetdb_mtest.sh -rm -rf "${RPM_BUILD_ROOT}"%{_datadir}/monetdb # /cmake if [ -x /usr/sbin/hardlink ]; then /usr/sbin/hardlink -cv "${RPM_BUILD_ROOT}"%{_datadir}/selinux 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 @@ -1322,6 +1322,7 @@ void trimMalVariables(MalBlkPtr mb, MalS void trimMalVariables_(MalBlkPtr mb, MalStkPtr glb); void typeChecker(Module scope, MalBlkPtr mb, InstrPtr p, int p_idx, int silent); const char *umaskRef; +const char *unionfuncRef; const char *uniqueRef; const char *unlockRef; const char *updateRef; diff --git a/clients/mapiclient/dump.c b/clients/mapiclient/dump.c --- a/clients/mapiclient/dump.c +++ b/clients/mapiclient/dump.c @@ -2251,14 +2251,10 @@ dump_table(Mapi mid, const char *schema, goto doreturn; } for (int64_t i = 0; i < rows; i++) { - if (mapi_fetch_row(hdl) == 0) { - mapi_close_handle(hdl); - fprintf(stderr, "unexepcted error\n"); - goto doreturn; - } - tables[i].schema = strdup(mapi_fetch_field(hdl, 0)); - tables[i].table = strdup(mapi_fetch_field(hdl, 1)); - if (tables[i].schema == NULL || tables[i].table == NULL) { + tables[i].schema = tables[i].table = NULL; + if (mapi_fetch_row(hdl) == 0 || + (tables[i].schema = strdup(mapi_fetch_field(hdl, 0))) == NULL || + (tables[i].table = strdup(mapi_fetch_field(hdl, 1))) == NULL) { do { free(tables[i].schema); free(tables[i].table); diff --git a/clients/mapilib/mapi.c b/clients/mapilib/mapi.c --- a/clients/mapilib/mapi.c +++ b/clients/mapilib/mapi.c @@ -1786,12 +1786,6 @@ mapi_new(msettings *settings) mid = malloc(sizeof(*mid)); if (mid == NULL) return NULL; - if (settings == NULL) - settings = msettings_create(); - if (settings == NULL) { - free(mid); - return NULL; - } /* then fill in some details */ *mid = MapiStructDefaults; @@ -1800,6 +1794,13 @@ mapi_new(msettings *settings) mapi_destroy(mid); return NULL; } + if (settings == NULL) { + settings = msettings_create(); + if (settings == NULL) { + mapi_destroy(mid); + return NULL; + } + } mid->settings = settings; mid->blk.buf[0] = 0; mid->blk.buf[mid->blk.lim] = 0; diff --git a/common/stream/fwf.c b/common/stream/fwf.c --- a/common/stream/fwf.c +++ b/common/stream/fwf.c @@ -47,8 +47,10 @@ stream_fwf_read(stream *restrict s, void if (fsd == NULL || elmsize != 1) { return -1; } - if (fsd->eof) + if (fsd->eof) { + s->eof = 1; return 0; + } while (to_write > 0) { /* input conversion */ @@ -59,14 +61,18 @@ stream_fwf_read(stream *restrict s, void if (actually_read < 0) { return actually_read; /* this is an error */ } - fsd->eof |= fsd->s->eof; - return (ssize_t) buf_written; /* skip last line */ + if (actually_read == 0) { + fsd->eof |= fsd->s->eof; + s->eof = fsd->eof; + return (ssize_t) buf_written; /* skip last line */ + } } /* consume to next newline */ while (fsd->s->read(fsd->s, &nl_buf, 1, 1) == 1 && nl_buf != '\n') ; fsd->eof |= fsd->s->eof; + s->eof = fsd->eof; for (field_idx = 0; field_idx < fsd->num_fields; field_idx++) { char *val_start, *val_end; diff --git a/debian/control b/debian/control --- a/debian/control +++ b/debian/control @@ -274,7 +274,8 @@ Package: monetdb-sql-dev Architecture: any Depends: ${shlibs:Depends}, ${misc:Depends}, monetdb-server-dev (= ${source:Version}), - monetdb-sql (= ${source:Version}) + monetdb-sql (= ${source:Version})), + libmonetdbe-dev (= ${source:Version}) Replaces: monetdb5-sql-dev (<< 11.50.0) Break: monetdb5-sql-dev (<< 11.50.0) Description: MonetDB SQL support diff --git a/debian/libmonetdb-client-dev.install b/debian/libmonetdb-client-dev.install --- a/debian/libmonetdb-client-dev.install +++ b/debian/libmonetdb-client-dev.install @@ -2,3 +2,4 @@ debian/tmp/usr/lib/x86_64-linux-gnu/libm debian/tmp/usr/include/monetdb/mapi*.h usr/include/monetdb debian/tmp/usr/include/monetdb/msettings.h usr/include/monetdb debian/tmp/usr/lib/x86_64-linux-gnu/pkgconfig/monetdb-mapi.pc usr/lib/x86_64-linux-gnu/pkgconfig +debian/tmp/usr/share/monetdb/cmake/mapiTargets*.cmake usr/share/monetdb/cmake diff --git a/debian/libmonetdb-dev.install b/debian/libmonetdb-dev.install --- a/debian/libmonetdb-dev.install +++ b/debian/libmonetdb-dev.install @@ -7,3 +7,7 @@ debian/tmp/usr/include/monetdb/mstring.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 +debian/tmp/usr/share/monetdb/cmake/gdkTargets*.cmake usr/share/monetdb/cmake +debian/tmp/usr/share/monetdb/cmake/matomicTargets.cmake usr/share/monetdb/cmake +debian/tmp/usr/share/monetdb/cmake/mstringTargets.cmake usr/share/monetdb/cmake +debian/tmp/usr/share/monetdb/cmake/monetdb_config_headerTargets.cmake usr/share/monetdb/cmake diff --git a/debian/libmonetdb-stream-dev.install b/debian/libmonetdb-stream-dev.install --- a/debian/libmonetdb-stream-dev.install +++ b/debian/libmonetdb-stream-dev.install @@ -2,3 +2,4 @@ debian/tmp/usr/lib/x86_64-linux-gnu/libs debian/tmp/usr/include/monetdb/stream.h usr/include/monetdb debian/tmp/usr/include/monetdb/stream_socket.h usr/include/monetdb debian/tmp/usr/lib/x86_64-linux-gnu/pkgconfig/monetdb-stream.pc usr/lib/x86_64-linux-gnu/pkgconfig +debian/tmp/usr/share/monetdb/cmake/streamTargets*.cmake usr/share/monetdb/cmake diff --git a/debian/libmonetdbe-dev.install b/debian/libmonetdbe-dev.install --- a/debian/libmonetdbe-dev.install +++ b/debian/libmonetdbe-dev.install @@ -1,3 +1,4 @@ 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 +debian/tmp/usr/share/monetdb/cmake/monetdbeTargets.cmake usr/share/monetdb/cmake diff --git a/debian/monetdb5-server-dev.install b/debian/monetdb5-server-dev.install --- a/debian/monetdb5-server-dev.install +++ b/debian/monetdb5-server-dev.install @@ -2,3 +2,4 @@ debian/tmp/usr/lib/x86_64-linux-gnu/libm debian/tmp/usr/include/monetdb/mal*.h usr/include/monetdb debian/tmp/usr/include/monetdb/mel.h usr/include/monetdb debian/tmp/usr/lib/x86_64-linux-gnu/pkgconfig/monetdb5.pc usr/lib/x86_64-linux-gnu/pkgconfig +debian/tmp/usr/share/monetdb/cmake/monetdb5Targets*.cmake usr/share/monetdb/cmake diff --git a/debian/monetdb5-sql-dev.install b/debian/monetdb5-sql-dev.install --- a/debian/monetdb5-sql-dev.install +++ b/debian/monetdb5-sql-dev.install @@ -2,3 +2,5 @@ debian/tmp/usr/include/monetdb/opt_backe debian/tmp/usr/include/monetdb/rel_*.h usr/include/monetdb debian/tmp/usr/include/monetdb/sql*.h usr/include/monetdb debian/tmp/usr/include/monetdb/store_*.h usr/include/monetdb +debian/tmp/usr/share/monetdb/cmake/MonetDBConfigTargets*.cmake usr/share/monetdb/cmake +debian/tmp/usr/share/monetdb/cmake/sqlTargets*.cmake usr/share/monetdb/cmake diff --git a/debian/rules b/debian/rules --- a/debian/rules +++ b/debian/rules @@ -54,7 +54,6 @@ override_dh_strip: override_dh_auto_install: dh_auto_install rm debian/tmp/usr/bin/monetdb_mtest.sh - rm -r debian/tmp/usr/share/monetdb rm debian/tmp/usr/lib/*/monetdb5*/lib_opt_sql_append.so rm debian/tmp/usr/lib/*/monetdb5*/lib_microbenchmark*.so rm debian/tmp/usr/lib/*/monetdb5*/lib_udf*.so diff --git a/gdk/ChangeLog.Aug2024 b/gdk/ChangeLog.Aug2024 --- a/gdk/ChangeLog.Aug2024 +++ b/gdk/ChangeLog.Aug2024 @@ -6,7 +6,7 @@ comparisons and converting to upper or lower case. Case insensitive comparison (i.e. the ILIKE operator) uses case folding which is similar to converting to lower case, but changes more characters, also sometimes - to multiple characters (e.g. German sharp s (ß) comparse equal to SS). + to multiple characters (e.g. German sharp s (ß) compares equal to SS). * Tue Mar 26 2024 Sjoerd Mullender <sjo...@acm.org> - Made some changes to how BAT descriptors are allocated. They are now diff --git a/gdk/gdk_batop.c b/gdk/gdk_batop.c --- a/gdk/gdk_batop.c +++ b/gdk/gdk_batop.c @@ -3069,9 +3069,11 @@ BATcount_no_nil(BAT *b, BAT *s) hseq = b->hseqbase; canditer_init(&ci, b, s); - if (b->tnonil) + BATiter bi = bat_iterator(b); + if (bi.nonil) { + bat_iterator_end(&bi); return ci.ncand; - BATiter bi = bat_iterator(b); + } p = bi.base; t = ATOMbasetype(bi.type); switch (t) { diff --git a/gdk/gdk_cand.c b/gdk/gdk_cand.c --- a/gdk/gdk_cand.c +++ b/gdk/gdk_cand.c @@ -846,6 +846,7 @@ canditer_mask_next(const struct canditer o = 31; if (p == 0) return oid_nil; + p--; } else { o--; } diff --git a/gdk/gdk_hash.c b/gdk/gdk_hash.c _______________________________________________ checkin-list mailing list -- checkin-list@monetdb.org To unsubscribe send an email to checkin-list-le...@monetdb.org