[prev in list] [next in list] [prev in thread] [next in thread]
List: monetdb-checkins
Subject: MonetDB: transaction-replication - Merge with the default branch
From: Dimitar Nedev <commits () monetdb ! org>
Date: 2015-01-30 7:47:45
Message-ID: hg.75b57eef90d8.1422604065.6315528441665844383 () monetdb2 ! cwi-incubator ! nl
[Download RAW message or body]
Changeset: 75b57eef90d8 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=75b57eef90d8
Added Files:
monetdb5/mal/Tests/tst281.mal
monetdb5/mal/Tests/tst281.stable.err
monetdb5/mal/Tests/tst281.stable.out
monetdb5/optimizer/Tests/manifold2.mal
monetdb5/optimizer/Tests/manifold2.stable.err
monetdb5/optimizer/Tests/manifold2.stable.out
sql/backends/monet5/vaults/fits.sql
sql/test/BugTracker-2015/Tests/acidity2-fail.Bug-3635.SQL.py
sql/test/BugTracker-2015/Tests/and_or_in.Bug-3655.sql
sql/test/BugTracker-2015/Tests/and_or_in.Bug-3655.stable.err
sql/test/BugTracker-2015/Tests/and_or_in.Bug-3655.stable.out
sql/test/BugTracker-2015/Tests/prepare_unop_crash.Bug-3653.sql
sql/test/BugTracker-2015/Tests/prepare_unop_crash.Bug-3653.stable.err
sql/test/BugTracker-2015/Tests/prepare_unop_crash.Bug-3653.stable.out
sql/test/mergetables/Tests/forex.stable.err
sql/test/mergetables/Tests/forex.stable.out
Removed Files:
monetdb5/mal/Tests/tst023.mal
monetdb5/mal/Tests/tst023.stable.err
monetdb5/mal/Tests/tst023.stable.out
monetdb5/tests/BugDay_2005-10-06_4.9.3/Tests/find_nil_in_void.SF-921814.mal
monetdb5/tests/BugDay_2005-10-06_4.9.3/Tests/find_nil_in_void.SF-921814.stable.err
monetdb5/tests/BugDay_2005-10-06_4.9.3/Tests/find_nil_in_void.SF-921814.stable.out
monetdb5/tests/gdkTests/Tests/TMsubcommit.mal
monetdb5/tests/gdkTests/Tests/TMsubcommit.stable.err
monetdb5/tests/gdkTests/Tests/TMsubcommit.stable.out
Modified Files:
clients/Tests/All
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/SQL-dump_all.stable.out
clients/Tests/SQL-dump_all.stable.out.int128
clients/Tests/SQL-dump_geom.stable.out
clients/Tests/SQL-dump_geom.stable.out.64bit.oid32
clients/Tests/SQL-dump_geom.stable.out.int128
clients/Tests/SQL-dump_none.stable.out
clients/Tests/SQL-dump_none.stable.out.int128
clients/Tests/exports.stable.out
gdk/ChangeLog.Oct2014
gdk/gdk_calc.c
gdk/gdk_calc.h
gdk/gdk_imprints.c
gdk/gdk_join.c
gdk/gdk_private.h
gdk/gdk_select.c
geom/monetdb5/geom.c
geom/monetdb5/geom.mal
monetdb5/ChangeLog
monetdb5/mal/Tests/All
monetdb5/mal/Tests/tst1200.mal
monetdb5/mal/Tests/tst1200.stable.out
monetdb5/mal/Tests/tst201.mal
monetdb5/mal/Tests/tst201.stable.out
monetdb5/mal/Tests/tst307.mal
monetdb5/mal/Tests/tst307.stable.out
monetdb5/mal/Tests/tst903.stable.out
monetdb5/mal/Tests/tst904.stable.out
monetdb5/mal/Tests/tst905.stable.out
monetdb5/mal/Tests/tst907.stable.out
monetdb5/modules/atoms/blob.c
monetdb5/modules/atoms/blob.mal
monetdb5/modules/atoms/inet.mal
monetdb5/modules/atoms/json.mal
monetdb5/modules/atoms/mtime.c
monetdb5/modules/atoms/mtime.h
monetdb5/modules/atoms/mtime.mal
monetdb5/modules/atoms/str.c
monetdb5/modules/atoms/str.h
monetdb5/modules/atoms/str.mal
monetdb5/modules/kernel/aggr.mal.sh
monetdb5/modules/kernel/algebra.c
monetdb5/modules/kernel/algebra.h
monetdb5/modules/kernel/algebra.mal
monetdb5/modules/mal/00_batcalc_hge.mal
monetdb5/modules/mal/00_batcalc_hge.mal.sh
monetdb5/modules/mal/00_calc_hge.mal
monetdb5/modules/mal/00_calc_hge.mal.sh
monetdb5/modules/mal/01_batcalc.mal
monetdb5/modules/mal/01_batcalc.mal.sh
monetdb5/modules/mal/01_calc.mal
monetdb5/modules/mal/01_calc.mal.sh
monetdb5/modules/mal/Tests/inspect05.mal
monetdb5/modules/mal/Tests/inspect05.stable.out.int128
monetdb5/modules/mal/batcalc.c
monetdb5/modules/mal/batmtime.mal
monetdb5/modules/mal/batmtime.mal.sh
monetdb5/modules/mal/calc.c
monetdb5/modules/mal/mal_init.mal
monetdb5/modules/mal/manifold.c
monetdb5/modules/mal/mat.mal
monetdb5/optimizer/Tests/All
monetdb5/optimizer/Tests/DCexample.mal
monetdb5/optimizer/Tests/DCexample.stable.out
monetdb5/optimizer/Tests/ESexample.mal
monetdb5/optimizer/Tests/ESexample.stable.out
monetdb5/optimizer/Tests/Mexample.stable.out
monetdb5/optimizer/Tests/inlineFunction2.stable.out
monetdb5/optimizer/Tests/joinpath.mal
monetdb5/optimizer/Tests/tst4630.stable.out
monetdb5/optimizer/Tests/tst4820.mal
monetdb5/optimizer/Tests/tst4820.stable.out
monetdb5/optimizer/opt_multiplex.c
monetdb5/optimizer/opt_prelude.c
monetdb5/optimizer/opt_prelude.h
monetdb5/optimizer/opt_support.c
monetdb5/tests/BugDay_2005-10-06_4.9.3/Tests/All
monetdb5/tests/gdkTests/Tests/All
monetdb5/tests/suite_01/Tests/All
sql/backends/monet5/rel_bin.c
sql/backends/monet5/sql_gencode.c
sql/backends/monet5/sql_statement.c
sql/backends/monet5/sql_statement.h
sql/backends/monet5/vaults/Makefile.ag
sql/benchmarks/ssbm/Tests/01-explain.stable.out
sql/benchmarks/ssbm/Tests/01-explain.stable.out.int128
sql/benchmarks/ssbm/Tests/02-explain.stable.out
sql/benchmarks/ssbm/Tests/02-explain.stable.out.int128
sql/benchmarks/ssbm/Tests/03-explain.stable.out
sql/benchmarks/ssbm/Tests/03-explain.stable.out.int128
sql/benchmarks/ssbm/Tests/04-explain.stable.out
sql/benchmarks/ssbm/Tests/04-explain.stable.out.int128
sql/benchmarks/ssbm/Tests/05-explain.stable.out
sql/benchmarks/ssbm/Tests/05-explain.stable.out.int128
sql/benchmarks/ssbm/Tests/06-explain.stable.out
sql/benchmarks/ssbm/Tests/06-explain.stable.out.int128
sql/benchmarks/ssbm/Tests/07-explain.stable.out
sql/benchmarks/ssbm/Tests/07-explain.stable.out.int128
sql/benchmarks/ssbm/Tests/08-explain.stable.out
sql/benchmarks/ssbm/Tests/08-explain.stable.out.int128
sql/benchmarks/ssbm/Tests/09-explain.stable.out
sql/benchmarks/ssbm/Tests/09-explain.stable.out.int128
sql/benchmarks/ssbm/Tests/10-explain.stable.out
sql/benchmarks/ssbm/Tests/10-explain.stable.out.int128
sql/benchmarks/ssbm/Tests/11-explain.stable.out
sql/benchmarks/ssbm/Tests/11-explain.stable.out.int128
sql/benchmarks/ssbm/Tests/12-explain.stable.out
sql/benchmarks/ssbm/Tests/12-explain.stable.out.int128
sql/benchmarks/ssbm/Tests/13-explain.stable.out
sql/benchmarks/ssbm/Tests/13-explain.stable.out.int128
sql/benchmarks/tpch/Tests/01-explain.stable.out
sql/benchmarks/tpch/Tests/02-explain.stable.out
sql/benchmarks/tpch/Tests/03-explain.stable.out
sql/benchmarks/tpch/Tests/03-explain.stable.out.int128
sql/benchmarks/tpch/Tests/04-explain.stable.out
sql/benchmarks/tpch/Tests/05-explain.stable.out
sql/benchmarks/tpch/Tests/05-explain.stable.out.int128
sql/benchmarks/tpch/Tests/06-explain.stable.out
sql/benchmarks/tpch/Tests/07-explain.stable.out
sql/benchmarks/tpch/Tests/07-explain.stable.out.int128
sql/benchmarks/tpch/Tests/08-explain.stable.out
sql/benchmarks/tpch/Tests/08-explain.stable.out.int128
sql/benchmarks/tpch/Tests/09-explain.stable.out
sql/benchmarks/tpch/Tests/09-explain.stable.out.int128
sql/benchmarks/tpch/Tests/09-plan.stable.out
sql/benchmarks/tpch/Tests/10-explain.stable.out
sql/benchmarks/tpch/Tests/10-explain.stable.out.int128
sql/benchmarks/tpch/Tests/11-explain.stable.out
sql/benchmarks/tpch/Tests/11-explain.stable.out.int128
sql/benchmarks/tpch/Tests/12-explain.stable.out
sql/benchmarks/tpch/Tests/12-explain.stable.out.int128
sql/benchmarks/tpch/Tests/13-explain.stable.out
sql/benchmarks/tpch/Tests/14-explain.stable.out
sql/benchmarks/tpch/Tests/14-explain.stable.out.int128
sql/benchmarks/tpch/Tests/15-explain.stable.out
sql/benchmarks/tpch/Tests/15-explain.stable.out.int128
sql/benchmarks/tpch/Tests/16-explain.stable.out
sql/benchmarks/tpch/Tests/17-explain.stable.out
sql/benchmarks/tpch/Tests/17-explain.stable.out.int128
sql/benchmarks/tpch/Tests/18-explain.stable.out
sql/benchmarks/tpch/Tests/18-explain.stable.out.int128
sql/benchmarks/tpch/Tests/19-explain.stable.out
sql/benchmarks/tpch/Tests/19-explain.stable.out.int128
sql/benchmarks/tpch/Tests/20-explain.stable.out
sql/benchmarks/tpch/Tests/20-explain.stable.out.int128
sql/benchmarks/tpch/Tests/20-plan.stable.out
sql/benchmarks/tpch/Tests/21-explain.stable.out
sql/benchmarks/tpch/Tests/22-explain.stable.out
sql/benchmarks/tpch/Tests/22-explain.stable.out.int128
sql/common/sql_changeset.c
sql/include/sql_catalog.h
sql/server/rel_select.c
sql/storage/bat/bat_storage.c
sql/storage/store.c
sql/test/BugTracker-2009/Tests/union_leak.SF-2540169.2.mal
sql/test/BugTracker-2010/Tests/ORDER_BY_over_UNION_EXCEPT_INTERSECT.Bug-2606.stable.out
sql/test/BugTracker-2013/Tests/between.Bug-3259.stable.out.int128
sql/test/BugTracker-2015/Tests/All
sql/test/BugTracker-2015/Tests/name_conflict.Bug-3650.stable.err
sql/test/Tests/systemfunctions.stable.out
sql/test/Tests/systemfunctions.stable.out.int128
sql/test/Tests/systemfunctions_bam.stable.out
sql/test/Tests/systemfunctions_bam.stable.out.int128
sql/test/Tests/systemfunctions_gsl.stable.out
sql/test/Tests/systemfunctions_gsl.stable.out.int128
sql/test/Tests/systemfunctions_nogeom.stable.out
sql/test/Tests/systemfunctions_nogeom.stable.out.int128
sql/test/mergetables/Tests/forex.sql
sql/test/mergetables/Tests/mergekey.sql
sql/test/mergetables/Tests/mergekey.stable.err
sql/test/mergetables/Tests/mergekey.stable.out
testing/Mtest.py.in
Branch: transaction-replication
Log Message:
Merge with the default branch
diffs (truncated from 44818 to 300 lines):
diff --git a/clients/Tests/All b/clients/Tests/All
--- a/clients/Tests/All
+++ b/clients/Tests/All
@@ -3,7 +3,7 @@ HAVE_CFITSIO&HAVE_GEOM&HAVE_GSL&HAVE_LIB
HAVE_CFITSIO&HAVE_GEOM&!HAVE_GSL&!HAVE_LIBR&!HAVE_SAMTOOLS&!HAVE_SPHINXCLIENT&!ENABLE_DATACELL?MAL-signatures_fits_geom
!HAVE_CFITSIO&HAVE_GEOM&!HAVE_GSL&!HAVE_LIBR&!HAVE_SAMTOOLS&!HAVE_SPHINXCLIENT&!ENABLE_DATACELL?MAL-signatures_geom
!HAVE_CFITSIO&!HAVE_GEOM&!HAVE_GSL&!HAVE_LIBR&!HAVE_SAMTOOLS&!HAVE_SPHINXCLIENT&!ENABLE_DATACELL?MAL-signatures_none
-HAVE_GEOM&HAVE_GSL&HAVE_SAMTOOLS&!ENABLE_DATACELL?SQL-dump_all
+HAVE_GEOM&HAVE_GSL&HAVE_SAMTOOLS&!ENABLE_DATACELL&!BITS32?SQL-dump_all
HAVE_GEOM&!HAVE_GSL&!HAVE_SAMTOOLS&!ENABLE_DATACELL?SQL-dump_geom
-!HAVE_GEOM&!HAVE_GSL&!HAVE_SAMTOOLS&!ENABLE_DATACELL?SQL-dump_none
+!HAVE_GEOM&!HAVE_GSL&!HAVE_SAMTOOLS&!ENABLE_DATACELL&!BITS32?SQL-dump_none
MERCURIAL?malcheck
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
@@ -178,13 +178,13 @@ comment Grouped count
command aggr.count_no_nil(b:bat[:oid,:any_1],e:bat[:oid,:any_1]):bat[:oid,:wrd]
address AGGRcount2nonils;
-command aggr.count(b:bat[:void,:any_1],e:bat[:void,:any_2]):bat[:void,:wrd]
+command aggr.count(b:bat[:oid,:any_1],e:bat[:oid,:any_2]):bat[:oid,:wrd]
address AGGRcount2nils;
-command aggr.count(b:bat[:void,:any_1],e:bat[:oid,:any_2]):bat[:void,:wrd]
+command aggr.count(b:bat[:oid,:any_1],e:bat[:oid,:any_2]):bat[:oid,:wrd]
address AGGRcount2nils;
comment Grouped count
-command aggr.count(b:bat[:oid,:any_1],g:bat[:oid,:oid],e:bat[:oid,:any_2],ignorenils:bit):bat[:void,:wrd] \
+command aggr.count(b:bat[:oid,:any_1],g:bat[:oid,:oid],e:bat[:oid,:any_2],ignorenils:bit):bat[:oid,:wrd] \
address AGGRcount3;
command aggr.count(b:bat[:oid,:any_1],e:bat[:oid,:any_2],ignorenils:bit):bat[:oid,:wrd] \
address AGGRcount2;
@@ -194,15 +194,15 @@ command aggr.cardinality(b:bat[:oid,:any
address ALGcard;
comment Return the cardinality of the BAT tail values.
-command aggr.count_no_nil(b:bat[:any_1,:any_2]):wrd
+command aggr.count_no_nil(b:bat[:oid,:any_2]):wrd
address ALGcount_no_nil;
comment Return the number of elements currently in a BAT ignoring BUNs with nil-tail
-command aggr.count(b:bat[:any_1,:any],ignore_nils:bit):wrd
+command aggr.count(b:bat[:oid,:any],ignore_nils:bit):wrd
address ALGcount_nil;
comment Return the number of elements currently in a BAT ignores BUNs with nil-tail \
iff ignore_nils==TRUE.
-command aggr.count(b:bat[:any_1,:any]):wrd
+command aggr.count(b:bat[:oid,:any]):wrd
address ALGcount_bat;
comment Return the current size (in number of elements) in a BAT.
@@ -229,11 +229,11 @@ command aggr.max(b:bat[:oid,:any_1],e:ba
address AGGRmax2;
command aggr.min(b:bat[:oid,:any_1],e:bat[:oid,:any_2]):bat[:oid,:any_1]
address AGGRmin2;
-command aggr.max(b:bat[:any_1,:any_2]):any_2
+command aggr.max(b:bat[:oid,:any_2]):any_2
address ALGmaxany;
comment Return the highest tail value or nil.
-command aggr.min(b:bat[:any_1,:any_2]):any_2
+command aggr.min(b:bat[:oid,:any_2]):any_2
address ALGminany;
comment Return the lowest tail value or nil.
@@ -1170,7 +1170,7 @@ command aggr.subcount(b:bat[:oid,:any_1]
address AGGRsubcount;
comment Grouped count aggregate
-command aggr.size(b:bat[:void,:bit],e:bat[:void,:any_1]):bat[:void,:wrd]
+command aggr.size(b:bat[:oid,:bit],e:bat[:oid,:any_1]):bat[:oid,:wrd]
address AGGRsize2nils;
comment Grouped count of true values
@@ -2254,31 +2254,15 @@ command aggr.variance(b:bat[:oid,:any_2]
address ALGvariance;
comment Gives the variance of all tail values
-command algebra.antijoin(left:bat[:any_1,:any_2],right:bat[:any_2,:any_4]):bat[:any_1,:any_4] \
-address ALGantijoin;
-comment Returns the antijoin
-
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.bandjoin(outer:bat[:any_1,:any_2],inner:bat[:any_2,:any_3],minus:any_2,plus:any_2,li:bit,hi:bit):bat[:any_1,:any_3] \
-address ALGbandjoin;
-comment This is a join() for which the predicate is that two BUNs match if the \
left-tail value is within the range [right-head - minus, right-head + plus], \
depending on (l_in/h_in), the bounds are included. Works only for the builtin \
numerical types, and their derivates.
-
-command algebra.bandjoin(outer:bat[:any_1,:any_2],inner:bat[:any_2,:any_3],minus:any_2,plus:any_2):bat[:any_1,:any_3] \
-address ALGbandjoin_default;
-comment This is a join() for which the predicate is that two BUNs match if the \
left-tail value is within the range [right-head - minus, right-head + plus]. Works \
only for the builtin numerical types, and their derivates.
-
-command algebra.bandjoin(outer:bat[:oid,:any_2],inner:bat[:oid,:any_2],minus:any_2,plus:any_2,li:bit,hi:bit) \
(l:bat[:oid,:oid],r:bat[:oid,:oid])
-address ALGbandjoin2;
-comment This is a join() for which the predicate is that two BUNs match if the \
left-tail value is within the range [right-head - minus, right-head + plus], \
depending on (l_in/h_in), the bounds are included. Works only for the builtin \
numerical types, and their derivates.
-
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
-command algebra.copy(b:bat[:any_1,:any_2]):bat[:any_1,:any_2]
+command algebra.copy(b:bat[:oid,:any_1]):bat[:oid,:any_1]
address ALGcopy;
comment Returns physical copy of a BAT.
@@ -2310,13 +2294,13 @@ pattern algebra.firstn(b:bat[:oid,:any],
address ALGfirstn;
comment Calculate first N values of B
-command algebra.fetch(b:bat[:any_2,:any_1],x:oid):any_1
+command algebra.fetch(b:bat[:oid,:any_1],x:oid):any_1
address ALGfetchoid;
-comment Returns the tail value of the BUN at x-th position with 0 <= x < b.count
-
-command algebra.find(b:bat[:any_1,:any_2],h:any_1):any_2
+comment Returns the value of the BUN at x-th position with 0 <= x < b.count
+
+command algebra.find(b:bat[:oid,:any_1],t:any_1):oid
address ALGfind;
-comment Returns the tail value 't' for which some [h,t] BUN exists in b. If no such \
BUN exists, an error occurs. +comment Returns the index position of a value. If no \
such BUN exists return OID-nil.
command algebra.groupby(gids:bat[:oid,:oid],cnts:bat[:oid,:wrd]):bat[:oid,:oid]
address ALGgroupby;
@@ -2333,30 +2317,18 @@ command algebra.ilike(s:str,pat:str):bit
address PCREilike2;
command algebra.ilike(s:str,pat:str,esc:str):bit
address PCREilike3;
-command algebra.indexjoin(left:bat[:any_1,:any_2],right:bat[:any_2,:any_3]):bat[:any_1,:any_3] \
-address ALGindexjoin;
-comment Hook directly into the index implementation of the join.
-
pattern algebra.joinPath(l:bat[:any,:any]...):bat[:oid,:any]
address ALGjoinPath;
comment Routine to handle join paths. The type analysis is rather tricky.
-command algebra.join(l:bat[:any_1,:any_2],rl:bat[:any_3,:any_2],rh:bat[:any_3,:any_2],li:bit,hi:bit):bat[:any_1,:any_3] \
-address ALGrangejoin;
-command algebra.join(left:bat[:any_1,:any_2],right:bat[:any_2,:any_3],estimate:lng):bat[:any_1,:any_3] \
-address ALGjoinestimate;
-command algebra.join(left:bat[:any_1,:any_2],right:bat[:any_2,:any_3]):bat[:any_1,:any_3] \
-address ALGjoin;
-command algebra.join(left:bat[:any_1,:any_2],right:bat[:any_2,:any_3]):bat[:any_1,:any_3] \
-address ALGjoin;
-comment Returns all BUNs, consisting of a head-value from 'left' and a tail-value \
from 'right' for which there are BUNs in 'left' and 'right' with equal tail- resp. \
head-value (i.e. the join columns are projected out).
-
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;
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.join(l:bat[:any_1,:any_2],rl:bat[:any_3,:any_2],rh:bat[:any_3,:any_2],li:bit,hi:bit):bat[:any_1,:any_3] \
+address ALGrangejoin;
command algebra.kunion(left:bat[:any_1,:any_2],right:bat[:any_1,:any_2]):bat[:any_1,:any_2] \
address ALGkunion;
comment Returns the union of two BATs; looking at head-columns only. Results in all \
BUNs of 'left' that are not in 'right', plus all BUNs of 'right'. *no* \
double-elimination is done. @@ -2392,6 +2364,10 @@ command \
algebra.like(s:str,pat:str):bit address PCRElike2;
command algebra.like(s:str,pat:str,esc:str):bit
address PCRElike3;
+command algebra.like(b:bat[:oid,:str],substr:str):bat[:oid,:str]
+address ALGlike;
+comment Selects all elements that have 'substr' as in the tail.
+
command algebra.leftfetchjoin(left:bat[:oid,:oid],right:bat[:oid,:any_3]):bat[:oid,:any_3] \
address ALGleftfetchjoin;
comment Hook directly into the left fetch join implementation.
@@ -2400,10 +2376,6 @@ command algebra.leftjoin(left:bat[:any_1
address ALGleftjoinestimate;
command algebra.leftjoin(left:bat[:any_1,:any_2],right:bat[:any_2,:any_3]):bat[:any_1,:any_3] \
address ALGleftjoin;
-command algebra.like(b:bat[:oid,:str],substr:str):bat[:oid,:str]
-address ALGlike;
-comment Selects all elements that have 'substr' as in the tail.
-
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. @@ -2432,20 +2404,6 @@ \
command algebra.not_like(s:str,pat:str): address PCREnotlike2;
command algebra.not_like(s:str,pat:str,esc:str):bit
address PCREnotlike3;
-command algebra.outerjoin(outer:bat[:any_1,:any_2],inner:bat[:any_2,:any_3],estimate:lng):bat[:any_1,:any_3] \
-address ALGouterjoinestimate;
-command algebra.outerjoin(outer:bat[:any_1,:oid],inner:bat[:oid,:any_3]):bat[:any_1,:any_3] \
-address ALGouterjoin;
-comment Returns all the result of a join, plus the BUNS formed NIL in the tail and \
the head-values of 'outer' whose tail-value does not match an \
head-value in 'inner'.
-
-command algebra.outerjoin(outer:bat[:any_1,:oid],inner:bat[:oid,:any_3]):bat[:any_1,:any_3] \
-address ALGouterjoin;
-comment Returns all the result of a join, plus the BUNS formed NIL in the tail and \
the head-values of 'outer' whose tail-value does not match an \
head-value in 'inner'.
-
-command algebra.outerjoin(outer:bat[:any_1,:any_2],inner:bat[:any_2,:any_3]):bat[:any_1,:any_3] \
-address ALGouterjoin;
-comment Returns all the result of a join, plus the BUNS formed NIL in the tail and \
the head-values of 'outer' whose tail-value does not match an \
head-value in 'inner'.
-
pattern algebra.project(b:bat[:any_2,:any_1],v:any_3):bat[:any_2,:any_3]
address ALGprojecttail;
comment Fill the tail with a constant, e.g. [0~b]
@@ -2458,11 +2416,11 @@ command algebra.project(b:bat[:any_1,:an
address ALGprojectNIL;
comment Extract the head of a BAT.
-command algebra.reuse(b:bat[:oid,:any_2]):bat[:oid,:any_2]
+command algebra.reuse(b:bat[:oid,:any_1]):bat[:oid,:any_1]
address ALGreuse;
comment Reuse a temporary BAT if you can. Otherwise, allocate enough storage to \
accept result of an operation (not involving the heap)
-command algebra.revert(b:bat[:any_1,:any_2]):bat[:any_1,:any_2]
+command algebra.revert(b:bat[:oid,:any_1]):bat[:oid,:any_1]
address ALGrevert;
comment Returns a BAT copy with buns in reverse order
@@ -2470,6 +2428,26 @@ pattern algebra.semijoinPath(l:bat[:any,
address ALGjoinPath;
comment Routine to handle join paths. The type analysis is rather tricky.
+command algebra.subslice(b:bat[:oid,:any_1],x:wrd,y:wrd):bat[:oid,:oid]
+address ALGsubslice_wrd;
+comment Return the oids of the slice with the BUNs at position x till y.
+
+command algebra.slice(b:bat[:oid,:any_1],x:wrd,y:wrd):bat[:oid,:any_1]
+address ALGslice_wrd;
+comment Return the slice with the BUNs at position x till y.
+
+command algebra.slice(b:bat[:oid,:any_1],x:int,y:int):bat[:oid,:any_1]
+address ALGslice_int;
+comment Return the slice with the BUNs at position x till y.
+
+command algebra.slice(b:bat[:oid,:any_1],x:lng,y:lng):bat[:oid,:any_1]
+address ALGslice;
+comment Return the slice with the BUNs at position x till y.
+
+command algebra.slice(b:bat[:oid,:any_1],x:oid,y:oid):bat[:oid,:any_1]
+address ALGslice_oid;
+comment Return the slice based on head oid x till y (exclusive).
+
command algebra.subrangejoin(l:bat[:oid,:any_1],r1:bat[:oid,:any_1],r2:bat[:oid,:any_1],sl:bat[:oid,:oid],sr:bat[:oid,:oid],li:bit,hi:bit,estimate:lng) \
(X_9:bat[:oid,:oid],X_10:bat[:oid,:oid]) address ALGsubrangejoin;
comment Range join: values in l and r1/r2 match if r1 <[=] l <[=] r2
@@ -2495,10 +2473,6 @@ command algebra.subjoin(l:bat[:oid,:any_
address ALGsubjoin;
comment Join
-command algebra.semijoin(left:bat[:any_1,:any_2],right:bat[:any_1,:any]):bat[:any_1,:any_2] \
-address ALGsemijoin;
-comment Returns the intersection taken over only the *head* columns of two BATs. \
Results in all BUNs of 'left' that are also in 'right'. Does *not* do \
double-elimination over the 'left' BUNs. If you want this, use: \
'kintersect(kunique(left),kunique(right))' or: \
'kunique(kintersect(left,right))'.
-
command algebra.subunique(b:bat[:oid,:any_1]):bat[:oid,:oid]
address ALGsubunique1;
comment Select all unique values from the tail of the input. Input is a dense-headed \
BAT, output is a dense-headed BAT with in the tail the head value of the input BAT \
that was selected. The output BAT is sorted on the tail value. @@ -2543,62 +2517,10 \
@@ command algebra.subsort(b:bat[:oid,:any_ address ALGsubsort11;
comment Returns a copy of the BAT sorted on tail values. The input and \
output are (must be) dense headed. The order is descending if the reverse bit \
is set. This is a stable sort if the stable bit is set.
-command algebra.ssort_rev(b:bat[:any_1,:any_2]):bat[:any_1,:any_2]
-address ALGssort_rev;
-comment Returns copy of a BAT with the BUNs sorted on descending head values. \
This is a stable sort.
-
-command algebra.ssort(b:bat[:any_1,:any_2]):bat[:any_1,:any_2]
-address ALGssort;
-comment Returns copy of a BAT with the BUNs sorted on ascending head values. \
This is a stable sort.
-
-command algebra.sortTH(b:bat[:any_1,:any_2]):bat[:any_1,:any_2]
-address ALGthsort;
-comment Returns a lexicographically sorted copy on tail,head.
-
-command algebra.sortHT(b:bat[:any_1,:any_2]):bat[:any_1,:any_2]
-address ALGhtsort;
-comment Returns a lexicographically sorted copy on head,tail.
-
-command algebra.sortReverseTail(b:bat[:any_1,:any_2]):bat[:any_1,:any_2]
-address ALGtsort_rev;
-comment Returns a BAT copy reversely sorted on the tail column.
-
-command algebra.sortTail(b:bat[:any_1,:any_2]):bat[:any_1,:any_2]
-address ALGtsort;
-comment Returns a BAT copy sorted on the tail column.
-
-command algebra.sortReverse(b:bat[:any_1,:any_2]):bat[:any_1,:any_2]
-address ALGhsort_rev;
-comment Returns a BAT copy reversely sorted on the head column.
-
-command algebra.sort(b:bat[:any_1,:any_2]):bat[:any_1,:any_2]
-address ALGhsort;
-comment Returns a BAT copy sorted on the head column.
-
command algebra.sample(b:bat[:oid,:any_1],num:int):bat[:oid,:oid]
address ALGsample;
comment Returns the oids of a random selection of size 'num' from the input BAT.
-command algebra.subslice(b:bat[:oid,:any_1],x:wrd,y:wrd):bat[:oid,:oid]
-address ALGsubslice_wrd;
-comment Return the oids of the slice with the BUNs at position x till y.
-
-command algebra.slice(b:bat[:any_1,:any_2],x:wrd,y:wrd):bat[:any_1,:any_2]
_______________________________________________
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic