Changeset: 0291e90b8424 for MonetDB URL: https://dev.monetdb.org/hg/MonetDB/rev/0291e90b8424 Removed Files: debian/libmonetdb-client14.install debian/libmonetdb-stream17.install debian/libmonetdbe3.install Modified Files: clients/Tests/exports.stable.out debian/libmonetdb-client26.install debian/libmonetdb-stream26.install debian/libmonetdbe26.install sql/backends/monet5/CMakeLists.txt Branch: copyintobinary Log Message:
Merge 'default' into 'copyintobinary' diffs (truncated from 9272 to 300 lines): diff --git a/.hgtags b/.hgtags --- a/.hgtags +++ b/.hgtags @@ -779,3 +779,5 @@ 3191fee438036ac0da1e6f31481b9681399123b5 bdd04053973daa8a786a30e07b2bf1bd8aa6ebf1 Jul2021_27 bdd04053973daa8a786a30e07b2bf1bd8aa6ebf1 Jul2021_SP8_release 688ff09b2edc3d637f658f3e7ef3d5f07e3e8f9c Sep2022_1 +ea797696d5e8d8d550f21f09b98d3bcade1d001d Sep2022_3 +68c0e35095ad6a58766c6c1e77229d73148433e2 Sep2022_5 diff --git a/MonetDB.spec b/MonetDB.spec --- a/MonetDB.spec +++ b/MonetDB.spec @@ -1,3 +1,9 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# +# Copyright 1997 - July 2008 CWI, August 2008 - 2022 MonetDB B.V. + %global name MonetDB %global version 11.46.0 %{!?buildno: %global buildno %(date +%Y%m%d)} @@ -849,6 +855,33 @@ fi %endif %changelog +* Thu Sep 22 2022 Sjoerd Mullender <sjo...@acm.org> - 11.45.5-20220922 +- Rebuilt. + +* Wed Sep 21 2022 Sjoerd Mullender <sjo...@acm.org> - 11.45.3-20220921 +- Rebuilt. + +* Wed Sep 21 2022 Sjoerd Mullender <sjo...@acm.org> - 11.45.3-20220921 +- clients: Dumping of function GRANTs was improved by adding the types of the + function (and procedure) arguments. + +* Wed Sep 21 2022 Sjoerd Mullender <sjo...@acm.org> - 11.45.3-20220921 +- sql: The function sys.tracelog is now executable by anyone. The function + (and view of the same name) returns the tracing information of a query + that was prepended with the TRACE keyword. + +* Mon Sep 19 2022 Sjoerd Mullender <sjo...@acm.org> - 11.45.3-20220921 +- gdk: Fixed a bug in ORDER BY with both NULLS LAST and LIMIT when the ordering + was on an interger or integer-like column and NULL values are present. + +* Mon Sep 19 2022 Sjoerd Mullender <sjo...@acm.org> - 11.45.3-20220921 +- sql: Fixed a bug in COPY BINARY INTO where the input wasn't checked + thoroughly enough. + +* Tue Sep 13 2022 Sjoerd Mullender <sjo...@acm.org> - 11.45.3-20220921 +- gdk: The median_avg and quantile_avg returned bogus results in the + non-grouped case (i.e. something like SELECT sys.median_avg(i) FROM t). + * Tue Sep 13 2022 Sjoerd Mullender <sjo...@acm.org> - 11.45.1-20220913 - Rebuilt. - GH#6982: Wrong constraint name in error message of constraint violation @@ -876,11 +909,12 @@ fi minimize, simplify and optimize the process of generating and processing profiler output, only the events marking the end of an operation are emitted in most cases and the emitted json messages themselves are - trimmed down to their essential fields. Furthermore the MAL instruction - profiler.openstream now has an overload that takes a single string - argument which can be set to "min" to turn on the profiler in minimal - mode which causes it to only emit general events and excludes individual - MAL instruction execution events from the profiler streams. + trimmed down to their essential fields. Furthermore, the MAL instruction + profiler.openstream now requires an integer as a single argument, "0" for + default behaviour or "4" to turn on the profiler in minimal mode, + which causes it to only emit general events and excludes individual MAL + instruction execution events from the profiler streams. + The MAL instruction profiler.openstream with zero arguments is deprecated. * Thu Aug 25 2022 Martin van Dinther <martin.van.dint...@monetdbsolutions.com> - 11.45.1-20220913 - sql: Extended system view sys.users with columns: schema_path, max_memory, diff --git a/clients/ChangeLog-Archive b/clients/ChangeLog-Archive --- a/clients/ChangeLog-Archive +++ b/clients/ChangeLog-Archive @@ -1,6 +1,10 @@ # DO NOT EDIT THIS FILE -- MAINTAINED AUTOMATICALLY # This file contains past ChangeLog entries +* Wed Sep 21 2022 Sjoerd Mullender <sjo...@acm.org> - 11.45.3-20220921 +- Dumping of function GRANTs was improved by adding the types of the + function (and procedure) arguments. + * Fri Jun 10 2022 Sjoerd Mullender <sjo...@acm.org> - 11.43.17-20220811 - Implemented dump of global grants, that is to say, grants for COPY INTO and COPY FROM which grant permission to users to write to or read from 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 @@ -47770,7 +47770,7 @@ CMDopenProfilerStream; Start profiling the events, send to output stream profiler openstream -pattern profiler.openstream(X_0:str):void +pattern profiler.openstream(X_0:int):void CMDopenProfilerStream; Start profiling the events, send to output stream profiler 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 @@ -36195,7 +36195,7 @@ CMDopenProfilerStream; Start profiling the events, send to output stream profiler openstream -pattern profiler.openstream(X_0:str):void +pattern profiler.openstream(X_0:int):void CMDopenProfilerStream; Start profiling the events, send to output stream profiler 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 @@ -738,7 +738,7 @@ str AUTHdeleteRemoteTableCredentials(con str AUTHgetPasswordHash(str *ret, Client c, const char *username); str AUTHgetRemoteTableCredentials(const char *local_table, str *uri, str *username, str *password); str AUTHgetUsername(str *ret, Client c); -str AUTHinitTables(const char *passwd); +str AUTHinitTables(void); str AUTHrequireAdmin(Client c); str AUTHunlockVault(const char *password); str AUTHverifyPassword(const char *passwd); @@ -1095,13 +1095,13 @@ const char *lockRef; const char *lookupRef; str mal2str(MalBlkPtr mb, int first, int last); int malAtomSize(int size, const char *name); -str malBootstrap(char *modules[], bool embedded); +str malBootstrap(char *modules[], bool embedded, const char *initpasswd); str malEmbeddedBoot(int workerlimit, int memorylimit, int querytimeout, int sessionlimit, bool with_mapi_server); void malEmbeddedReset(void); _Noreturn void malEmbeddedStop(int status); str malExtraModulesBoot(Client c, str extraMalModules[], char *mal_scripts); str malInclude(Client c, const char *name, int listing); -str malIncludeModules(Client c, char *modules[], int listing, bool embedded); +str malIncludeModules(Client c, char *modules[], int listing, bool embedded, const char *initpasswd); str malIncludeString(Client c, const char *name, str mal, int listing, MALfcn address); int malLibraryEnabled(const char *name); char *malLibraryHowToEnable(const char *name); @@ -1112,7 +1112,7 @@ MT_Lock mal_contextLock; MT_Lock mal_copyLock; MT_Lock mal_delayLock; _Noreturn void mal_exit(int status); -int mal_init(char *modules[], bool embedded); +int mal_init(char *modules[], bool embedded, const char *initpasswd); void mal_instruction_reset(void); void mal_module(const char *name, mel_atom *atoms, mel_func *funcs); void mal_module2(const char *name, mel_atom *atoms, mel_func *funcs, mel_init initfunc, const char *code); @@ -1204,7 +1204,7 @@ const char *not_uniqueRef; const char *nth_valueRef; const char *ntileRef; const char *oidRef; -str openProfilerStream(Client cntxt, str s); +str openProfilerStream(Client cntxt, int m); const char *openRef; str operatorName(int i); void opt_pipes_reset(void); @@ -1270,7 +1270,6 @@ const char *putNameLen(const char *nme, const char *putRef; const char *pyapi3Ref; const char *pyapi3mapRef; -size_t qhead, qtail, qsize; const char *queryRef; const char *querylogRef; const char *raiseRef; diff --git a/clients/mapiclient/dump.c b/clients/mapiclient/dump.c --- a/clients/mapiclient/dump.c +++ b/clients/mapiclient/dump.c @@ -2122,13 +2122,13 @@ dump_function(Mapi mid, stream *toConsol query_len = snprintf(query, query_size, "SELECT f.id, " - "f.func, " - "f.language, " - "f.type, " - "s.name, " - "f.name, " - "ft.function_type_keyword, " - "fl.language_keyword, " + "f.func, " + "f.language, " + "f.type, " + "s.name, " + "f.name, " + "ft.function_type_keyword, " + "fl.language_keyword, " "c.remark " "FROM sys.functions f " "JOIN sys.schemas s ON f.schema_id = s.id " @@ -2536,7 +2536,7 @@ dump_database(Mapi mid, stream *toConsol has_schema_path(mid) ? "SELECT ui.name, " "ui.fullname, " - "password_hash(ui.name), " + "sys.password_hash(ui.name), " "s.name, " "ui.schema_path " "FROM sys.db_user_info ui, " @@ -2547,7 +2547,7 @@ dump_database(Mapi mid, stream *toConsol "ORDER BY ui.name" : "SELECT ui.name, " "ui.fullname, " - "password_hash(ui.name), " + "sys.password_hash(ui.name), " "s.name, " "cast(null as clob) " "FROM sys.db_user_info ui, " @@ -2611,24 +2611,42 @@ dump_database(Mapi mid, stream *toConsol "AND p.grantable = go.id " "ORDER BY s.name, t.name, c.name, a.name, g.name, p.grantable"; const char *function_grants = - "SELECT s.name, f.name, a.name, " - "pc.privilege_code_name, " - "g.name, go.opt, " - "ft.function_type_keyword " - "FROM sys.schemas s, sys.functions f, " - "sys.auths a, sys.privileges p, sys.auths g, " - "sys.function_types ft, " - "sys.privilege_codes pc, " - "(VALUES (0, ''), (1, ' WITH GRANT OPTION')) AS go (id, opt) " - "WHERE s.id = f.schema_id " + "SELECT f.id, " + "s.name, " + "f.name, " + "a.type, " + "a.type_digits, " + "a.type_scale, " + "a.inout, " + "a.number, " + "au.name, " + "pc.privilege_code_name, " + "go.opt, " + "ft.function_type_keyword " + "FROM sys.schemas s, " + "sys.functions f LEFT OUTER JOIN sys.args a ON f.id = a.func_id, " + "sys.auths au, " + "sys.privileges p, " + "sys.auths g, " + "sys.function_types ft, " + "sys.privilege_codes pc, " + "(VALUES (0, ''), (1, ' WITH GRANT OPTION')) AS go (id, opt) " + "WHERE NOT f.system " + "AND s.id = f.schema_id " "AND f.id = p.obj_id " - "AND p.auth_id = a.id " + "AND p.auth_id = au.id " "AND p.grantor = g.id " "AND p.privileges = pc.privilege_code_id " "AND f.type = ft.function_type_id " - "AND NOT f.system " "AND p.grantable = go.id " - "ORDER BY s.name, f.name, a.name, g.name, p.grantable"; + "ORDER BY s.name, " + "f.name, " + "au.name, " + "g.name, " + "p.grantable, " + "f.id, " + "a.inout DESC, " + "a.number"; const char *global_grants = "SELECT a.name, pc.grnt, g.name, go.opt " "FROM sys.privileges p, " @@ -2758,6 +2776,9 @@ dump_database(Mapi mid, stream *toConsol char *curschema = NULL; MapiHdl hdl = NULL; int rc = 0; + int lastfid = 0; + const char *sep; + bool hashge = has_hugeint(mid); /* start a transaction for the dump */ mnstr_printf(toConsole, "%s;\n", start_trx); @@ -3269,7 +3290,7 @@ dump_database(Mapi mid, stream *toConsol if (priv == 79) { mnstr_printf(toConsole, " ALL PRIVILEGES"); } else { - const char *sep = ""; + sep = ""; if (priv & 1) { mnstr_printf(toConsole, "%s SELECT", sep); @@ -3327,7 +3348,11 @@ dump_database(Mapi mid, stream *toConsol dquoted_print(toConsole, cname, ") ON "); dquoted_print(toConsole, schema, "."); dquoted_print(toConsole, tname, " TO "); - dquoted_print(toConsole, aname, grantable); + if (strcmp(aname, "public") == 0) { + mnstr_printf(toConsole, "PUBLIC%s", grantable); + } else { + dquoted_print(toConsole, aname, grantable); + } mnstr_printf(toConsole, ";\n"); } if (mapi_error(mid)) @@ -3338,21 +3363,44 @@ dump_database(Mapi mid, stream *toConsol mapi_error(mid)) goto bailout; _______________________________________________ checkin-list mailing list -- checkin-list@monetdb.org To unsubscribe send an email to checkin-list-le...@monetdb.org