Changeset: 321ee5ef3d31 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=321ee5ef3d31
Modified Files:
clients/Tests/MAL-signatures.stable.out
clients/Tests/MAL-signatures.stable.out.int128
clients/Tests/exports.stable.out
clients/mapiclient/tomograph.c
gdk/ChangeLog
gdk/gdk.h
gdk/gdk_aggr.c
gdk/gdk_bat.c
gdk/gdk_bbp.c
gdk/gdk_cross.c
gdk/gdk_imprints.c
gdk/gdk_join.c
gdk/gdk_logger.c
gdk/gdk_private.h
gdk/gdk_search.c
gdk/gdk_select.c
gdk/gdk_unique.c
monetdb5/ChangeLog
monetdb5/mal/Tests/tst1602.mal
monetdb5/mal/Tests/tst1602.stable.out
monetdb5/mal/mal_authorize.c
monetdb5/mal/mal_client.c
monetdb5/modules/kernel/algebra.c
monetdb5/modules/kernel/algebra.h
monetdb5/modules/kernel/algebra.mal
monetdb5/modules/mal/groupby.c
monetdb5/modules/mal/pcre.c
monetdb5/modules/mal/tokenizer.c
monetdb5/optimizer/Tests/mat00.mal
monetdb5/optimizer/Tests/qep00.mal
monetdb5/optimizer/Tests/qep01.mal
monetdb5/optimizer/Tests/qep02.mal
monetdb5/optimizer/opt_costModel.c
monetdb5/optimizer/opt_generator.c
monetdb5/optimizer/opt_prelude.c
monetdb5/optimizer/opt_prelude.h
monetdb5/optimizer/opt_pushselect.c
monetdb5/optimizer/opt_support.c
sql/backends/monet5/sql.c
sql/backends/monet5/sql_statistics.c
sql/server/sql_atom.c
sql/server/sql_parser.y
sql/storage/bat/bat_storage.c
sql/storage/bat/bat_table.c
sql/storage/sql_storage.h
sql/storage/store.c
sql/test/leaks/Tests/check0.stable.out
sql/test/leaks/Tests/check0.stable.out.int128
sql/test/leaks/Tests/check1.stable.out
sql/test/leaks/Tests/check1.stable.out.int128
sql/test/leaks/Tests/check2.stable.out
sql/test/leaks/Tests/check2.stable.out.int128
sql/test/leaks/Tests/check3.stable.out
sql/test/leaks/Tests/check3.stable.out.int128
sql/test/leaks/Tests/check4.stable.out
sql/test/leaks/Tests/check4.stable.out.int128
sql/test/leaks/Tests/check5.stable.out
sql/test/leaks/Tests/check5.stable.out.int128
sql/test/leaks/Tests/drop3.stable.out
sql/test/leaks/Tests/drop3.stable.out.int128
sql/test/leaks/Tests/select1.stable.out
sql/test/leaks/Tests/select1.stable.out.int128
sql/test/leaks/Tests/select2.stable.out
sql/test/leaks/Tests/select2.stable.out.int128
sql/test/leaks/Tests/temp1.stable.out
sql/test/leaks/Tests/temp1.stable.out.int128
sql/test/leaks/Tests/temp2.stable.out
sql/test/leaks/Tests/temp2.stable.out.int128
sql/test/leaks/Tests/temp3.stable.out
sql/test/leaks/Tests/temp3.stable.out.int128
testing/Mtest.py.in
Branch: geo
Log Message:
merge with default
diffs (truncated from 6021 to 300 lines):
diff --git a/clients/Tests/MAL-signatures.stable.out
b/clients/Tests/MAL-signatures.stable.out
--- a/clients/Tests/MAL-signatures.stable.out
+++ b/clients/Tests/MAL-signatures.stable.out
@@ -2254,10 +2254,6 @@ command aggr.variance(b:bat[:oid,:any_2]
address ALGvariance;
comment Gives the variance of all tail values
-command algebra.antijoin(left:bat[:oid,:any_1],right:bat[:oid,:any_1])
(l:bat[:oid,:oid],r:bat[:oid,:oid])
-address ALGantijoin2;
-comment Returns 2 columns with all BUNs, consisting of the head-oids from
'left' and 'right' for which there are BUNs in 'left' and 'right' with
equal tails
-
command algebra.crossproduct(left:bat[:oid,:any_1],right:bat[:oid,:any_2])
(l:bat[:oid,:oid],r:bat[:oid,:oid])
address ALGcrossproduct2;
comment Returns 2 columns with all BUNs, consisting of the head-oids from
'left' and 'right' for which there are BUNs in 'left' and 'right' with
equal tails
@@ -2320,14 +2316,6 @@ command algebra.ilike(s:str,pat:str):bit
address PCREilike2;
command algebra.ilike(s:str,pat:str,esc:str):bit
address PCREilike3;
-command
algebra.join(left:bat[:oid,:any_2],rl:bat[:oid,:any_2],rh:bat[:oid,:any_2],li:bit,hi:bit)
(l:bat[:oid,:oid],r:bat[:oid,:oid])
-address ALGrangejoin2;
-comment Deprecated, see algebra.subrangejoin. Range join
-
-command algebra.join(left:bat[:oid,:any_1],right:bat[:oid,:any_1])
(l:bat[:oid,:oid],r:bat[:oid,:oid])
-address ALGjoin2;
-comment Returns 2 columns with all BUNs, consisting of the head-oids from
'left' and 'right' for which there are BUNs in 'left' and 'right' with
equal tails
-
command
algebra.likesubjoin(l:bat[:oid,:str],r:bat[:oid,:str],sl:bat[:oid,:oid],sr:bat[:oid,:oid],nil_matches:bit,estimate:lng)
(X_7:bat[:oid,:oid],X_8:bat[:oid,:oid])
address LIKEsubjoin1;
command
algebra.likesubjoin(l:bat[:oid,:str],r:bat[:oid,:str],esc:str,sl:bat[:oid,:oid],sr:bat[:oid,:oid],nil_matches:bit,estimate:lng)
(X_8:bat[:oid,:oid],X_9:bat[:oid,:oid])
@@ -2360,7 +2348,7 @@ comment Routine to handle join paths. T
command
algebra.projection(left:bat[:oid,:oid],right:bat[:oid,:any_3]):bat[:oid,:any_3]
address ALGprojection;
-comment Hook directly into the left fetch join implementation.
+comment Project left input onto right input.
pattern algebra.project(b:bat[:oid,:any_1],v:any_3):bat[:oid,:any_3]
address ALGprojecttail;
diff --git a/clients/Tests/MAL-signatures.stable.out.int128
b/clients/Tests/MAL-signatures.stable.out.int128
--- a/clients/Tests/MAL-signatures.stable.out.int128
+++ b/clients/Tests/MAL-signatures.stable.out.int128
@@ -2765,10 +2765,6 @@ command aggr.variance(b:bat[:oid,:any_2]
address ALGvariance;
comment Gives the variance of all tail values
-command algebra.antijoin(left:bat[:oid,:any_1],right:bat[:oid,:any_1])
(l:bat[:oid,:oid],r:bat[:oid,:oid])
-address ALGantijoin2;
-comment Returns 2 columns with all BUNs, consisting of the head-oids from
'left' and 'right' for which there are BUNs in 'left' and 'right' with
equal tails
-
command algebra.crossproduct(left:bat[:oid,:any_1],right:bat[:oid,:any_2])
(l:bat[:oid,:oid],r:bat[:oid,:oid])
address ALGcrossproduct2;
comment Returns 2 columns with all BUNs, consisting of the head-oids from
'left' and 'right' for which there are BUNs in 'left' and 'right' with
equal tails
@@ -2831,14 +2827,6 @@ command algebra.ilike(s:str,pat:str):bit
address PCREilike2;
command algebra.ilike(s:str,pat:str,esc:str):bit
address PCREilike3;
-command
algebra.join(left:bat[:oid,:any_2],rl:bat[:oid,:any_2],rh:bat[:oid,:any_2],li:bit,hi:bit)
(l:bat[:oid,:oid],r:bat[:oid,:oid])
-address ALGrangejoin2;
-comment Deprecated, see algebra.subrangejoin. Range join
-
-command algebra.join(left:bat[:oid,:any_1],right:bat[:oid,:any_1])
(l:bat[:oid,:oid],r:bat[:oid,:oid])
-address ALGjoin2;
-comment Returns 2 columns with all BUNs, consisting of the head-oids from
'left' and 'right' for which there are BUNs in 'left' and 'right' with
equal tails
-
command
algebra.likesubjoin(l:bat[:oid,:str],r:bat[:oid,:str],sl:bat[:oid,:oid],sr:bat[:oid,:oid],nil_matches:bit,estimate:lng)
(X_7:bat[:oid,:oid],X_8:bat[:oid,:oid])
address LIKEsubjoin1;
command
algebra.likesubjoin(l:bat[:oid,:str],r:bat[:oid,:str],esc:str,sl:bat[:oid,:oid],sr:bat[:oid,:oid],nil_matches:bit,estimate:lng)
(X_8:bat[:oid,:oid],X_9:bat[:oid,:oid])
@@ -2871,7 +2859,7 @@ comment Routine to handle join paths. T
command
algebra.projection(left:bat[:oid,:oid],right:bat[:oid,:any_3]):bat[:oid,:any_3]
address ALGprojection;
-comment Hook directly into the left fetch join implementation.
+comment Project left input onto right input.
pattern algebra.project(b:bat[:oid,:any_1],v:any_3):bat[:oid,:any_3]
address ALGprojecttail;
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
@@ -23,6 +23,7 @@ gdk_return BATappend(BAT *b, BAT *c, bit
void BATassertProps(BAT *b);
atomDesc BATatoms[];
BAT *BATattach(int tt, const char *heapfile, int role);
+gdk_return BATbandjoin(BAT **r1p, BAT **r2p, BAT *l, BAT *r, BAT *sl, BAT *sr,
const void *c1, const void *c2, int li, int hi, BUN estimate);
BAT *BATcalcabsolute(BAT *b, BAT *s);
BAT *BATcalcadd(BAT *b1, BAT *b2, BAT *s, int tp, int abort_on_error);
BAT *BATcalcaddcst(BAT *b, const ValRecord *v, BAT *s, int tp, int
abort_on_error);
@@ -107,11 +108,11 @@ BAT *BATconstant(int tt, const void *val
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);
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 *BATdiff(BAT *l, BAT *r, BAT *sl, BAT *sr, int nil_matches, BUN estimate);
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);
@@ -137,7 +138,9 @@ 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);
+gdk_return BATjoin(BAT **r1p, BAT **r2p, BAT *l, BAT *r, BAT *sl, BAT *sr, int
nil_matches, BUN estimate);
gdk_return BATkey(BAT *b, int onoff);
+gdk_return BATleftjoin(BAT **r1p, BAT **r2p, BAT *l, BAT *r, BAT *sl, BAT *sr,
int nil_matches, BUN estimate);
BAT *BATmark(BAT *b, oid base);
BAT *BATmark_grp(BAT *b, BAT *g, const oid *base);
void *BATmax(BAT *b, void *aggr);
@@ -151,38 +154,33 @@ int BATname(BAT *b, const char *nme);
BAT *BATnew(int hdtype, int tltype, BUN capacity, int role)
__attribute__((warn_unused_result));
int BATordered(BAT *b);
int BATordered_rev(BAT *b);
+gdk_return BATouterjoin(BAT **r1p, BAT **r2p, BAT *l, BAT *r, BAT *sl, BAT
*sr, int nil_matches, BUN estimate);
BAT *BATprev(BAT *b);
gdk_return BATprint(BAT *b);
gdk_return BATprintcolumns(stream *s, int argc, BAT *argv[]);
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);
+gdk_return BATrangejoin(BAT **r1p, BAT **r2p, BAT *l, BAT *rl, BAT *rh, BAT
*sl, BAT *sr, int li, int hi, BUN estimate);
gdk_return BATreplace(BAT *b, BAT *p, BAT *n, bit force);
void BATroles(BAT *b, const char *hnme, const char *tnme);
BAT *BATsample(BAT *b, BUN n);
gdk_return BATsave(BAT *b);
+BAT *BATselect(BAT *b, BAT *s, const void *tl, const void *th, int li, int hi,
int anti);
+gdk_return BATsemijoin(BAT **r1p, BAT **r2p, BAT *l, BAT *r, BAT *sl, BAT *sr,
int nil_matches, BUN estimate);
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);
BAT *BATslice(BAT *b, BUN low, BUN high);
-gdk_return BATsubbandjoin(BAT **r1p, BAT **r2p, BAT *l, BAT *r, BAT *sl, BAT
*sr, const void *c1, const void *c2, int li, int hi, BUN estimate);
gdk_return BATsubcross(BAT **r1p, BAT **r2p, BAT *l, BAT *r, BAT *sl, BAT *sr);
-BAT *BATsubdiff(BAT *l, BAT *r, BAT *sl, BAT *sr, int nil_matches, BUN
estimate);
-gdk_return BATsubjoin(BAT **r1p, BAT **r2p, BAT *l, BAT *r, BAT *sl, BAT *sr,
int nil_matches, BUN estimate);
-gdk_return BATsubleftjoin(BAT **r1p, BAT **r2p, BAT *l, BAT *r, BAT *sl, BAT
*sr, int nil_matches, BUN estimate);
-gdk_return BATsubouterjoin(BAT **r1p, BAT **r2p, BAT *l, BAT *r, BAT *sl, BAT
*sr, int nil_matches, BUN estimate);
-gdk_return BATsubprojection(BAT **r1p, BAT **r2p, BAT *l, BAT *r, BAT *sl, BAT
*sr, int nil_matches, BUN estimate);
-gdk_return BATsubrangejoin(BAT **r1p, BAT **r2p, BAT *l, BAT *rl, BAT *rh, BAT
*sl, BAT *sr, int li, int hi, BUN estimate);
-BAT *BATsubselect(BAT *b, BAT *s, const void *tl, const void *th, int li, int
hi, int anti);
-gdk_return BATsubsemijoin(BAT **r1p, BAT **r2p, BAT *l, BAT *r, BAT *sl, BAT
*sr, int nil_matches, BUN estimate);
gdk_return BATsubsort(BAT **sorted, BAT **order, BAT **groups, BAT *b, BAT *o,
BAT *g, int reverse, int stable);
-gdk_return BATsubthetajoin(BAT **r1p, BAT **r2p, BAT *l, BAT *r, BAT *sl, BAT
*sr, int op, int nil_matches, BUN estimate);
-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 *BATthetasubselect(BAT *b, BAT *s, const void *val, const char *op);
+gdk_return BATthetajoin(BAT **r1p, BAT **r2p, BAT *l, BAT *r, BAT *sl, BAT
*sr, int op, int nil_matches, BUN estimate);
+BAT *BATthetaselect(BAT *b, BAT *s, const void *val, const char *op);
void BATundo(BAT *b);
+BAT *BATunique(BAT *b, BAT *s);
BBPrec *BBP[N_BBPINIT];
void BBPaddfarm(const char *dirname, int rolemask);
void BBPclear(bat bid);
@@ -694,7 +692,6 @@ str ALARMsleep(void *res, int *secs);
str ALARMtime(int *res);
str ALARMtimers(bat *res, bat *actions);
str ALARMusec(lng *ret);
-str ALGantijoin2(bat *l, bat *r, const bat *lid, const bat *rid);
str ALGcard(lng *result, const bat *bid);
str ALGcopy(bat *result, const bat *bid);
str ALGcount_bat(wrd *result, const bat *bid);
@@ -706,13 +703,11 @@ str ALGfetchoid(ptr ret, const bat *bid,
str ALGfind(oid *ret, const bat *bid, ptr val);
str ALGfirstn(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci);
str ALGgroupby(bat *res, const bat *gids, const bat *cnts);
-str ALGjoin2(bat *l, bat *r, const bat *lid, const bat *rid);
str ALGjoinPath(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci);
str ALGmaxany(ptr result, const bat *bid);
str ALGminany(ptr result, const bat *bid);
str ALGprojection(bat *result, const bat *lid, const bat *rid);
str ALGprojecttail(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci);
-str ALGrangejoin2(bat *l, bat *r, const bat *lid, const bat *rlid, const bat
*rhid, const bit *li, const bit *hi);
str ALGreuse(bat *ret, const bat *bid);
str ALGsample(bat *result, const bat *bid, const int *param);
str ALGselectNotNil(bat *result, const bat *bid);
@@ -1956,14 +1951,12 @@ str affectedRowsRef;
str aggrRef;
str alarmRef;
str algebraRef;
-str antijoinRef;
str appendRef;
str appendidxRef;
str arrayRef;
str assertRef;
str attachRef;
str avgRef;
-str bandjoinRef;
str basketRef;
void batAfterCall(ValPtr v, ValPtr bak);
void batBeforeCall(ValPtr v, ValPtr bak);
@@ -2224,7 +2217,6 @@ int isUnsafeInstruction(InstrPtr q);
int isUpdateInstruction(InstrPtr p);
str iteratorRef;
str joinPathRef;
-str joinRef;
str jsonRef;
str languageRef;
str levenshtein_impl(int *result, str *s, str *t, int *insdel_cost, int
*replace_cost, int *transpose_cost);
@@ -2543,7 +2535,6 @@ str subuniqueRef;
str sumRef;
str takeOid(oid id, str *val);
str takeRef;
-str thetajoinRef;
str thetasubselectRef;
str tidRef;
str timestampRef;
diff --git a/clients/mapiclient/tomograph.c b/clients/mapiclient/tomograph.c
--- a/clients/mapiclient/tomograph.c
+++ b/clients/mapiclient/tomograph.c
@@ -281,7 +281,6 @@ base_colors[NUM_COLORS] = {
/* 5941 */ { 0, 0, "sql", "bind", 0 },
/* 5664 */ { 0, 0, "mat", "packIncrement", 0 },
/* 4796 */ { 0, 0, "algebra", "subselect", 0 },
-/* 4789 */ { 0, 0, "algebra", "join", 0 },
/* 4789 */ { 0, 0, "algebra", "subjoin", 0 },
/* 2664 */ { 0, 0, "sql", "projectdelta", 0 },
/* 2112 */ { 0, 0, "batcalc", "!=", 0 },
@@ -366,7 +365,6 @@ base_colors[NUM_COLORS] = {
/* 2 */ { 0, 0, "calc", "max", 0 },
/* 2 */ { 0, 0, "calc", "bit", 0 },
/* 2 */ { 0, 0, "calc", "*", 0 },
-/* 2 */ { 0, 0, "algebra", "thetajoin", 0 },
/* 2 */ { 0, 0, "algebra", "subthetajoin", 0 },
/* 1 */ { 0, 0, "sql", "dec_round", 0 },
/* 1 */ { 0, 0, "pqueue", "topn_min", 0 },
diff --git a/gdk/ChangeLog b/gdk/ChangeLog
--- a/gdk/ChangeLog
+++ b/gdk/ChangeLog
@@ -1,6 +1,14 @@
# ChangeLog file for MonetDB
# This file is updated with Maddlog
+* Thu Dec 3 2015 Sjoerd Mullender <[email protected]>
+- Removed "sub" from the names of the function BATsubselect,
+ BATthetasubselect, BATsubcross, BATsubleftjoin, BATsubouterjoin,
+ BATsubthetajoin, BATsubsemijoin, BATsubdiff, BATsubjoin, BATsubbandjoin,
+ BATsubrangejoin, and BATsubunique.
+- Removed BATsubleftfetchjoin: it was not used.
+- Removed BATcross1. Use BATsubcross instead.
+
* Thu Oct 8 2015 Sjoerd Mullender <[email protected]>
- Removed all versions of the SORTloop macro.
diff --git a/gdk/gdk.h b/gdk/gdk.h
--- a/gdk/gdk.h
+++ b/gdk/gdk.h
@@ -3024,28 +3024,26 @@ gdk_export void BATsetprop(BAT *b, int i
#define JOIN_BAND 3
#define JOIN_NE (-3)
-gdk_export BAT *BATsubselect(BAT *b, BAT *s, const void *tl, const void *th,
int li, int hi, int anti);
-gdk_export BAT *BATthetasubselect(BAT *b, BAT *s, const void *val, const char
*op);
+gdk_export BAT *BATselect(BAT *b, BAT *s, const void *tl, const void *th, int
li, int hi, int anti);
+gdk_export BAT *BATthetaselect(BAT *b, BAT *s, const void *val, const char
*op);
gdk_export BAT *BATconstant(int tt, const void *val, BUN cnt, int role);
gdk_export BAT *BATconst(BAT *l, int tt, const void *val, int role);
-gdk_export gdk_return BATcross1(BAT **r1p, BAT **r2p, BAT *l, BAT *r);
gdk_export gdk_return BATsubcross(BAT **r1p, BAT **r2p, BAT *l, BAT *r, BAT
*sl, BAT *sr);
-gdk_export gdk_return BATsubleftjoin(BAT **r1p, BAT **r2p, BAT *l, BAT *r, BAT
*sl, BAT *sr, int nil_matches, BUN estimate);
-gdk_export gdk_return BATsubouterjoin(BAT **r1p, BAT **r2p, BAT *l, BAT *r,
BAT *sl, BAT *sr, int nil_matches, BUN estimate);
-gdk_export gdk_return BATsubthetajoin(BAT **r1p, BAT **r2p, BAT *l, BAT *r,
BAT *sl, BAT *sr, int op, int nil_matches, BUN estimate);
-gdk_export gdk_return BATsubsemijoin(BAT **r1p, BAT **r2p, BAT *l, BAT *r, BAT
*sl, BAT *sr, int nil_matches, BUN estimate);
-gdk_export BAT *BATsubdiff(BAT *l, BAT *r, BAT *sl, BAT *sr, int nil_matches,
BUN estimate);
-gdk_export gdk_return BATsubjoin(BAT **r1p, BAT **r2p, BAT *l, BAT *r, BAT
*sl, BAT *sr, int nil_matches, BUN estimate);
-gdk_export gdk_return BATsubprojection(BAT **r1p, BAT **r2p, BAT *l, BAT *r,
BAT *sl, BAT *sr, int nil_matches, BUN estimate);
-gdk_export gdk_return BATsubbandjoin(BAT **r1p, BAT **r2p, BAT *l, BAT *r, BAT
*sl, BAT *sr, const void *c1, const void *c2, int li, int hi, BUN estimate);
-gdk_export gdk_return BATsubrangejoin(BAT **r1p, BAT **r2p, BAT *l, BAT *rl,
BAT *rh, BAT *sl, BAT *sr, int li, int hi, BUN estimate);
+gdk_export gdk_return BATleftjoin(BAT **r1p, BAT **r2p, BAT *l, BAT *r, BAT
*sl, BAT *sr, int nil_matches, BUN estimate);
+gdk_export gdk_return BATouterjoin(BAT **r1p, BAT **r2p, BAT *l, BAT *r, BAT
*sl, BAT *sr, int nil_matches, BUN estimate);
+gdk_export gdk_return BATthetajoin(BAT **r1p, BAT **r2p, BAT *l, BAT *r, BAT
*sl, BAT *sr, int op, int nil_matches, BUN estimate);
+gdk_export gdk_return BATsemijoin(BAT **r1p, BAT **r2p, BAT *l, BAT *r, BAT
*sl, BAT *sr, int nil_matches, BUN estimate);
+gdk_export BAT *BATdiff(BAT *l, BAT *r, BAT *sl, BAT *sr, int nil_matches, BUN
estimate);
+gdk_export gdk_return BATjoin(BAT **r1p, BAT **r2p, BAT *l, BAT *r, BAT *sl,
BAT *sr, int nil_matches, BUN estimate);
+gdk_export gdk_return BATbandjoin(BAT **r1p, BAT **r2p, BAT *l, BAT *r, BAT
*sl, BAT *sr, const void *c1, const void *c2, int li, int hi, BUN estimate);
+gdk_export gdk_return BATrangejoin(BAT **r1p, BAT **r2p, BAT *l, BAT *rl, BAT
*rh, BAT *sl, BAT *sr, int li, int hi, BUN estimate);
gdk_export BAT *BATproject(BAT *l, BAT *r);
gdk_export BAT *BATslice(BAT *b, BUN low, BUN high);
-gdk_export BAT *BATsubunique(BAT *b, BAT *s);
+gdk_export BAT *BATunique(BAT *b, BAT *s);
gdk_export BAT *BATmergecand(BAT *a, BAT *b);
gdk_export BAT *BATintersectcand(BAT *a, BAT *b);
diff --git a/gdk/gdk_aggr.c b/gdk/gdk_aggr.c
--- a/gdk/gdk_aggr.c
+++ b/gdk/gdk_aggr.c
@@ -29,7 +29,7 @@
* The tail values of s refer to the head of b and g. Only entries at
* the specified ids are taken into account for the grouped
* aggregates. All other values are ignored. s is compatible with
- * the result of BATsubselect().
+ * the result of BATselect().
*
* If e is not specified, we need to do an extra scan over g to find
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list