MonetDB: Aug2024 - Not only Windows, but also MacOS give a Permi...

2024-11-14 Thread Sjoerd Mullender via checkin-list
Changeset: 2f9de581b728 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB/rev/2f9de581b728
Modified Files:
testing/Mtest.py.in
Branch: Aug2024
Log Message:

Not only Windows, but also MacOS give a PermissionError when unlinkig a 
directory.


diffs (23 lines):

diff --git a/testing/Mtest.py.in b/testing/Mtest.py.in
--- a/testing/Mtest.py.in
+++ b/testing/Mtest.py.in
@@ -28,6 +28,7 @@
 import os
 import sys
 import shutil
+import platform
 import re
 import secrets
 import time
@@ -313,8 +314,9 @@ def remove(file):
 except IsADirectoryError:
 shutil.rmtree(file, ignore_errors=True)
 except PermissionError:
-# on Windows we get a weird error from os.remove on a directory
-if os.name == "nt":
+# on Windows and MacOS we get a weird error from os.remove on a
+# directory
+if platform.system() in ('Windows', 'Darwin'):
 shutil.rmtree(file, ignore_errors=True)
 else:
 Warn('could not remove {}'.format(file))
___
checkin-list mailing list -- checkin-list@monetdb.org
To unsubscribe send an email to checkin-list-le...@monetdb.org


MonetDB: odbc_loader - Approve exports output

2024-11-14 Thread Martin van Dinther via checkin-list
Changeset: ad671db65410 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB/rev/ad671db65410
Modified Files:
clients/Tests/exports.stable.out
Branch: odbc_loader
Log Message:

Approve exports output


