Changeset: aaed6a7a00ff for MonetDB URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=aaed6a7a00ff 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/gdk.h gdk/gdk_private.h monetdb5/ChangeLog.Oct2014 monetdb5/modules/kernel/algebra.c monetdb5/modules/kernel/algebra.h monetdb5/modules/kernel/algebra.mal monetdb5/optimizer/opt_prelude.c monetdb5/optimizer/opt_prelude.h Branch: transaction-replication Log Message:
Merge with default branch diffs (truncated from 359 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 @@ -2421,10 +2421,6 @@ command algebra.like(b:bat[:oid,:str],su address ALGlike; comment Selects all elements that have 'substr' as in the tail. -command algebra.materialize(b:bat[:oid,:any_1]):bat[:oid,:any_1] -address ALGmaterialize; -comment Materialize the void column - command algebra.mark_grp(b:bat[:any_1,:oid],g:bat[:oid,:any_2],s:oid):bat[:any_1,:oid] address ALGmark_grp_2; comment "grouped mark": Produces a new BAT with per group a locally unique dense ascending sequense of OIDs in the tail. The tail of the first BAT (b) identifies the group that each BUN of b belongs to. The second BAT (g) represents the group extent, i.e., the head is the unique list of group IDs from b's tail. The third argument (s) gives the base value for the new OID sequence of each group. @@ -2515,6 +2511,7 @@ command algebra.subbandjoin(l:bat[:oid,: address ALGsubbandjoin; comment Band join: values in l and r match if r - c1 <[=] l <[=] r + c2 +function algebra.subantijoin(l:bat[:oid,:any_1],r:bat[:oid,:any_1],sl:bat[:oid,:oid],sr:bat[:oid,:oid],nil_matches:bit,estimate:lng) (X_7:bat[:oid,:oid],X_8:bat[:oid,:oid]); command algebra.subthetajoin(l:bat[:oid,:any_1],r:bat[:oid,:any_1],sl:bat[:oid,:oid],sr:bat[:oid,:oid],op:int,nil_matches:bit,estimate:lng) (X_8:bat[:oid,:oid],X_9:bat[:oid,:oid]) address ALGsubthetajoin; comment Theta join with candidate lists 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 @@ -2938,10 +2938,6 @@ command algebra.like(b:bat[:oid,:str],su address ALGlike; comment Selects all elements that have 'substr' as in the tail. -command algebra.materialize(b:bat[:oid,:any_1]):bat[:oid,:any_1] -address ALGmaterialize; -comment Materialize the void column - command algebra.mark_grp(b:bat[:any_1,:oid],g:bat[:oid,:any_2],s:oid):bat[:any_1,:oid] address ALGmark_grp_2; comment "grouped mark": Produces a new BAT with per group a locally unique dense ascending sequense of OIDs in the tail. The tail of the first BAT (b) identifies the group that each BUN of b belongs to. The second BAT (g) represents the group extent, i.e., the head is the unique list of group IDs from b's tail. The third argument (s) gives the base value for the new OID sequence of each group. @@ -3032,6 +3028,7 @@ command algebra.subbandjoin(l:bat[:oid,: address ALGsubbandjoin; comment Band join: values in l and r match if r - c1 <[=] l <[=] r + c2 +function algebra.subantijoin(l:bat[:oid,:any_1],r:bat[:oid,:any_1],sl:bat[:oid,:oid],sr:bat[:oid,:oid],nil_matches:bit,estimate:lng) (X_7:bat[:oid,:oid],X_8:bat[:oid,:oid]); command algebra.subthetajoin(l:bat[:oid,:any_1],r:bat[:oid,:any_1],sl:bat[:oid,:oid],sr:bat[:oid,:oid],op:int,nil_matches:bit,estimate:lng) (X_8:bat[:oid,:oid],X_9:bat[:oid,:oid]) address ALGsubthetajoin; comment Theta join with candidate lists 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 @@ -2422,10 +2422,6 @@ command algebra.like(b:bat[:oid,:str],su address ALGlike; comment Selects all elements that have 'substr' as in the tail. -command algebra.materialize(b:bat[:oid,:any_1]):bat[:oid,:any_1] -address ALGmaterialize; -comment Materialize the void column - command algebra.mark_grp(b:bat[:any_1,:oid],g:bat[:oid,:any_2],s:oid):bat[:any_1,:oid] address ALGmark_grp_2; comment "grouped mark": Produces a new BAT with per group a locally unique dense ascending sequense of OIDs in the tail. The tail of the first BAT (b) identifies the group that each BUN of b belongs to. The second BAT (g) represents the group extent, i.e., the head is the unique list of group IDs from b's tail. The third argument (s) gives the base value for the new OID sequence of each group. @@ -2516,6 +2512,7 @@ command algebra.subbandjoin(l:bat[:oid,: address ALGsubbandjoin; comment Band join: values in l and r match if r - c1 <[=] l <[=] r + c2 +function algebra.subantijoin(l:bat[:oid,:any_1],r:bat[:oid,:any_1],sl:bat[:oid,:oid],sr:bat[:oid,:oid],nil_matches:bit,estimate:lng) (X_7:bat[:oid,:oid],X_8:bat[:oid,:oid]); command algebra.subthetajoin(l:bat[:oid,:any_1],r:bat[:oid,:any_1],sl:bat[:oid,:oid],sr:bat[:oid,:oid],op:int,nil_matches:bit,estimate:lng) (X_8:bat[:oid,:oid],X_9:bat[:oid,:oid]) address ALGsubthetajoin; comment Theta join with candidate lists 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 @@ -2938,10 +2938,6 @@ command algebra.like(b:bat[:oid,:str],su address ALGlike; comment Selects all elements that have 'substr' as in the tail. -command algebra.materialize(b:bat[:oid,:any_1]):bat[:oid,:any_1] -address ALGmaterialize; -comment Materialize the void column - command algebra.mark_grp(b:bat[:any_1,:oid],g:bat[:oid,:any_2],s:oid):bat[:any_1,:oid] address ALGmark_grp_2; comment "grouped mark": Produces a new BAT with per group a locally unique dense ascending sequense of OIDs in the tail. The tail of the first BAT (b) identifies the group that each BUN of b belongs to. The second BAT (g) represents the group extent, i.e., the head is the unique list of group IDs from b's tail. The third argument (s) gives the base value for the new OID sequence of each group. @@ -3032,6 +3028,7 @@ command algebra.subbandjoin(l:bat[:oid,: address ALGsubbandjoin; comment Band join: values in l and r match if r - c1 <[=] l <[=] r + c2 +function algebra.subantijoin(l:bat[:oid,:any_1],r:bat[:oid,:any_1],sl:bat[:oid,:oid],sr:bat[:oid,:oid],nil_matches:bit,estimate:lng) (X_7:bat[:oid,:oid],X_8:bat[:oid,:oid]); command algebra.subthetajoin(l:bat[:oid,:any_1],r:bat[:oid,:any_1],sl:bat[:oid,:oid],sr:bat[:oid,:oid],op:int,nil_matches:bit,estimate:lng) (X_8:bat[:oid,:oid],X_9:bat[:oid,:oid]) address ALGsubthetajoin; comment Theta join with candidate lists 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 @@ -2422,10 +2422,6 @@ command algebra.like(b:bat[:oid,:str],su address ALGlike; comment Selects all elements that have 'substr' as in the tail. -command algebra.materialize(b:bat[:oid,:any_1]):bat[:oid,:any_1] -address ALGmaterialize; -comment Materialize the void column - command algebra.mark_grp(b:bat[:any_1,:oid],g:bat[:oid,:any_2],s:oid):bat[:any_1,:oid] address ALGmark_grp_2; comment "grouped mark": Produces a new BAT with per group a locally unique dense ascending sequense of OIDs in the tail. The tail of the first BAT (b) identifies the group that each BUN of b belongs to. The second BAT (g) represents the group extent, i.e., the head is the unique list of group IDs from b's tail. The third argument (s) gives the base value for the new OID sequence of each group. @@ -2516,6 +2512,7 @@ command algebra.subbandjoin(l:bat[:oid,: address ALGsubbandjoin; comment Band join: values in l and r match if r - c1 <[=] l <[=] r + c2 +function algebra.subantijoin(l:bat[:oid,:any_1],r:bat[:oid,:any_1],sl:bat[:oid,:oid],sr:bat[:oid,:oid],nil_matches:bit,estimate:lng) (X_7:bat[:oid,:oid],X_8:bat[:oid,:oid]); command algebra.subthetajoin(l:bat[:oid,:any_1],r:bat[:oid,:any_1],sl:bat[:oid,:oid],sr:bat[:oid,:oid],op:int,nil_matches:bit,estimate:lng) (X_8:bat[:oid,:oid],X_9:bat[:oid,:oid]) address ALGsubthetajoin; comment Theta join with candidate lists 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 @@ -2938,10 +2938,6 @@ command algebra.like(b:bat[:oid,:str],su address ALGlike; comment Selects all elements that have 'substr' as in the tail. -command algebra.materialize(b:bat[:oid,:any_1]):bat[:oid,:any_1] -address ALGmaterialize; -comment Materialize the void column - command algebra.mark_grp(b:bat[:any_1,:oid],g:bat[:oid,:any_2],s:oid):bat[:any_1,:oid] address ALGmark_grp_2; comment "grouped mark": Produces a new BAT with per group a locally unique dense ascending sequense of OIDs in the tail. The tail of the first BAT (b) identifies the group that each BUN of b belongs to. The second BAT (g) represents the group extent, i.e., the head is the unique list of group IDs from b's tail. The third argument (s) gives the base value for the new OID sequence of each group. @@ -3032,6 +3028,7 @@ command algebra.subbandjoin(l:bat[:oid,: address ALGsubbandjoin; comment Band join: values in l and r match if r - c1 <[=] l <[=] r + c2 +function algebra.subantijoin(l:bat[:oid,:any_1],r:bat[:oid,:any_1],sl:bat[:oid,:oid],sr:bat[:oid,:oid],nil_matches:bit,estimate:lng) (X_7:bat[:oid,:oid],X_8:bat[:oid,:oid]); command algebra.subthetajoin(l:bat[:oid,:any_1],r:bat[:oid,:any_1],sl:bat[:oid,:oid],sr:bat[:oid,:oid],op:int,nil_matches:bit,estimate:lng) (X_8:bat[:oid,:oid],X_9:bat[:oid,:oid]) address ALGsubthetajoin; comment Theta join with candidate lists 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 @@ -2421,10 +2421,6 @@ command algebra.like(b:bat[:oid,:str],su address ALGlike; comment Selects all elements that have 'substr' as in the tail. -command algebra.materialize(b:bat[:oid,:any_1]):bat[:oid,:any_1] -address ALGmaterialize; -comment Materialize the void column - command algebra.mark_grp(b:bat[:any_1,:oid],g:bat[:oid,:any_2],s:oid):bat[:any_1,:oid] address ALGmark_grp_2; comment "grouped mark": Produces a new BAT with per group a locally unique dense ascending sequense of OIDs in the tail. The tail of the first BAT (b) identifies the group that each BUN of b belongs to. The second BAT (g) represents the group extent, i.e., the head is the unique list of group IDs from b's tail. The third argument (s) gives the base value for the new OID sequence of each group. @@ -2515,6 +2511,7 @@ command algebra.subbandjoin(l:bat[:oid,: address ALGsubbandjoin; comment Band join: values in l and r match if r - c1 <[=] l <[=] r + c2 +function algebra.subantijoin(l:bat[:oid,:any_1],r:bat[:oid,:any_1],sl:bat[:oid,:oid],sr:bat[:oid,:oid],nil_matches:bit,estimate:lng) (X_7:bat[:oid,:oid],X_8:bat[:oid,:oid]); command algebra.subthetajoin(l:bat[:oid,:any_1],r:bat[:oid,:any_1],sl:bat[:oid,:oid],sr:bat[:oid,:oid],op:int,nil_matches:bit,estimate:lng) (X_8:bat[:oid,:oid],X_9:bat[:oid,:oid]) address ALGsubthetajoin; comment Theta join with candidate lists 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 @@ -2936,10 +2936,6 @@ command algebra.like(b:bat[:oid,:str],su address ALGlike; comment Selects all elements that have 'substr' as in the tail. -command algebra.materialize(b:bat[:oid,:any_1]):bat[:oid,:any_1] -address ALGmaterialize; -comment Materialize the void column - command algebra.mark_grp(b:bat[:any_1,:oid],g:bat[:oid,:any_2],s:oid):bat[:any_1,:oid] address ALGmark_grp_2; comment "grouped mark": Produces a new BAT with per group a locally unique dense ascending sequense of OIDs in the tail. The tail of the first BAT (b) identifies the group that each BUN of b belongs to. The second BAT (g) represents the group extent, i.e., the head is the unique list of group IDs from b's tail. The third argument (s) gives the base value for the new OID sequence of each group. @@ -3030,6 +3026,7 @@ command algebra.subbandjoin(l:bat[:oid,: address ALGsubbandjoin; comment Band join: values in l and r match if r - c1 <[=] l <[=] r + c2 +function algebra.subantijoin(l:bat[:oid,:any_1],r:bat[:oid,:any_1],sl:bat[:oid,:oid],sr:bat[:oid,:oid],nil_matches:bit,estimate:lng) (X_7:bat[:oid,:oid],X_8:bat[:oid,:oid]); command algebra.subthetajoin(l:bat[:oid,:any_1],r:bat[:oid,:any_1],sl:bat[:oid,:oid],sr:bat[:oid,:oid],op:int,nil_matches:bit,estimate:lng) (X_8:bat[:oid,:oid],X_9:bat[:oid,:oid]) address ALGsubthetajoin; comment Theta join with candidate lists 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 @@ -147,8 +147,6 @@ BAT *BATleftfetchjoin(BAT *b, BAT *s, BU BAT *BATleftjoin(BAT *l, BAT *r, BUN estimate); BAT *BATmark(BAT *b, oid base); BAT *BATmark_grp(BAT *b, BAT *g, oid *base); -BAT *BATmaterialize(BAT *b); -BAT *BATmaterializeh(BAT *b); void *BATmax(BAT *b, void *aggr); size_t BATmemsize(BAT *b, int dirty); BAT *BATmergecand(BAT *a, BAT *b); @@ -771,7 +769,6 @@ str ALGmarkHead(int *result, int *bid, o str ALGmarkHead_default(int *result, int *bid); str ALGmark_grp_1(int *result, int *bid, int *gid); str ALGmark_grp_2(int *result, int *bid, int *gid, oid *base); -str ALGmaterialize(int *ret, int *bid); str ALGmaxany(ptr result, int *bid); str ALGminany(ptr result, int *bid); str ALGouterjoin(int *result, int *lid, int *rid); @@ -2469,7 +2466,6 @@ str markHRef; str markTRef; str mark_grpRef; str matRef; -str materializeRef; str maxRef; str max_no_nilRef; int mayhaveSideEffects(Client cntxt, MalBlkPtr mb, InstrPtr p, int strict); diff --git a/gdk/gdk.h b/gdk/gdk.h --- a/gdk/gdk.h +++ b/gdk/gdk.h @@ -2928,8 +2928,6 @@ gdk_export BAT *VIEWcreate_(BAT *h, BAT gdk_export BAT *VIEWhead(BAT *b); gdk_export BAT *VIEWhead_(BAT *b, int mode); gdk_export BAT *VIEWcombine(BAT *b); -gdk_export BAT *BATmaterialize(BAT *b); -gdk_export BAT *BATmaterializeh(BAT *b); gdk_export void VIEWbounds(BAT *b, BAT *view, BUN l, BUN h); /* low level functions */ @@ -3468,16 +3466,6 @@ gdk_export BAT *BATsample(BAT *b, BUN n) BATuselect(_b, (h), (t)); \ }) -#define BATsample(b, n) \ - ({ \ - BAT *_b = (b); \ - HEADLESSDEBUG fprintf(stderr, \ - "#BATsample([%s,%s]#"BUNFMT") %s[%s:%d]\n", \ - _COL_TYPE(_b->H), _COL_TYPE(_b->T), BATcount(_b), \ - __func__, __FILE__, __LINE__); \ - BATsample(_b, (n)); \ - }) - #define BATsemijoin(l, r) \ ({ \ BAT *_l = (l), *_r = (r); \ diff --git a/gdk/gdk_private.h b/gdk/gdk_private.h --- a/gdk/gdk_private.h +++ b/gdk/gdk_private.h @@ -76,6 +76,10 @@ void BATinit_idents(BAT *bn) __attribute__((__visibility__("hidden"))); BAT *BATload_intern(bat bid, int lock) __attribute__((__visibility__("hidden"))); +BAT *BATmaterialize(BAT *b) + __attribute__((__visibility__("hidden"))); +BAT *BATmaterializeh(BAT *b) + __attribute__((__visibility__("hidden"))); BAT *BATmaterializet(BAT *b) __attribute__((__visibility__("hidden"))); str BATrename(BAT *b, const char *nme) diff --git a/monetdb5/ChangeLog.Oct2014 b/monetdb5/ChangeLog.Oct2014 --- a/monetdb5/ChangeLog.Oct2014 +++ b/monetdb5/ChangeLog.Oct2014 @@ -1,6 +1,9 @@ # ChangeLog file for MonetDB5 # This file is updated with Maddlog +* Mon Sep 15 2014 Sjoerd Mullender <sjo...@acm.org> +- Removed algebra.materialize. + * Fri Aug 29 2014 Sjoerd Mullender <sjo...@acm.org> - Removed algebra.kunique and algebra.tunique. They were subsumed by algebra.subunique. diff --git a/monetdb5/modules/kernel/algebra.c b/monetdb5/modules/kernel/algebra.c --- a/monetdb5/modules/kernel/algebra.c +++ b/monetdb5/modules/kernel/algebra.c @@ -2205,23 +2205,6 @@ ALGidentity(int *ret, int *bid) BBPkeepref(*ret = b->batCacheid); return MAL_SUCCEED; } -str -ALGmaterialize(int *ret, int *bid) -{ - BAT *b, *bn; - - if ((b = BATdescriptor(*bid)) == NULL) - throw(MAL, "algebra.materialize", RUNTIME_OBJECT_MISSING); - if( b->htype == TYPE_void){ - bn= BATmaterialize(b); - if( bn == NULL) - throw(MAL, "algebra.materialize", MAL_MALLOC_FAIL); - if (!(bn->batDirty&2)) bn = BATsetaccess(bn, BAT_READ); - BBPkeepref(*ret= bn->batCacheid); - } else - BBPkeepref(*ret = b->batCacheid); - return MAL_SUCCEED; -} str ALGreuse(int *ret, int *bid) { diff --git a/monetdb5/modules/kernel/algebra.h b/monetdb5/modules/kernel/algebra.h --- a/monetdb5/modules/kernel/algebra.h +++ b/monetdb5/modules/kernel/algebra.h @@ -149,6 +149,5 @@ algebra_export str ALGprojecthead(Client algebra_export str ALGprojecttail(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci); algebra_export str ALGidentity(int *ret, int *bid); -algebra_export str ALGmaterialize(int *ret, int *bid); algebra_export str ALGreuse(int *ret, int *bid); #endif diff --git a/monetdb5/modules/kernel/algebra.mal b/monetdb5/modules/kernel/algebra.mal --- a/monetdb5/modules/kernel/algebra.mal +++ b/monetdb5/modules/kernel/algebra.mal _______________________________________________ checkin-list mailing list checkin-list@monetdb.org https://www.monetdb.org/mailman/listinfo/checkin-list