Changeset: 3eb5a2773445 for MonetDB URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=3eb5a2773445 Modified Files: clients/Tests/exports.stable.out gdk/gdk.h gdk/gdk_aggr.c gdk/gdk_align.c gdk/gdk_atoms.c gdk/gdk_bat.c gdk/gdk_batop.c gdk/gdk_bbp.c gdk/gdk_calc.c gdk/gdk_calc.h gdk/gdk_calc_compare.h gdk/gdk_cross.c gdk/gdk_delta.c gdk/gdk_imprints.c gdk/gdk_join.c gdk/gdk_join_legacy.c gdk/gdk_logger.c gdk/gdk_select.c gdk/gdk_setop.c gdk/gdk_storage.c gdk/gdk_utils.c gdk/gdk_value.c geom/monetdb5/geom.c monetdb5/mal/mal_atom.c monetdb5/mal/mal_profiler.c monetdb5/modules/atoms/batxml.c monetdb5/modules/atoms/blob.c monetdb5/modules/atoms/json.c monetdb5/modules/atoms/uuid.c monetdb5/modules/kernel/aggr.c monetdb5/modules/kernel/algebra.c monetdb5/modules/kernel/bat5.c monetdb5/modules/kernel/logger.c monetdb5/modules/kernel/microbenchmark.c monetdb5/modules/mal/batcalc.c monetdb5/modules/mal/calc.c monetdb5/modules/mal/mal_io.c monetdb5/modules/mal/mat.c monetdb5/modules/mal/pcre.c monetdb5/modules/mal/tablet.c monetdb5/modules/mal/tokenizer.c sql/backends/monet5/generator/generator.c sql/backends/monet5/sql.c sql/backends/monet5/sql_result.c sql/include/sql_mem.h sql/server/rel_schema.c testing/malcheck.py Branch: default Log Message:
Cleanup use of GDK_FAIL and GDK_SUCCEED. All functions that return GDK_FAIL and/or GDK_SUCCEED are now declared as returning a value of type gdk_return. Never test for failure by comparing with GDK_FAIL, but only by comparing with GDK_SUCCEED: this way we can extend the values with specific errors. diffs (truncated from 3496 to 300 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 @@ -30,7 +30,7 @@ BAT *BATcalcadd(BAT *b1, BAT *b2, BAT *s BAT *BATcalcaddcst(BAT *b, const ValRecord *v, BAT *s, int tp, int abort_on_error); BAT *BATcalcand(BAT *b1, BAT *b2, BAT *s); BAT *BATcalcandcst(BAT *b, const ValRecord *v, BAT *s); -int BATcalcavg(BAT *b, BAT *s, dbl *avg, BUN *vals); +gdk_return BATcalcavg(BAT *b, BAT *s, dbl *avg, BUN *vals); BAT *BATcalcbetween(BAT *b, BAT *lo, BAT *hi, BAT *s, int sym); BAT *BATcalcbetweenbatcst(BAT *b, BAT *lo, const ValRecord *hi, BAT *s, int sym); BAT *BATcalcbetweencstbat(BAT *b, const ValRecord *lo, BAT *hi, BAT *s, int sym); @@ -338,34 +338,34 @@ void *VALget(ValPtr v); ValPtr VALinit(ValPtr d, int tpe, const void *s); int VALisnil(const ValRecord *v); ValPtr VALset(ValPtr v, int t, ptr p); -int VARcalcabsolute(ValPtr ret, const ValRecord *v); -int VARcalcadd(ValPtr ret, const ValRecord *lft, const ValRecord *rgt, int abort_on_error); -int VARcalcand(ValPtr ret, const ValRecord *lft, const ValRecord *rgt); -int VARcalcbetween(ValPtr ret, const ValRecord *v, const ValRecord *lo, const ValRecord *hi, int sym); -int VARcalccmp(ValPtr ret, const ValRecord *lft, const ValRecord *rgt); -int VARcalcdecr(ValPtr ret, const ValRecord *v, int abort_on_error); -int VARcalcdiv(ValPtr ret, const ValRecord *lft, const ValRecord *rgt, int abort_on_error); -int VARcalceq(ValPtr ret, const ValRecord *lft, const ValRecord *rgt); -int VARcalcge(ValPtr ret, const ValRecord *lft, const ValRecord *rgt); -int VARcalcgt(ValPtr ret, const ValRecord *lft, const ValRecord *rgt); -int VARcalcincr(ValPtr ret, const ValRecord *v, int abort_on_error); -int VARcalcisnil(ValPtr ret, const ValRecord *v); -int VARcalcisnotnil(ValPtr ret, const ValRecord *v); -int VARcalciszero(ValPtr ret, const ValRecord *v); -int VARcalcle(ValPtr ret, const ValRecord *lft, const ValRecord *rgt); -int VARcalclsh(ValPtr ret, const ValRecord *lft, const ValRecord *rgt, int abort_on_error); -int VARcalclt(ValPtr ret, const ValRecord *lft, const ValRecord *rgt); -int VARcalcmod(ValPtr ret, const ValRecord *lft, const ValRecord *rgt, int abort_on_error); -int VARcalcmul(ValPtr ret, const ValRecord *lft, const ValRecord *rgt, int abort_on_error); -int VARcalcne(ValPtr ret, const ValRecord *lft, const ValRecord *rgt); -int VARcalcnegate(ValPtr ret, const ValRecord *v); -int VARcalcnot(ValPtr ret, const ValRecord *v); -int VARcalcor(ValPtr ret, const ValRecord *lft, const ValRecord *rgt); -int VARcalcrsh(ValPtr ret, const ValRecord *lft, const ValRecord *rgt, int abort_on_error); -int VARcalcsign(ValPtr ret, const ValRecord *v); -int VARcalcsub(ValPtr ret, const ValRecord *lft, const ValRecord *rgt, int abort_on_error); -int VARcalcxor(ValPtr ret, const ValRecord *lft, const ValRecord *rgt); -int VARconvert(ValPtr ret, const ValRecord *v, int abort_on_error); +gdk_return VARcalcabsolute(ValPtr ret, const ValRecord *v); +gdk_return VARcalcadd(ValPtr ret, const ValRecord *lft, const ValRecord *rgt, int abort_on_error); +gdk_return VARcalcand(ValPtr ret, const ValRecord *lft, const ValRecord *rgt); +gdk_return VARcalcbetween(ValPtr ret, const ValRecord *v, const ValRecord *lo, const ValRecord *hi, int sym); +gdk_return VARcalccmp(ValPtr ret, const ValRecord *lft, const ValRecord *rgt); +gdk_return VARcalcdecr(ValPtr ret, const ValRecord *v, int abort_on_error); +gdk_return VARcalcdiv(ValPtr ret, const ValRecord *lft, const ValRecord *rgt, int abort_on_error); +gdk_return VARcalceq(ValPtr ret, const ValRecord *lft, const ValRecord *rgt); +gdk_return VARcalcge(ValPtr ret, const ValRecord *lft, const ValRecord *rgt); +gdk_return VARcalcgt(ValPtr ret, const ValRecord *lft, const ValRecord *rgt); +gdk_return VARcalcincr(ValPtr ret, const ValRecord *v, int abort_on_error); +gdk_return VARcalcisnil(ValPtr ret, const ValRecord *v); +gdk_return VARcalcisnotnil(ValPtr ret, const ValRecord *v); +gdk_return VARcalciszero(ValPtr ret, const ValRecord *v); +gdk_return VARcalcle(ValPtr ret, const ValRecord *lft, const ValRecord *rgt); +gdk_return VARcalclsh(ValPtr ret, const ValRecord *lft, const ValRecord *rgt, int abort_on_error); +gdk_return VARcalclt(ValPtr ret, const ValRecord *lft, const ValRecord *rgt); +gdk_return VARcalcmod(ValPtr ret, const ValRecord *lft, const ValRecord *rgt, int abort_on_error); +gdk_return VARcalcmul(ValPtr ret, const ValRecord *lft, const ValRecord *rgt, int abort_on_error); +gdk_return VARcalcne(ValPtr ret, const ValRecord *lft, const ValRecord *rgt); +gdk_return VARcalcnegate(ValPtr ret, const ValRecord *v); +gdk_return VARcalcnot(ValPtr ret, const ValRecord *v); +gdk_return VARcalcor(ValPtr ret, const ValRecord *lft, const ValRecord *rgt); +gdk_return VARcalcrsh(ValPtr ret, const ValRecord *lft, const ValRecord *rgt, int abort_on_error); +gdk_return VARcalcsign(ValPtr ret, const ValRecord *v); +gdk_return VARcalcsub(ValPtr ret, const ValRecord *lft, const ValRecord *rgt, int abort_on_error); +gdk_return VARcalcxor(ValPtr ret, const ValRecord *lft, const ValRecord *rgt); +gdk_return VARconvert(ValPtr ret, const ValRecord *v, int abort_on_error); void VIEWbounds(BAT *b, BAT *view, BUN l, BUN h); BAT *VIEWcombine(BAT *b); BAT *VIEWcreate(BAT *h, BAT *t); @@ -923,7 +923,7 @@ blob *BLOBread(blob *a, stream *s, size_ str BLOBsqlblob_fromstr(sqlblob **b, str *d); str BLOBtoblob(blob **retval, str *s); int BLOBtostr(str *tostr, int *l, blob *pin); -int BLOBwrite(blob *a, stream *s, size_t cnt); +gdk_return BLOBwrite(blob *a, stream *s, size_t cnt); str CALCmax(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr p); str CALCmax_no_nil(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr p); str CALCmin(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr p); @@ -2022,7 +2022,7 @@ uuid *UUIDread(uuid *u, stream *s, size_ str UUIDstr2uuid(uuid **retval, str *s); int UUIDtoString(str *retval, int *len, const uuid *value); str UUIDuuid2str(str *retval, uuid **u); -int UUIDwrite(const uuid *u, stream *s, size_t cnt); +gdk_return UUIDwrite(const uuid *u, stream *s, size_t cnt); str XMLattribute(xml *ret, str *name, str *val); str XMLcomment(xml *x, str *s); str XMLconcat(xml *ret, xml *left, xml *right); @@ -2357,23 +2357,23 @@ str listRef; str loadLibrary(str modulename, int flag); char *locate_file(const char *basename, const char *ext, bit recurse); str lockRef; -int log_abort_wrap(logger *L); -int log_bat_clear_wrap(logger *L, str nme); -int log_bat_persists_wrap(logger *L, BAT *b, str nme); -int log_bat_transient_wrap(logger *L, str nme); -int log_bat_wrap(logger *L, BAT *b, str nme); -int log_delta_wrap(logger *L, BAT *uid, BAT *b, str nme); -int log_tend_wrap(logger *L); -int log_tstart_wrap(logger *L); -int logger_add_bat_wrap(int *bid, logger *L, BAT *b, str nme); -int logger_changes_wrap(int *r, logger *L); -int logger_cleanup_wrap(logger *L); +gdk_return log_abort_wrap(logger *L); +gdk_return log_bat_clear_wrap(logger *L, str nme); +gdk_return log_bat_persists_wrap(logger *L, BAT *b, str nme); +gdk_return log_bat_transient_wrap(logger *L, str nme); +gdk_return log_bat_wrap(logger *L, BAT *b, str nme); +gdk_return log_delta_wrap(logger *L, BAT *uid, BAT *b, str nme); +gdk_return log_tend_wrap(logger *L); +gdk_return log_tstart_wrap(logger *L); +gdk_return logger_add_bat_wrap(int *bid, logger *L, BAT *b, str nme); +gdk_return logger_changes_wrap(int *r, logger *L); +gdk_return logger_cleanup_wrap(logger *L); str logger_create_wrap(logger *L, int *debug, str *fn, str *dirname, int *version); -int logger_del_bat_wrap(logger *L, int *bid); +gdk_return logger_del_bat_wrap(logger *L, int *bid); str logger_destroy_wrap(void *ret, logger *L); -int logger_exit_wrap(logger *L); -int logger_find_bat_wrap(int *bid, logger *L, str nme); -int logger_restart_wrap(logger *L); +gdk_return logger_exit_wrap(logger *L); +gdk_return logger_find_bat_wrap(int *bid, logger *L, str nme); +gdk_return logger_restart_wrap(logger *L); str lookupRef; str mal2str(MalBlkPtr mb, int first, int last); malType malAnyBatType(malType t1, malType t2); diff --git a/gdk/gdk.h b/gdk/gdk.h --- a/gdk/gdk.h +++ b/gdk/gdk.h @@ -1169,7 +1169,7 @@ gdk_export bte ATOMelmshift(int sz); if ((b)->HT->width < SIZEOF_VAR_T && \ ((b)->HT->width <= 2 ? _d - GDK_VAROFFSET : _d) >= ((size_t) 1 << (8 * (b)->HT->width))) { \ /* doesn't fit in current heap, upgrade it */ \ - if (GDKupgradevarheap((b)->HT, _d, (copyall), (b)->batRestricted == BAT_READ) == GDK_FAIL) \ + if (GDKupgradevarheap((b)->HT, _d, (copyall), (b)->batRestricted == BAT_READ) != GDK_SUCCEED) \ goto bunins_failed; \ } \ _ptr = (p); \ @@ -1217,7 +1217,7 @@ gdk_export bte ATOMelmshift(int sz); if ((b)->HT->width < SIZEOF_VAR_T && \ ((b)->HT->width <= 2 ? _d - GDK_VAROFFSET : _d) >= ((size_t) 1 << (8 * (b)->HT->width))) { \ /* doesn't fit in current heap, upgrade it */ \ - if (GDKupgradevarheap((b)->HT, _d, 0, (b)->batRestricted == BAT_READ) == GDK_FAIL) \ + if (GDKupgradevarheap((b)->HT, _d, 0, (b)->batRestricted == BAT_READ) != GDK_SUCCEED) \ goto bunins_failed; \ } \ _ptr = (p); \ @@ -1271,7 +1271,7 @@ gdk_export bte ATOMelmshift(int sz); GDKerror("bunfastins: too many elements to accomodate (" BUNFMT ")\n", BUN_MAX); \ goto bunins_failed; \ } \ - if (BATextend((b), BATgrows(b)) == GDK_FAIL) \ + if (BATextend((b), BATgrows(b)) != GDK_SUCCEED) \ goto bunins_failed; \ } \ bunfastins_nocheck(b, _p, h, t, Hsize(b), Tsize(b)); \ @@ -1298,7 +1298,7 @@ gdk_export bte ATOMelmshift(int sz); GDKerror("bunfastapp: too many elements to accomodate (" BUNFMT ")\n", BUN_MAX); \ goto bunins_failed; \ } \ - if (BATextend((b), BATgrows(b)) == GDK_FAIL) \ + if (BATextend((b), BATgrows(b)) != GDK_SUCCEED) \ goto bunins_failed; \ } \ bunfastapp_nocheck(b, _p, t, Tsize(b)); \ @@ -2012,7 +2012,7 @@ typedef struct { int (*atomFromStr) (const char *src, int *len, ptr *dst); int (*atomToStr) (str *dst, int *len, const void *src); void *(*atomRead) (void *dst, stream *s, size_t cnt); - int (*atomWrite) (const void *src, stream *s, size_t cnt); + gdk_return (*atomWrite) (const void *src, stream *s, size_t cnt); int (*atomCmp) (const void *v1, const void *v2); BUN (*atomHash) (const void *v); /* optional functions */ diff --git a/gdk/gdk_aggr.c b/gdk/gdk_aggr.c --- a/gdk/gdk_aggr.c +++ b/gdk/gdk_aggr.c @@ -607,7 +607,7 @@ BATsum(void *res, int tp, BAT *b, BAT *s dbl avg; BUN cnt; - if (BATcalcavg(b, s, &avg, &cnt) == GDK_FAIL) + if (BATcalcavg(b, s, &avg, &cnt) != GDK_SUCCEED) return GDK_FAIL; if (cnt == 0) { avg = nil_if_empty ? dbl_nil : 0; @@ -880,7 +880,7 @@ doprod(const void *restrict values, oid seen = GDKzalloc(((ngrp + 31) / 32) * sizeof(int)); if (seen == NULL) { GDKerror("%s: cannot allocate enough memory\n", func); - return GDK_FAIL; + return BUN_NONE; } switch (tp2) { @@ -1699,7 +1699,7 @@ BATgroupavg(BAT **bnp, BAT **cntsp, BAT *avg = n > 0 ? a : dbl_nil; \ } while (0) -int +gdk_return BATcalcavg(BAT *b, BAT *s, dbl *avg, BUN *vals) { BUN n = 0, r = 0, i = 0; diff --git a/gdk/gdk_align.c b/gdk/gdk_align.c --- a/gdk/gdk_align.c +++ b/gdk/gdk_align.c @@ -484,7 +484,7 @@ BATmaterializet(BAT *b) gdk_return BATmaterialize(BAT *b) { - if (BATmaterializeh(b) == GDK_FAIL) + if (BATmaterializeh(b) != GDK_SUCCEED) return GDK_FAIL; return BATmaterializet(b); } diff --git a/gdk/gdk_atoms.c b/gdk/gdk_atoms.c --- a/gdk/gdk_atoms.c +++ b/gdk/gdk_atoms.c @@ -436,7 +436,7 @@ voidRead(void *a, stream *s, size_t cnt) return a; } -static int +static gdk_return voidWrite(const void *a, stream *s, size_t cnt) { (void) a; @@ -502,7 +502,7 @@ bitRead(bit *a, stream *s, size_t cnt) return mnstr_errnr(s) ? NULL : a; } -static int +static gdk_return bitWrite(const bit *a, stream *s, size_t cnt) { if (mnstr_write(s, (const char *) a, 1, cnt) == (ssize_t) cnt) @@ -568,7 +568,7 @@ batRead(bat *a, stream *s, size_t cnt) return mnstr_readIntArray(s, (int *) a, cnt) ? a : NULL; } -static int +static gdk_return batWrite(const bat *a, stream *s, size_t cnt) { /* bat==int */ @@ -730,7 +730,7 @@ TYPE##Read(TYPE *a, stream *s, size_t cn mnstr_read##NAME##Array(s, (CAST *) a, cnt); \ return mnstr_errnr(s) ? NULL : a; \ } \ -static int \ +static gdk_return \ TYPE##Write(const TYPE *a, stream *s, size_t cnt) \ { \ return mnstr_write##NAME##Array(s, (const CAST *) a, cnt) ? \ @@ -1559,10 +1559,6 @@ strFromStr(const char *src, int *len, ch /* * Convert a GDK string value to something printable. */ -/* -#define printable_chr(ch) ((ch)==0 || GDKisgraph((ch)) || GDKisspace((ch)) || \ - GDKisspecial((ch)) || GDKisupperl((ch)) || GDKislowerl((ch))) -*/ /* all but control characters (in range 0 to 31) and DEL */ #ifdef ASCII_CHR /* ASCII printable characters */ @@ -1699,7 +1695,7 @@ strRead(str a, stream *s, size_t cnt) return a; } -static int +static gdk_return strWrite(const char *a, stream *s, size_t cnt) { size_t len = strlen(a); @@ -1903,7 +1899,7 @@ atomDesc BATatoms[MAXATOMS] = { (int (*)(const char *, int *, ptr *)) OIDfromStr, /* atomFromStr */ (int (*)(str *, int *, const void *)) OIDtoStr, /* atomToStr */ (void *(*)(void *, stream *, size_t)) voidRead, /* atomRead */ - (int (*)(const void *, stream *, size_t)) voidWrite, /* atomWrite */ + (gdk_return (*)(const void *, stream *, size_t)) voidWrite, /* atomWrite */ #if SIZEOF_OID == SIZEOF_INT (int (*)(const void *, const void *)) intCmp, /* atomCmp */ (BUN (*)(const void *)) intHash, /* atomHash */ @@ -1927,7 +1923,7 @@ atomDesc BATatoms[MAXATOMS] = { (int (*)(const char *, int *, ptr *)) bitFromStr, /* atomFromStr */ (int (*)(str *, int *, const void *)) bitToStr, /* atomToStr */ (void *(*)(void *, stream *, size_t)) bitRead, /* atomRead */ - (int (*)(const void *, stream *, size_t)) bitWrite, /* atomWrite */ + (gdk_return (*)(const void *, stream *, size_t)) bitWrite, /* atomWrite */ (int (*)(const void *, const void *)) bteCmp, /* atomCmp */ (BUN (*)(const void *)) bteHash, /* atomHash */ 0, /* atomFix */ @@ -1946,7 +1942,7 @@ atomDesc BATatoms[MAXATOMS] = { _______________________________________________ checkin-list mailing list checkin-list@monetdb.org https://www.monetdb.org/mailman/listinfo/checkin-list