Changeset: f44554ce8969 for MonetDB URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=f44554ce8969 Modified Files: clients/Tests/MAL-signatures_all.stable.out clients/Tests/MAL-signatures_all.stable.out.int128 clients/Tests/MAL-signatures_fits_geom.stable.out clients/Tests/MAL-signatures_fits_geom.stable.out.int128 clients/Tests/MAL-signatures_geom.stable.out clients/Tests/MAL-signatures_geom.stable.out.int128 clients/Tests/MAL-signatures_none.stable.out clients/Tests/MAL-signatures_none.stable.out.int128 clients/Tests/exports.stable.out gdk/ChangeLog gdk/gdk.h gdk/gdk_align.c gdk/gdk_bat.c gdk/gdk_batop.c gdk/gdk_bbp.c gdk/gdk_calc.c gdk/gdk_calc_compare.h gdk/gdk_delta.c gdk/gdk_group.c gdk/gdk_heap.c gdk/gdk_imprints.c gdk/gdk_join.c gdk/gdk_logger.c gdk/gdk_private.h gdk/gdk_search.c gdk/gdk_search.h gdk/gdk_select.c gdk/gdk_setop.c gdk/gdk_storage.c gdk/gdk_utils.c monetdb5/extras/rdf/rdf_shredder.c monetdb5/extras/rdf/rdfalgebra.c monetdb5/mal/mal_profiler.c monetdb5/modules/atoms/batxml.c monetdb5/modules/atoms/mtime.c monetdb5/modules/kernel/algebra.c monetdb5/modules/kernel/bat5.c monetdb5/modules/kernel/bat5.mal monetdb5/modules/kernel/batcolor.c monetdb5/modules/kernel/batmmath.c monetdb5/modules/kernel/batstr.c monetdb5/modules/kernel/microbenchmark.c monetdb5/modules/kernel/status.c monetdb5/modules/mal/bbp.c monetdb5/modules/mal/clients.c monetdb5/modules/mal/cluster.c monetdb5/modules/mal/inspect.c monetdb5/modules/mal/joinpath.c monetdb5/modules/mal/mal_io.c monetdb5/modules/mal/mal_mapi.c monetdb5/modules/mal/mat.c monetdb5/modules/mal/mdb.c monetdb5/modules/mal/pcre.c monetdb5/modules/mal/querylog.c monetdb5/modules/mal/tablet.c monetdb5/modules/mal/tokenizer.c monetdb5/modules/mal/zorder.c sql/backends/monet5/datacell/basket.c sql/backends/monet5/datacell/dcoperator.c sql/backends/monet5/generator/generator.c sql/backends/monet5/sql.c sql/backends/monet5/sql_cast_impl_down_from_int.h sql/backends/monet5/sql_cast_impl_up_to_flt.h sql/backends/monet5/sql_cast_impl_up_to_int.h sql/backends/monet5/sql_result.c sql/storage/bat/bat_logger.c Branch: default Log Message:
Cleaned up a lot of GDK-level function interfaces. Return GDK_SUCCEED or GDK_FAIL to indicate success/failure, not the argument BAT pointer or NULL. diffs (truncated from 4798 to 300 lines): diff --git a/clients/Tests/MAL-signatures_all.stable.out b/clients/Tests/MAL-signatures_all.stable.out --- a/clients/Tests/MAL-signatures_all.stable.out +++ b/clients/Tests/MAL-signatures_all.stable.out @@ -31418,7 +31418,7 @@ comment Shrink the BAT based on a list o command bat.setImprints(b:bat[:oid,:any_1]):bit address BKCsetImprints; -comment Create n imprints structure on the column +comment Create an imprints structure on the column command bat.setHash(b:bat[:oid,:any_1]):bit address BKCsetHash; diff --git a/clients/Tests/MAL-signatures_all.stable.out.int128 b/clients/Tests/MAL-signatures_all.stable.out.int128 --- a/clients/Tests/MAL-signatures_all.stable.out.int128 +++ b/clients/Tests/MAL-signatures_all.stable.out.int128 @@ -40463,7 +40463,7 @@ comment Shrink the BAT based on a list o command bat.setImprints(b:bat[:oid,:any_1]):bit address BKCsetImprints; -comment Create n imprints structure on the column +comment Create an imprints structure on the column command bat.setHash(b:bat[:oid,:any_1]):bit address BKCsetHash; diff --git a/clients/Tests/MAL-signatures_fits_geom.stable.out b/clients/Tests/MAL-signatures_fits_geom.stable.out --- a/clients/Tests/MAL-signatures_fits_geom.stable.out +++ b/clients/Tests/MAL-signatures_fits_geom.stable.out @@ -31339,7 +31339,7 @@ comment Shrink the BAT based on a list o command bat.setImprints(b:bat[:oid,:any_1]):bit address BKCsetImprints; -comment Create n imprints structure on the column +comment Create an imprints structure on the column command bat.setHash(b:bat[:oid,:any_1]):bit address BKCsetHash; diff --git a/clients/Tests/MAL-signatures_fits_geom.stable.out.int128 b/clients/Tests/MAL-signatures_fits_geom.stable.out.int128 --- a/clients/Tests/MAL-signatures_fits_geom.stable.out.int128 +++ b/clients/Tests/MAL-signatures_fits_geom.stable.out.int128 @@ -40389,7 +40389,7 @@ comment Shrink the BAT based on a list o command bat.setImprints(b:bat[:oid,:any_1]):bit address BKCsetImprints; -comment Create n imprints structure on the column +comment Create an imprints structure on the column command bat.setHash(b:bat[:oid,:any_1]):bit address BKCsetHash; diff --git a/clients/Tests/MAL-signatures_geom.stable.out b/clients/Tests/MAL-signatures_geom.stable.out --- a/clients/Tests/MAL-signatures_geom.stable.out +++ b/clients/Tests/MAL-signatures_geom.stable.out @@ -31339,7 +31339,7 @@ comment Shrink the BAT based on a list o command bat.setImprints(b:bat[:oid,:any_1]):bit address BKCsetImprints; -comment Create n imprints structure on the column +comment Create an imprints structure on the column command bat.setHash(b:bat[:oid,:any_1]):bit address BKCsetHash; diff --git a/clients/Tests/MAL-signatures_geom.stable.out.int128 b/clients/Tests/MAL-signatures_geom.stable.out.int128 --- a/clients/Tests/MAL-signatures_geom.stable.out.int128 +++ b/clients/Tests/MAL-signatures_geom.stable.out.int128 @@ -40389,7 +40389,7 @@ comment Shrink the BAT based on a list o command bat.setImprints(b:bat[:oid,:any_1]):bit address BKCsetImprints; -comment Create n imprints structure on the column +comment Create an imprints structure on the column command bat.setHash(b:bat[:oid,:any_1]):bit address BKCsetHash; diff --git a/clients/Tests/MAL-signatures_none.stable.out b/clients/Tests/MAL-signatures_none.stable.out --- a/clients/Tests/MAL-signatures_none.stable.out +++ b/clients/Tests/MAL-signatures_none.stable.out @@ -31334,7 +31334,7 @@ comment Shrink the BAT based on a list o command bat.setImprints(b:bat[:oid,:any_1]):bit address BKCsetImprints; -comment Create n imprints structure on the column +comment Create an imprints structure on the column command bat.setHash(b:bat[:oid,:any_1]):bit address BKCsetHash; diff --git a/clients/Tests/MAL-signatures_none.stable.out.int128 b/clients/Tests/MAL-signatures_none.stable.out.int128 --- a/clients/Tests/MAL-signatures_none.stable.out.int128 +++ b/clients/Tests/MAL-signatures_none.stable.out.int128 @@ -40383,7 +40383,7 @@ comment Shrink the BAT based on a list o command bat.setImprints(b:bat[:oid,:any_1]):bit address BKCsetImprints; -comment Create n imprints structure on the column +comment Create an imprints structure on the column command bat.setHash(b:bat[:oid,:any_1]):bit address BKCsetHash; 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 @@ ptr ATOMnil(int id); int ATOMprint(int id, const void *val, stream *fd); BAT *BATalpha(BAT *b); BAT *BATantijoin(BAT *l, BAT *r); -BAT *BATappend(BAT *b, BAT *c, bit force); +gdk_return BATappend(BAT *b, BAT *c, bit force); void BATassertProps(BAT *b); atomDesc BATatoms[]; BAT *BATattach(int tt, const char *heapfile, int role); @@ -102,22 +102,20 @@ dbl BATcalcvariance_population(dbl *avgp dbl BATcalcvariance_sample(dbl *avgp, BAT *b); BAT *BATcalcxor(BAT *b1, BAT *b2, BAT *s); BAT *BATcalcxorcst(BAT *b, const ValRecord *v, BAT *s); -BAT *BATclear(BAT *b, int force); -BAT *BATcommit(BAT *b); +gdk_return BATclear(BAT *b, int force); +void BATcommit(BAT *b); BAT *BATconst(BAT *l, int tt, const void *val, int role); BAT *BATconstant(int tt, const void *val, BUN cnt, int role); BAT *BATconvert(BAT *b, BAT *s, int tp, int abort_on_error); BAT *BATcopy(BAT *b, int ht, int tt, int writeable, int role); BUN BATcount_no_nil(BAT *b); gdk_return BATcross1(BAT **r1p, BAT **r2p, BAT *l, BAT *r); -BAT *BATdel(BAT *b, BAT *c, bit force); -BAT *BATdelHead(BAT *b, BAT *c, bit force); -int BATdelete(BAT *b); +gdk_return BATdel(BAT *b, BAT *c, bit force); BAT *BATdelta(BAT *b); void BATderiveHeadProps(BAT *b, int expensive); void BATderiveProps(BAT *b, int expensive); -BAT *BATextend(BAT *b, BUN newcap); -BAT *BATfakeCommit(BAT *b); +gdk_return BATextend(BAT *b, BUN newcap); +void BATfakeCommit(BAT *b); gdk_return BATfirstn(BAT **topn, BAT **gids, BAT *b, BAT *cands, BAT *grps, BUN n, int asc, int distinct); int BATgetaccess(BAT *b); PROPrec *BATgetprop(BAT *b, int idx); @@ -137,13 +135,13 @@ BAT *BATgroupsum(BAT *b, BAT *g, BAT *e, BAT *BATgroupvariance_population(BAT *b, BAT *g, BAT *e, BAT *s, int tp, int skip_nils, int abort_on_error); BAT *BATgroupvariance_sample(BAT *b, BAT *g, BAT *e, BAT *s, int tp, int skip_nils, int abort_on_error); BUN BATgrows(BAT *b); -BAT *BAThash(BAT *b, BUN masksize); -BAT *BATimprints(BAT *b); -BAT *BATins(BAT *b, BAT *c, bit force); +gdk_return BAThash(BAT *b, BUN masksize); +gdk_return BATimprints(BAT *b); +gdk_return BATins(BAT *b, BAT *c, bit force); BAT *BATintersectcand(BAT *a, BAT *b); BAT *BATjoin(BAT *l, BAT *r, BUN estimate); BAT *BATkdiff(BAT *b, BAT *c); -BAT *BATkey(BAT *b, int onoff); +gdk_return BATkey(BAT *b, int onoff); BAT *BATkintersect(BAT *b, BAT *c); BAT *BATkunion(BAT *b, BAT *c); BAT *BATleftfetchjoin(BAT *b, BAT *s, BUN estimate); @@ -154,13 +152,13 @@ void *BATmax(BAT *b, void *aggr); size_t BATmemsize(BAT *b, int dirty); BAT *BATmergecand(BAT *a, BAT *b); void *BATmin(BAT *b, void *aggr); -int BATmmap(BAT *b, int hb, int tb, int hh, int th, int force); -BAT *BATmode(BAT *b, int onoff); +void BATmmap(BAT *b, int hb, int tb, int hh, int th, int force); +gdk_return BATmode(BAT *b, int onoff); gdk_return BATmultiprintf(stream *f, int argc, BAT *argv[], int printoid, int order, int printorderby); int BATname(BAT *b, const char *nme); BAT *BATnew(int hdtype, int tltype, BUN capacity, int role) __attribute__((warn_unused_result)); -BAT *BATorder(BAT *b); -BAT *BATorder_rev(BAT *b); +gdk_return BATorder(BAT *b); +gdk_return BATorder_rev(BAT *b); int BATordered(BAT *b); int BATordered_rev(BAT *b); BAT *BATouterjoin(BAT *l, BAT *r, BUN estimate); @@ -171,16 +169,16 @@ gdk_return BATprintf(stream *f, BAT *b); gdk_return BATprod(void *res, int tp, BAT *b, BAT *s, int skip_nils, int abort_on_error, int nil_if_empty); BAT *BATproject(BAT *l, BAT *r); BAT *BATrangejoin(BAT *l, BAT *rl, BAT *rh, bit li, bit hi); -BAT *BATreplace(BAT *b, BAT *n, bit force); -BAT *BATrevert(BAT *b); -BAT *BATroles(BAT *b, const char *hnme, const char *tnme); +gdk_return BATreplace(BAT *b, BAT *n, bit force); +gdk_return BATrevert(BAT *b); +void BATroles(BAT *b, const char *hnme, const char *tnme); BAT *BATsample(BAT *b, BUN n); -BAT *BATsave(BAT *b); +gdk_return BATsave(BAT *b); BAT *BATselect(BAT *b, const void *tl, const void *th); BAT *BATselect_(BAT *b, const void *tl, const void *th, bit li, bit hi); BAT *BATsemijoin(BAT *l, BAT *r); -BAT *BATseqbase(BAT *b, oid o); -BAT *BATsetaccess(BAT *b, int mode); +void BATseqbase(BAT *b, oid o); +gdk_return BATsetaccess(BAT *b, int mode); void BATsetcapacity(BAT *b, BUN cnt); void BATsetcount(BAT *b, BUN cnt); void BATsetprop(BAT *b, int idx, int type, void *v); @@ -204,7 +202,7 @@ BAT *BATsubunique(BAT *b, BAT *s); gdk_return BATsum(void *res, int tp, BAT *b, BAT *s, int skip_nils, int abort_on_error, int nil_if_empty); BAT *BATthetajoin(BAT *l, BAT *r, int mode, BUN estimate); BAT *BATthetasubselect(BAT *b, BAT *s, const void *val, const char *op); -BAT *BATundo(BAT *b); +void BATundo(BAT *b); BAT *BATuselect(BAT *b, const void *tl, const void *th); BAT *BATuselect_(BAT *b, const void *tl, const void *th, bit li, bit hi); BBPrec *BBP[N_BBPINIT]; @@ -232,20 +230,20 @@ int BBPsave(BAT *b); void BBPshare(bat b); int BBPsync(int cnt, bat *subcommit); void BBPunlock(const char *s); -BAT *BUNappend(BAT *b, const void *right, bit force); -BAT *BUNdel(BAT *b, const void *left, const void *right, bit force); -BAT *BUNdelHead(BAT *b, const void *left, bit force); +gdk_return BUNappend(BAT *b, const void *right, bit force); +gdk_return BUNdel(BAT *b, const void *left, const void *right, bit force); +gdk_return BUNdelHead(BAT *b, const void *left, bit force); BUN BUNdelete(BAT *b, BUN p, bit force); -BAT *BUNfastins(BAT *b, const void *left, const void *right); +gdk_return BUNfastins(BAT *b, const void *left, const void *right); BUN BUNfnd(BAT *b, const void *right); -BAT *BUNinplace(BAT *b, BUN p, const void *left, const void *right, bit force); -BAT *BUNins(BAT *b, const void *left, const void *right, bit force); -BAT *BUNreplace(BAT *b, const void *left, const void *right, bit force); +gdk_return BUNinplace(BAT *b, BUN p, const void *left, const void *right, bit force); +gdk_return BUNins(BAT *b, const void *left, const void *right, bit force); +gdk_return BUNreplace(BAT *b, const void *left, const void *right, bit force); size_t GDK_mem_maxsize; size_t GDK_vm_maxsize; int GDK_vm_trim; int GDKatomcnt; -int GDKcreatedir(const char *nme); +gdk_return GDKcreatedir(const char *nme); int GDKdebug; int GDKerror(_In_z_ _Printf_format_string_ const char *format, ...) __attribute__((__format__(__printf__, 1, 2))); void GDKexit(int status) __attribute__((__noreturn__)); @@ -279,7 +277,7 @@ str GDKstrdup(const char *s) __attribute str GDKstrndup(const char *s, size_t n) __attribute__((__warn_unused_result__)); int GDKsyserror(_In_z_ _Printf_format_string_ const char *format, ...) __attribute__((__format__(__printf__, 1, 2))); ThreadRec GDKthreads[THREADS]; -int GDKupgradevarheap(COLrec *c, var_t v, int copyall, int mayshare); +gdk_return GDKupgradevarheap(COLrec *c, var_t v, int copyall, int mayshare); lng GDKusec(void); BAT *GDKval; const char *GDKversion(void); @@ -488,7 +486,7 @@ int strLen(const char *s); int strNil(const char *s); int strToStr(str *dst, int *len, const char *src); const char str_nil[2]; -int void_inplace(BAT *b, oid id, const void *val, bit force); +gdk_return void_inplace(BAT *b, oid id, const void *val, bit force); BUN void_replace_bat(BAT *b, BAT *u, bit force); int win_mkdir(const char *, const int mode); int win_rename(const char *, const char *); diff --git a/gdk/ChangeLog b/gdk/ChangeLog --- a/gdk/ChangeLog +++ b/gdk/ChangeLog @@ -1,6 +1,11 @@ # ChangeLog file for MonetDB # This file is updated with Maddlog +* Mon Feb 2 2015 Sjoerd Mullender <sjo...@acm.org> +- Changed interfaces of a lot of GDK-level functions. When they modify a + BAT, don't return the same BAT or NULL, but instead return GDK_SUCCEED + or GDK_FAIL. + * Tue Oct 28 2014 Sjoerd Mullender <sjo...@acm.org> - Changed a bunch of hash-related functions to work on the tail column. The functions that have been changed to work on the tail column are: diff --git a/gdk/gdk.h b/gdk/gdk.h --- a/gdk/gdk.h +++ b/gdk/gdk.h @@ -1133,7 +1133,7 @@ gdk_export void HEAP_free(Heap *heap, va gdk_export BAT *BATnew(int hdtype, int tltype, BUN capacity, int role) __attribute__((warn_unused_result)); -gdk_export BAT *BATextend(BAT *b, BUN newcap); +gdk_export gdk_return BATextend(BAT *b, BUN newcap); /* internal */ gdk_export bte ATOMelmshift(int sz); @@ -1334,7 +1334,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)) == NULL) \ + if (BATextend((b), BATgrows(b)) == GDK_FAIL) \ goto bunins_failed; \ } \ bunfastins_nocheck(b, _p, h, t, Hsize(b), Tsize(b)); \ @@ -1361,27 +1361,26 @@ 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)) == NULL) \ + if (BATextend((b), BATgrows(b)) == GDK_FAIL) \ goto bunins_failed; \ } \ bunfastapp_nocheck(b, _p, t, Tsize(b)); \ } while (0) -gdk_export int GDKupgradevarheap(COLrec *c, var_t v, int copyall, int mayshare); -gdk_export BAT *BUNfastins(BAT *b, const void *left, const void *right); _______________________________________________ checkin-list mailing list checkin-list@monetdb.org https://www.monetdb.org/mailman/listinfo/checkin-list