diffs (12 lines):

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
@@ -1636,6 +1636,8 @@ str mvc_rollback(mvc *c, int chain, cons
 str number2name(str s, int len, int i);
 bool option_disable_fork;
 sql_part *partition_find_part(sql_trans *tr, sql_table *pt, sql_part *pp);
+int pl_register(char *name, pl_add_types_fptr add_types, pl_load_fptr pl_load);
+void pl_unregister(char *name);
 void qc_delete(qc *cache, cq *q);
 cq *qc_find(qc *cache, int id);
 cq *qc_insert(qc *cache, allocator *sa, sql_rel *r, symbol *s, list *params, 
mapi_query_t type, char *codedstr, int no_mitosis);
___
checkin-list mailing list -- checkin-list@monetdb.org
To unsubscribe send an email to checkin-list-le...@monetdb.org


MonetDB: odbc_loader - fix problem with file_loader()

2024-11-14 Thread Martin van Dinther via checkin-list
Changeset: d4398ec93f50 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB/rev/d4398ec93f50
Modified Files:
sql/common/sql_types.c
sql/server/rel_select.c
Branch: odbc_loader
Log Message:

fix problem with file_loader()


diffs (32 lines):

diff --git a/sql/common/sql_types.c b/sql/common/sql_types.c
--- a/sql/common/sql_types.c
+++ b/sql/common/sql_types.c
@@ -1711,8 +1711,12 @@ sqltypeinit( allocator *sa)
f = sql_create_union(sa, "copyfrombinary", "", "", TRUE, SCALE_FIX, 0, 
TABLE, 3, STR, STR, INT);
f->varres = 1;
 
-   f = sql_create_union(sa, "file_loader", "", "", TRUE, SCALE_FIX, 0, 
TABLE, 1, STR); /* file_loader */
-   f = sql_create_union(sa, "proto_loader", "", "", TRUE, SCALE_FIX, 0, 
TABLE, 1, STR); /* proto_loader */
+   /* file_loader */
+   f = sql_create_union(sa, "file_loader", "", "", TRUE, SCALE_FIX, 0, 
TABLE, 1, STR);
+   f->varres = 1;
+
+   /* generic proto_loader which expects an URI starting with the protocol 
like: 'odbc:' or 'monetdb:' or 'file:' */
+   f = sql_create_union(sa, "proto_loader", "", "", TRUE, SCALE_FIX, 0, 
TABLE, 1, STR);
f->varres = 1;
 
/* sys_update_schemas, sys_update_tables */
diff --git a/sql/server/rel_select.c b/sql/server/rel_select.c
--- a/sql/server/rel_select.c
+++ b/sql/server/rel_select.c
@@ -833,6 +833,10 @@ rel_named_table_function(sql_query *quer
 
if (!sname && strcmp(fname, "proto_loader") == 0) {
rel = rel_proto_loader(sql, exps, tl, tname);
+   if (!rel) {
+   /* no supported protocol found in uri, try file_loader 
*/
+   rel = rel_file_loader(sql, exps, tl, tname);
+   }
if (!rel)
return NULL;
} else if (!sname && strcmp(fname, "file_loader") == 0) {
___
checkin-list mailing list -- checkin-list@monetdb.org
To unsubscribe send an email to checkin-list-le...@monetdb.org


MonetDB: odbc_loader - merge with default

2024-11-14 Thread Martin van Dinther via checkin-list
Changeset: bce0fa4f6481 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB/rev/bce0fa4f6481
Branch: odbc_loader
Log Message:

merge with default


diffs (truncated from 1997 to 300 lines):

diff --git a/.hgtags b/.hgtags
--- a/.hgtags
+++ b/.hgtags
@@ -834,3 +834,4 @@ ae474f7fda0a3f2ebefc6c0b2cd969ef0854fad1
 dce400b68239412b1835fb28bd183bf50f5e8692 Aug2024_3
 dce400b68239412b1835fb28bd183bf50f5e8692 Aug2024_release
 ab5d60be21cd1c65e9de476d71a86c2995f70785 Aug2024_5
+ab5d60be21cd1c65e9de476d71a86c2995f70785 Aug2024_SP1_release
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
@@ -20,7 +20,7 @@ BAT *BATasciify(BAT *b, BAT *s);
 void BATassertProps(BAT *b);
 atomDesc BATatoms[MAXATOMS];
 BAT *BATattach(int tt, const char *heapfile, role_t role);
-gdk_return BATbandjoin(BAT **r1p, BAT **r2p, BAT *l, BAT *r, BAT *sl, BAT *sr, 
const void *c1, const void *c2, bool li, bool hi, BUN estimate) 
__attribute__((__warn_unused_result__));
+gdk_return BATbandjoin(BAT **r1p, BAT **r2p, BAT *l, BAT *r, BAT *sl, BAT *sr, 
const void *c1, const void *c2, bool li, bool hi, BUN estimate) 
__attribute__((__access__(write_only, 1))) 
__attribute__((__access__(write_only, 2))) 
__attribute__((__warn_unused_result__));
 BAT *BATcalcabsolute(BAT *b, BAT *s);
 BAT *BATcalcadd(BAT *b1, BAT *b2, BAT *s1, BAT *s2, int tp);
 BAT *BATcalcaddcst(BAT *b, const ValRecord *v, BAT *s, int tp);
@@ -122,11 +122,11 @@ BAT *BATdescriptor(bat i);
 BAT *BATdiff(BAT *l, BAT *r, BAT *sl, BAT *sr, bool nil_matches, bool not_in, 
BUN estimate);
 BAT *BATdiffcand(BAT *a, BAT *b);
 gdk_return BATextend(BAT *b, BUN newcap) 
__attribute__((__warn_unused_result__));
-gdk_return BATfirstn(BAT **topn, BAT **gids, BAT *b, BAT *cands, BAT *grps, 
BUN n, bool asc, bool nilslast, bool distinct) 
__attribute__((__warn_unused_result__));
+gdk_return BATfirstn(BAT **topn, BAT **gids, BAT *b, BAT *cands, BAT *grps, 
BUN n, bool asc, bool nilslast, bool distinct) 
__attribute__((__access__(write_only, 1))) 
__attribute__((__access__(write_only, 2))) 
__attribute__((__warn_unused_result__));
 restrict_t BATgetaccess(BAT *b);
 ValPtr BATgetprop(BAT *b, enum prop_t idx);
 ValPtr BATgetprop_nolock(BAT *b, enum prop_t idx);
-gdk_return BATgroup(BAT **groups, BAT **extents, BAT **histo, BAT *b, BAT *s, 
BAT *g, BAT *e, BAT *h) __attribute__((__warn_unused_result__));
+gdk_return BATgroup(BAT **groups, BAT **extents, BAT **histo, BAT *b, BAT *s, 
BAT *g, BAT *e, BAT *h) __attribute__((__access__(write_only, 1))) 
__attribute__((__access__(write_only, 2))) 
__attribute__((__access__(write_only, 3))) 
__attribute__((__warn_unused_result__));
 const char *BATgroupaggrinit(BAT *b, BAT *g, BAT *e, BAT *s, oid *minp, oid 
*maxp, BUN *ngrpp, struct canditer *ci);
 gdk_return BATgroupavg(BAT **bnp, BAT **cntsp, BAT *b, BAT *g, BAT *e, BAT *s, 
int tp, bool skip_nils, int scale);
 gdk_return BATgroupavg3(BAT **avgp, BAT **remp, BAT **cntp, BAT *b, BAT *g, 
BAT *e, BAT *s, bool skip_nils);
@@ -155,10 +155,10 @@ bool BAThasstrimps(BAT *b);
 void BAThseqbase(BAT *b, oid o);
 BAT *BATintersect(BAT *l, BAT *r, BAT *sl, BAT *sr, bool nil_matches, bool 
max_one, BUN estimate);
 BAT *BATintersectcand(BAT *a, BAT *b);
-gdk_return BATjoin(BAT **r1p, BAT **r2p, BAT *l, BAT *r, BAT *sl, BAT *sr, 
bool nil_matches, BUN estimate) __attribute__((__warn_unused_result__));
+gdk_return BATjoin(BAT **r1p, BAT **r2p, BAT *l, BAT *r, BAT *sl, BAT *sr, 
bool nil_matches, BUN estimate) __attribute__((__access__(write_only, 1))) 
__attribute__((__access__(write_only, 2))) 
__attribute__((__warn_unused_result__));
 gdk_return BATkey(BAT *b, bool onoff);
-gdk_return BATleftjoin(BAT **r1p, BAT **r2p, BAT *l, BAT *r, BAT *sl, BAT *sr, 
bool nil_matches, BUN estimate) __attribute__((__warn_unused_result__));
-gdk_return BATmarkjoin(BAT **r1p, BAT **r2p, BAT **r3p, BAT *l, BAT *r, BAT 
*sl, BAT *sr, BUN estimate) __attribute__((__warn_unused_result__));
+gdk_return BATleftjoin(BAT **r1p, BAT **r2p, BAT *l, BAT *r, BAT *sl, BAT *sr, 
bool nil_matches, BUN estimate) __attribute__((__access__(write_only, 1))) 
__attribute__((__access__(write_only, 2))) 
__attribute__((__warn_unused_result__));
+gdk_return BATmarkjoin(BAT **r1p, BAT **r2p, BAT **r3p, BAT *l, BAT *r, BAT 
*sl, BAT *sr, BUN estimate) __attribute__((__access__(write_only, 1))) 
__attribute__((__access__(write_only, 2))) 
__attribute__((__access__(write_only, 3))) 
__attribute__((__warn_unused_result__));
 BAT *BATmaskedcands(oid hseq, BUN nr, BAT *masked, bool selected);
 void *BATmax(BAT *b, void *aggr);
 void *BATmax_skipnil(BAT *b, void *aggr, bit skipnil);
@@ -171,8 +171,8 @@ BAT *BATnil_grp(BAT *l, BAT *g, BAT *e, 
 bool BATordered(BAT *b);
 bool BATordered_rev(BAT *b);
 gdk_return BATorderidx(BAT *b, bool stable);
-gdk_return BAToutercross(BAT **r1p, BAT **r2p, BAT *l, BAT *r, BAT *sl, BAT 
*sr, bool max_one) __attribute__((__warn_unuse