Changeset: 0eef8c674c73 for MonetDB URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=0eef8c674c73 Added Files: sql/test/BugTracker-2014/Tests/queueError.Bug-3604.sql sql/test/BugTracker-2014/Tests/queueError.Bug-3604.stable.err sql/test/BugTracker-2014/Tests/queueError.Bug-3604.stable.out sql/test/mergetables/Tests/alter.sql sql/test/mergetables/Tests/emptymergequery.sql sql/test/mergetables/Tests/mergekey.sql sql/test/mergetables/Tests/types.sql Modified Files: clients/R/Tests/install-dependencies.sh 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_align.c gdk/gdk_bat.c gdk/gdk_bbp.c gdk/gdk_cross.c gdk/gdk_group.c gdk/gdk_heap.c gdk/gdk_imprints.c gdk/gdk_join.c gdk/gdk_private.h gdk/gdk_search.c gdk/gdk_select.c gdk/gdk_storage.c gdk/gdk_unique.c java/src/nl/cwi/monetdb/jdbc/MonetDatabaseMetaData.java monetdb5/extras/rdf/rdf.h monetdb5/mal/mal_interpreter.c monetdb5/mal/mal_linker.c monetdb5/mal/mal_linker.h monetdb5/mal/mal_private.h monetdb5/modules/atoms/blob.c monetdb5/modules/atoms/mtime.c monetdb5/modules/atoms/mtime.h monetdb5/modules/atoms/str.c monetdb5/modules/atoms/str.h monetdb5/modules/kernel/aggr.c monetdb5/modules/kernel/algebra.c monetdb5/modules/kernel/algebra.h monetdb5/modules/kernel/bat5.c monetdb5/modules/kernel/bat5.h monetdb5/modules/kernel/batcolor.mal monetdb5/modules/kernel/batstr.c monetdb5/modules/kernel/counters.c monetdb5/modules/kernel/counters.mal monetdb5/modules/mal/batExtensions.c monetdb5/modules/mal/batExtensions.h monetdb5/modules/mal/batcalc.c monetdb5/modules/mal/bbp.h monetdb5/modules/mal/factories.c monetdb5/modules/mal/factories.h monetdb5/modules/mal/inspect.h monetdb5/modules/mal/language.c monetdb5/modules/mal/language.h monetdb5/modules/mal/mal_mapi.c monetdb5/modules/mal/mal_mapi.h monetdb5/modules/mal/mat.c monetdb5/modules/mal/mat.h monetdb5/modules/mal/mdb.c monetdb5/modules/mal/mdb.h monetdb5/modules/mal/pcre.c monetdb5/modules/mal/pcre.mal monetdb5/modules/mal/profiler.c monetdb5/modules/mal/profiler.h monetdb5/modules/mal/transaction.c sql/backends/monet5/Tests/All sql/backends/monet5/datacell/basket.h sql/backends/monet5/datacell/petrinet.c sql/backends/monet5/generator/generator.c sql/backends/monet5/rest/rest_jsonstore_handle_get.h sql/backends/monet5/sql.c sql/backends/monet5/sql.h sql/backends/monet5/sql.mal sql/backends/monet5/sql_cast.c sql/backends/monet5/sql_cast.h sql/backends/monet5/sql_cast_impl_down_from_flt.h 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_gencode.h sql/backends/monet5/sql_scenario.c sql/backends/monet5/sql_scenario.h sql/benchmarks/ssbm/Tests/01-explain.stable.out.int128 sql/benchmarks/ssbm/Tests/02-explain.stable.out.int128 sql/benchmarks/ssbm/Tests/03-explain.stable.out.int128 sql/benchmarks/ssbm/Tests/04-explain.stable.out.int128 sql/benchmarks/ssbm/Tests/05-explain.stable.out.int128 sql/benchmarks/ssbm/Tests/06-explain.stable.out.int128 sql/benchmarks/ssbm/Tests/07-explain.stable.out.int128 sql/benchmarks/ssbm/Tests/08-explain.stable.out.int128 sql/benchmarks/ssbm/Tests/09-explain.stable.out.int128 sql/benchmarks/ssbm/Tests/10-explain.stable.out.int128 sql/benchmarks/ssbm/Tests/11-explain.stable.out.int128 sql/benchmarks/ssbm/Tests/12-explain.stable.out.int128 sql/benchmarks/ssbm/Tests/13-explain.stable.out.int128 sql/server/rel_planner.c sql/server/rel_schema.c sql/test/BugTracker-2014/Tests/All sql/test/leaks/Tests/check0_nogeom.stable.out sql/test/leaks/Tests/check3_nogeom.stable.out sql/test/leaks/Tests/check4_nogeom.stable.out sql/test/leaks/Tests/check5_nogeom.stable.out sql/test/leaks/Tests/select1_nogeom.stable.out sql/test/leaks/Tests/select2_nogeom.stable.out sql/test/leaks/Tests/temp2_nogeom.stable.out sql/test/leaks/Tests/temp3_nogeom.stable.out sql/test/mergetables/Tests/All sql/test/mergetables/Tests/mergeload.stable.out testing/malcheck.py Branch: bamloader Log Message:
Merge with default diffs (truncated from 7613 to 300 lines): diff --git a/clients/R/Tests/install-dependencies.sh b/clients/R/Tests/install-dependencies.sh --- a/clients/R/Tests/install-dependencies.sh +++ b/clients/R/Tests/install-dependencies.sh @@ -1,2 +1,2 @@ #!/bin/sh -R --vanilla --quiet -e "install.packages(c('dplyr','sqlsurvey','DBI','digest'),repos=c('http://r-forge.r-project.org','http://cran.rstudio.com/'),type='source')" +R --vanilla --quiet -e "install.packages(c('dplyr','survey','sqlsurvey','DBI','digest','Lahman'),repos=c('http://download.r-forge.r-project.org','http://cran.rstudio.com/'),type='source')" 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 @@ -2822,6 +2822,10 @@ command batsql.dec_round(v:bat[:oid,:lng address lng_bat_dec_round_wrap; comment round off the value v to nearests multiple of r +command batsql.dec_round(v:bat[:oid,:wrd],r:wrd):bat[:oid,:wrd] +address wrd_bat_dec_round_wrap; +comment round off the value v to nearests multiple of r + command batsql.dec_round(v:bat[:oid,:int],r:int):bat[:oid,:int] address int_bat_dec_round_wrap; comment round off the value v to nearests multiple of r @@ -2850,6 +2854,10 @@ command batsql.round(v:bat[:oid,:lng],d: address lng_bat_round_wrap; comment round off the decimal v(d,s) to r digits behind the dot (if r < 0, before the dot) +command batsql.round(v:bat[:oid,:wrd],d:int,s:int,r:bte):bat[:oid,:wrd] +address wrd_bat_round_wrap; +comment round off the decimal v(d,s) to r digits behind the dot (if r < 0, before the dot) + command batsql.round(v:bat[:oid,:int],d:int,s:int,r:bte):bat[:oid,:int] address int_bat_round_wrap; comment round off the decimal v(d,s) to r digits behind the dot (if r < 0, before the dot) @@ -2946,6 +2954,10 @@ command batcolor.value(c:bat[:oid,:color address CLRbatValueInt; comment Extracts value component from a color atom +command batcolor.ycc(y:bat[:oid,:flt],cr:bat[:oid,:flt],cb:bat[:oid,:flt]):bat[:oid,:color] +address CLRbatycc; +comment Converts an YCC triplets to a color atom + command batstr.endsWith(s:bat[:oid,:str],suffix:str):bat[:oid,:bit] address STRbatSuffixcst; comment Suffix check. @@ -31135,6 +31147,22 @@ command batcalc.wrd(v:bat[:oid,:flt],dig address batflt_num2dec_wrd; comment cast number to decimal(wrd) and check for overflow +command batcalc.wrd(v:bat[:oid,:str],digits:int,scale:int):bat[:oid,:wrd] +address batstr_2dec_wrd; +comment cast to dec(wrd) and check for overflow + +command batcalc.wrd(v:bat[:oid,:str],digits:int):bat[:oid,:wrd] +address batstr_2num_wrd; +comment cast to wrd and check for overflow + +command batcalc.wrd(v:bat[:oid,:oid],digits:int,scale:int):bat[:oid,:wrd] +address batnil_2dec_wrd; +comment cast to dec(wrd) and check for overflow + +command batcalc.wrd(v:bat[:oid,:oid],digits:int):bat[:oid,:wrd] +address batnil_2num_wrd; +comment cast to wrd and check for overflow + pattern batcalc.wrd_noerror(b:bat[:oid,:str],s:bat[:oid,:oid]):bat[:oid,:wrd] address CMDconvert_wrd; comment cast from str to wrd with candidates list @@ -37754,6 +37782,10 @@ command calc.second_interval(sc:int,v:ln address lng_dec2second_interval; comment cast lng decimal to a second_interval +command calc.second_interval(sc:int,v:wrd,ek:int,sk:int):lng +address wrd_dec2second_interval; +comment cast wrd decimal to a second_interval + command calc.second_interval(sc:int,v:int,ek:int,sk:int):lng address int_dec2second_interval; comment cast int decimal to a second_interval @@ -38251,6 +38283,22 @@ command calc.wrd(v:flt,digits:int,scale: address flt_num2dec_wrd; comment cast number to decimal(wrd) and check for overflow +command calc.wrd(v:str,digits:int,scale:int):wrd +address str_2dec_wrd; +comment cast to dec(wrd) and check for overflow + +command calc.wrd(v:str,digits:int):wrd +address str_2num_wrd; +comment cast to wrd and check for overflow + +command calc.wrd(v:void,digits:int,scale:int):wrd +address nil_2dec_wrd; +comment cast to dec(wrd) and check for overflow + +command calc.wrd(v:void,digits:int):wrd +address nil_2num_wrd; +comment cast to wrd and check for overflow + command calc.wkb(v:wkb):wkb address wkbFromWKB; command calc.wkb{unsafe}(v:str):wkb @@ -41499,6 +41547,10 @@ command sql.dec_round(v:lng,r:lng):lng address lng_dec_round_wrap; comment round off the value v to nearests multiple of r +command sql.dec_round(v:wrd,r:wrd):wrd +address wrd_dec_round_wrap; +comment round off the value v to nearests multiple of r + command sql.dec_round(v:int,r:int):int address int_dec_round_wrap; comment round off the value v to nearests multiple of r @@ -41711,6 +41763,10 @@ command sql.round(v:lng,d:int,s:int,r:bt address lng_round_wrap; comment round off the decimal v(d,s) to r digits behind the dot (if r < 0, before the dot) +command sql.round(v:wrd,d:int,s:int,r:bte):wrd +address wrd_round_wrap; +comment round off the decimal v(d,s) to r digits behind the dot (if r < 0, before the dot) + command sql.round(v:int,d:int,s:int,r:bte):int address int_round_wrap; comment round off the decimal v(d,s) to r digits behind the dot (if r < 0, before the dot) 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 @@ -2827,14 +2827,10 @@ 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:int):any_1 -address ALGfetchint; -comment Returns the tail value of the BUN at x-th position with 0 <= x < b.count - -command algebra.fetch(b:bat[:any_2,:any_1],x:lng):any_1 -address ALGfetch; command algebra.fetch(b:bat[:any_2,: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 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. @@ -2933,15 +2929,15 @@ command algebra.mark_grp(b:bat[:any_1,:o address ALGmark_grp_1; comment "grouped mark": Produces a new BAT with per group a locally unique dense ascending sequence 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 tail of g gives for each group the base value for the new OID sequence. -command algebra.markT(b:bat[:any_1,:any_2],nr_parts:int,part_nr:int):bat[:any_1,:oid] +command algebra.mark(b:bat[:any_1,:any_2],nr_parts:int,part_nr:int):bat[:any_1,:oid] address ALGtmarkp; comment Produces a BAT with fresh unique dense sequense of OIDs in the tail that starts at base (i.e. [base,..base+b.count()-1] ). The base is uniquely defined by the part_nr (ie we set the highest bits based on the part_nr/nr_parts) -command algebra.markT(b:bat[:any_1,:any_2]):bat[:any_1,:oid] +command algebra.mark(b:bat[:any_1,:any_2]):bat[:any_1,:oid] address ALGtmark_default; comment Produces a BAT with fresh unique OIDs in the tail starting at 0@0. -command algebra.markT(b:bat[:any_1,:any_2],base:oid):bat[:any_1,:oid] +command algebra.mark(b:bat[:any_1,:any_2],base:oid):bat[:any_1,:oid] address ALGtmark; comment Produces a BAT with fresh unique dense sequense of OIDs in the tail that starts at base (i.e. [base,..base+b.count()-1] ). @@ -3342,6 +3338,10 @@ command batsql.dec_round(v:bat[:oid,:lng address lng_bat_dec_round_wrap; comment round off the value v to nearests multiple of r +command batsql.dec_round(v:bat[:oid,:wrd],r:wrd):bat[:oid,:wrd] +address wrd_bat_dec_round_wrap; +comment round off the value v to nearests multiple of r + command batsql.dec_round(v:bat[:oid,:int],r:int):bat[:oid,:int] address int_bat_dec_round_wrap; comment round off the value v to nearests multiple of r @@ -3374,6 +3374,10 @@ command batsql.round(v:bat[:oid,:lng],d: address lng_bat_round_wrap; comment round off the decimal v(d,s) to r digits behind the dot (if r < 0, before the dot) +command batsql.round(v:bat[:oid,:wrd],d:int,s:int,r:bte):bat[:oid,:wrd] +address wrd_bat_round_wrap; +comment round off the decimal v(d,s) to r digits behind the dot (if r < 0, before the dot) + command batsql.round(v:bat[:oid,:int],d:int,s:int,r:bte):bat[:oid,:int] address int_bat_round_wrap; comment round off the decimal v(d,s) to r digits behind the dot (if r < 0, before the dot) @@ -3470,6 +3474,10 @@ command batcolor.value(c:bat[:oid,:color address CLRbatValueInt; comment Extracts value component from a color atom +command batcolor.ycc(y:bat[:oid,:flt],cr:bat[:oid,:flt],cb:bat[:oid,:flt]):bat[:oid,:color] +address CLRbatycc; +comment Converts an YCC triplets to a color atom + command batstr.endsWith(s:bat[:oid,:str],suffix:str):bat[:oid,:bit] address STRbatSuffixcst; comment Suffix check. @@ -40145,6 +40153,22 @@ command batcalc.wrd(v:bat[:oid,:flt],dig address batflt_num2dec_wrd; comment cast number to decimal(wrd) and check for overflow +command batcalc.wrd(v:bat[:oid,:str],digits:int,scale:int):bat[:oid,:wrd] +address batstr_2dec_wrd; +comment cast to dec(wrd) and check for overflow + +command batcalc.wrd(v:bat[:oid,:str],digits:int):bat[:oid,:wrd] +address batstr_2num_wrd; +comment cast to wrd and check for overflow + +command batcalc.wrd(v:bat[:oid,:oid],digits:int,scale:int):bat[:oid,:wrd] +address batnil_2dec_wrd; +comment cast to dec(wrd) and check for overflow + +command batcalc.wrd(v:bat[:oid,:oid],digits:int):bat[:oid,:wrd] +address batnil_2num_wrd; +comment cast to wrd and check for overflow + pattern batcalc.wrd_noerror(b:bat[:oid,:str],s:bat[:oid,:oid]):bat[:oid,:wrd] address CMDconvert_wrd; comment cast from str to wrd with candidates list @@ -40531,6 +40555,10 @@ command batmtime.seconds(d:bat[:oid,:day address MTIMEdaytime_extract_seconds_bulk; command batmtime.year(d:bat[:oid,:date]):bat[:oid,:int] address MTIMEdate_extract_year_bulk; +command batmkey.hash(b:bat[:oid,:any_1]):bat[:oid,:wrd] +address MKEYbathash; +comment calculate a hash value + command bat.append(i:bat[:any_1,:any_2],u:any_2,force:bit):bat[:any_1,:any_2] address BKCappend_val_force_wrap; comment append the value u to i @@ -40563,10 +40591,6 @@ command bat.delete(b:bat[:any_1,:any_2], address BKCdelete_bat_bun; comment Delete from the first BAT all BUNs with a corresponding BUN in the second. -command bat.deleteHead(b:bat[:any_1,:any_2],src:bat[:any_1,:any]):bat[:any_1,:any_2] -address BKCdelete_bat; -comment Delete from the first BAT all BUNs with a corresponding head in the second. - command bat.delete(b:bat[:any_1,:any_2]):bat[:any_1,:any_2] address BKCdelete_all; comment Delete all BUNs in a BAT. @@ -40851,7 +40875,11 @@ command bat.shrink(b:bat[:oid,:any_1],de address BKCshrinkBAT; comment Shrink the BAT based on a list of entries identified as to-be-deleted -command bat.setHash(b:bat[:oid,:any_2],prop:bit):bit +command bat.setImprints(b:bat[:oid,:any_2]):bit +address BKCsetImprints; +comment Create n imprints structure on the column + +command bat.setHash(b:bat[:oid,:any_2]):bit address BKCsetHash; comment Create a hash structure on the column @@ -48566,6 +48594,10 @@ command calc.second_interval(sc:int,v:ln address lng_dec2second_interval; comment cast lng decimal to a second_interval +command calc.second_interval(sc:int,v:wrd,ek:int,sk:int):lng +address wrd_dec2second_interval; +comment cast wrd decimal to a second_interval + command calc.second_interval(sc:int,v:int,ek:int,sk:int):lng address int_dec2second_interval; comment cast int decimal to a second_interval @@ -49151,6 +49183,22 @@ command calc.wrd(v:flt,digits:int,scale: address flt_num2dec_wrd; comment cast number to decimal(wrd) and check for overflow +command calc.wrd(v:str,digits:int,scale:int):wrd +address str_2dec_wrd; +comment cast to dec(wrd) and check for overflow + +command calc.wrd(v:str,digits:int):wrd +address str_2num_wrd; +comment cast to wrd and check for overflow + +command calc.wrd(v:void,digits:int,scale:int):wrd +address nil_2dec_wrd; +comment cast to dec(wrd) and check for overflow + +command calc.wrd(v:void,digits:int):wrd +address nil_2num_wrd; +comment cast to wrd and check for overflow + command calc.wkb(v:wkb):wkb address wkbFromWKB; command calc.wkb{unsafe}(v:str):wkb @@ -51001,31 +51049,45 @@ comment post: [:xor=]([:rotate=](h, nbit command mkey.hash(v:hge):wrd address MKEYhash_hge; -command mkey.hash(b:bat[:oid,:any_1]):bat[:oid,:wrd] -address MKEYbathash; +pattern mkey.hash(v:str):wrd +address MKEYhash; comment calculate a hash value -command mkey.hash(v:str):wrd -address MKEYhash_str; -command mkey.hash(v:lng):wrd -address MKEYhash_lng; _______________________________________________ checkin-list mailing list checkin-list@monetdb.org https://www.monetdb.org/mailman/listinfo/checkin-list