Changeset: 823eb11dc4ed for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=823eb11dc4ed
Added Files:
        monetdb5/modules/atoms/Tests/strpad.mal
        monetdb5/modules/atoms/Tests/strpad.stable.err
        monetdb5/modules/atoms/Tests/strpad.stable.out
        monetdb5/modules/atoms/Tests/strtrim.mal
        monetdb5/modules/atoms/Tests/strtrim.stable.err
        monetdb5/modules/atoms/Tests/strtrim.stable.out
        sql/test/Tests/str-pad.sql
        sql/test/Tests/str-pad.stable.err
        sql/test/Tests/str-pad.stable.out
        sql/test/Tests/str-trim.sql
        sql/test/Tests/str-trim.stable.err
        sql/test/Tests/str-trim.stable.out
Modified Files:
        clients/Tests/MAL-signatures.stable.out
        clients/Tests/MAL-signatures_gsl.stable.out
        clients/Tests/MAL-signatures_nocfitsio.stable.out
        clients/Tests/MAL-signatures_sphinxclient.stable.out
        clients/Tests/SQL-dump.stable.out
        clients/Tests/SQL-dump.stable.out.64bit.oid32
        clients/Tests/SQL-dump_gsl.stable.out
        clients/Tests/SQL-dump_gsl.stable.out.oid32
        clients/Tests/SQL-dump_nogeom.stable.out
        clients/Tests/exports.stable.out
        clients/mapiclient/mclient.c
        clients/mapiclient/tomograph.c
        clients/odbc/driver/SQLTables.c
        common/stream/stream.c
        gdk/gdk.h
        gdk/gdk_imprints.c
        gdk/gdk_storage.c
        gdk/gdk_system.c
        gdk/gdk_utils.c
        monetdb5/extras/sphinx/sphinx.c
        monetdb5/mal/mal_builder.c
        monetdb5/mal/mal_debugger.c
        monetdb5/mal/mal_function.c
        monetdb5/mal/mal_profiler.c
        monetdb5/mal/mal_profiler.h
        monetdb5/mal/mal_readline.c
        monetdb5/mal/mal_recycle.c
        monetdb5/mal/mal_resolve.c
        monetdb5/modules/atoms/inet.c
        monetdb5/modules/atoms/str.c
        monetdb5/modules/atoms/str.h
        monetdb5/modules/atoms/str.mal
        monetdb5/modules/atoms/url.c
        monetdb5/modules/kernel/aggr.c
        monetdb5/modules/kernel/batstr.c
        monetdb5/modules/kernel/batstr.mal
        monetdb5/modules/mal/bbp.c
        monetdb5/modules/mal/mal_io.c
        monetdb5/modules/mal/profiler.c
        monetdb5/modules/mal/remote.c
        monetdb5/modules/mal/sysmon.c
        monetdb5/optimizer/opt_cluster.c
        monetdb5/optimizer/opt_dataflow.c
        monetdb5/optimizer/opt_macro.c
        monetdb5/optimizer/opt_mergetable.c
        monetdb5/optimizer/opt_multiplex.c
        monetdb5/optimizer/opt_remap.c
        monetdb5/optimizer/opt_remoteQueries.c
        sql/ChangeLog
        sql/backends/monet5/sql.c
        sql/backends/monet5/sql_cast.c
        sql/backends/monet5/sql_optimizer.c
        sql/backends/monet5/sql_scenario.c
        sql/backends/monet5/sql_statistics.c
        sql/backends/monet5/vaults/fits.c
        sql/common/sql_types.c
        sql/server/rel_planner.c
        sql/server/rel_select.c
        sql/test/Tests/50ways.stable.err
        sql/test/Tests/coalesce.stable.err
        sql/test/Tests/create_in_schema.stable.err
        sql/test/Tests/decimal.stable.err
        sql/test/Tests/default.stable.err
        sql/test/Tests/function_syntax.stable.err
        sql/test/Tests/identifiers.stable.err
        sql/test/Tests/marcin2.stable.err
        sql/test/Tests/marcin3.stable.err
        sql/test/Tests/null.stable.err
        sql/test/Tests/orderby_non_selection_column.stable.out
        sql/test/Tests/procedure_syntax.stable.err
        sql/test/Tests/session_vars.stable.err
        sql/test/Tests/setoptimizer.stable.err
        sql/test/leaks/Tests/check1.stable.out
        sql/test/leaks/Tests/check1_gsl.stable.out
        sql/test/leaks/Tests/check1_nogeom.stable.out
        sql/test/leaks/Tests/check2.stable.out
        sql/test/leaks/Tests/check2_gsl.stable.out
        sql/test/leaks/Tests/check2_nogeom.stable.out
        sql/test/leaks/Tests/check3.stable.out
        sql/test/leaks/Tests/check3_gsl.stable.out
        sql/test/leaks/Tests/check3_nogeom.stable.out
        sql/test/leaks/Tests/check4.stable.out
        sql/test/leaks/Tests/check4_gsl.stable.out
        sql/test/leaks/Tests/check4_nogeom.stable.out
        sql/test/leaks/Tests/check5.stable.out
        sql/test/leaks/Tests/check5_gsl.stable.out
        sql/test/leaks/Tests/check5_nogeom.stable.out
        tools/merovingian/client/monetdb.c
        tools/merovingian/daemon/argvcmds.c
        tools/merovingian/daemon/peering.c
Branch: newstorage
Log Message:

merged with default


diffs (truncated from 26804 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
@@ -3017,6 +3017,38 @@ command batstr.like(s:bat[:oid,:str],pat
 address BATPCRElike2;
 command batstr.like(s:bat[:oid,:str],pat:str,esc:str):bat[:oid,:bit] 
 address BATPCRElike;
+command 
batstr.lpad(s:bat[:oid,:str],n:bat[:oid,:int],s2:bat[:oid,:str]):bat[:oid,:str] 
+address STRbatLpad2_bat_bat;
+comment Prepend the second strings to the first strings to reach the given 
lengths. Truncate the first strings on the right if their lengths is larger 
than the given lengths.
+
+command batstr.lpad(s:bat[:oid,:str],n:int,s2:bat[:oid,:str]):bat[:oid,:str] 
+address STRbatLpad2_const_bat;
+comment Prepend the second strings to the first strings to reach the given 
length. Truncate the first strings on the right if their lengths is larger than 
the given length.
+
+command batstr.lpad(s:bat[:oid,:str],n:bat[:oid,:int],s2:str):bat[:oid,:str] 
+address STRbatLpad2_bat_const;
+comment Prepend the second string to the first strings to reach the given 
lengths. Truncate the first strings on the right if their lengths is larger 
than the given lengths.
+
+command batstr.lpad(s:bat[:oid,:str],n:int,s2:str):bat[:oid,:str] 
+address STRbatLpad2_const_const;
+comment Prepend the second string to the first strings to reach the given 
length. Truncate the first strings on the right if their lengths is larger than 
the given length.
+
+command batstr.lpad(s:bat[:oid,:str],n:bat[:oid,:int]):bat[:oid,:str] 
+address STRbatLpad_bat;
+comment Prepend whitespaces to the strings to reach the given lengths. 
Truncate the strings on the right if their lengths is larger than the given 
lengths.
+
+command batstr.lpad(s:bat[:oid,:str],n:int):bat[:oid,:str] 
+address STRbatLpad_const;
+comment Prepend whitespaces to the strings to reach the given length. Truncate 
the strings on the right if their lengths is larger than the given length.
+
+command batstr.ltrim(s:bat[:oid,:str],s2:bat[:oid,:str]):bat[:oid,:str] 
+address STRbatLtrim2_bat;
+comment Strip characters in the second strings from start of the first strings.
+
+command batstr.ltrim(s:bat[:oid,:str],s2:str):bat[:oid,:str] 
+address STRbatLtrim2_const;
+comment Strip characters in the second string from start of the first strings.
+
 command batstr.ltrim(s:bat[:oid,:str]):bat[:oid,:str] 
 address STRbatLtrim;
 comment Strip whitespaces from start of a string.
@@ -3045,6 +3077,38 @@ command batstr.r_search(s:bat[:oid,:str]
 address STRbatRstrSearch;
 comment Reverse search for a substring. Returns position, -1 if not found.
 
+command 
batstr.rpad(s:bat[:oid,:str],n:bat[:oid,:int],s2:bat[:oid,:str]):bat[:oid,:str] 
+address STRbatRpad2_bat_bat;
+comment Append the second strings to the first strings to reach the given 
lengths. Truncate the first strings on the right if their lengths is larger 
than the given lengths.
+
+command batstr.rpad(s:bat[:oid,:str],n:int,s2:bat[:oid,:str]):bat[:oid,:str] 
+address STRbatRpad2_const_bat;
+comment Append the second strings to the first strings to reach the given 
length. Truncate the first strings on the right if their lengths is larger than 
the given length.
+
+command batstr.rpad(s:bat[:oid,:str],n:bat[:oid,:int],s2:str):bat[:oid,:str] 
+address STRbatRpad2_bat_const;
+comment Append the second string to the first strings to reach the given 
lengths. Truncate the first strings on the right if their lengths is larger 
than the given lengths.
+
+command batstr.rpad(s:bat[:oid,:str],n:int,s2:str):bat[:oid,:str] 
+address STRbatRpad2_const_const;
+comment Append the second string to the first strings to reach the given 
length. Truncate the first strings on the right if their lengths is larger than 
the given length.
+
+command batstr.rpad(s:bat[:oid,:str],n:bat[:oid,:int]):bat[:oid,:str] 
+address STRbatRpad_bat;
+comment Append whitespaces to the strings to reach the given lengths. Truncate 
the strings on the right if their lengths is larger than the given lengths.
+
+command batstr.rpad(s:bat[:oid,:str],n:int):bat[:oid,:str] 
+address STRbatRpad_const;
+comment Append whitespaces to the strings to reach the given length. Truncate 
the strings on the right if their lengths is larger than the given length.
+
+command batstr.rtrim(s:bat[:oid,:str],s2:bat[:oid,:str]):bat[:oid,:str] 
+address STRbatRtrim2_bat;
+comment Strip characters in the second strings from end of the first strings.
+
+command batstr.rtrim(s:bat[:oid,:str],s2:str):bat[:oid,:str] 
+address STRbatRtrim2_const;
+comment Strip characters in the second string from end of the first strings.
+
 command batstr.rtrim(s:bat[:oid,:str]):bat[:oid,:str] 
 address STRbatRtrim;
 comment Strip whitespaces from end of a string.
@@ -3089,6 +3153,14 @@ command batstr.stringlength(s:bat[:oid,:
 address STRbatstringLength;
 comment Return the length of a right trimed string.
 
+command batstr.trim(s:bat[:oid,:str],s2:bat[:oid,:str]):bat[:oid,:str] 
+address STRbatStrip2_bat;
+comment Strip characters in the second strings around the first strings.
+
+command batstr.trim(s:bat[:oid,:str],s2:str):bat[:oid,:str] 
+address STRbatStrip2_const;
+comment Strip characters in the second string around the first strings.
+
 command batstr.trim(s:bat[:oid,:str]):bat[:oid,:str] 
 address STRbatStrip;
 comment Strip whitespaces around a string.
@@ -41018,21 +41090,37 @@ command pcre.select(pat:str,strs:bat[:oi
 address PCREselectDef;
 comment Select tuples based on the pattern
 
-pattern 
pqueue.topn_max(a:bat[:oid,:oid],b:bat[:oid,:any_1],n:wrd,elim:bit):bat[:oid,:oid]
 
+pattern pqueue.topn_max(g:bat[:oid,:oid],b:bat[:oid,:any_1],n:wrd) 
(piv:bat[:oid,:oid],gid:bat[:oid,:oid]) 
+address PQtopn4_minmax;
+comment Return unique top n withn groups
+
+pattern pqueue.topn_min(g:bat[:oid,:oid],b:bat[:oid,:any_1],n:wrd) 
(piv:bat[:oid,:oid],gid:bat[:oid,:oid]) 
+address PQtopn4_minmax;
+comment Return unique top n within groups
+
+pattern 
pqueue.topn_max(gid:bat[:oid,:oid],b:bat[:oid,:any_1],n:wrd):bat[:oid,:oid] 
+address PQtopn3_minmax;
+comment Return the top n elements using a max-pqueue
+
+pattern 
pqueue.topn_min(gid:bat[:oid,:oid],b:bat[:oid,:any_1],n:wrd):bat[:oid,:oid] 
+address PQtopn3_minmax;
+comment Return the top n elements using a min-pqueue
+
+pattern pqueue.topn_max(b:bat[:oid,:any_1],n:wrd) 
(piv:bat[:oid,:oid],gid:bat[:oid,:oid]) 
 address PQtopn2_minmax;
-comment Return the top n elements using a max-pqueue with/without duplicate 
elimination
-
-pattern 
pqueue.topn_min(a:bat[:oid,:oid],b:bat[:oid,:any_1],n:wrd,elim:bit):bat[:oid,:oid]
 
+comment Return unique top n withn groups
+
+pattern pqueue.topn_min(b:bat[:oid,:any_1],n:wrd) 
(piv:bat[:oid,:oid],gid:bat[:oid,:oid]) 
 address PQtopn2_minmax;
-comment Return the top n elements using a min-pqueue with/without duplicate 
elimination
-
-pattern pqueue.topn_max(a:bat[:oid,:any_1],n:wrd,elim:bit):bat[:oid,:oid] 
+comment Return unique top n within groups
+
+pattern pqueue.topn_max(a:bat[:oid,:any_1],n:wrd):bat[:oid,:oid] 
 address PQtopn_minmax;
-comment Return the top n elements using a max-pqueue with/without duplicate 
elimination
-
-pattern pqueue.topn_min(a:bat[:oid,:any_1],n:wrd,elim:bit):bat[:oid,:oid] 
+comment Return the top n elements using a max-pqueue
+
+pattern pqueue.topn_min(a:bat[:oid,:any_1],n:wrd):bat[:oid,:oid] 
 address PQtopn_minmax;
-comment Return the top n elements using a min-pqueue with/without duplicate 
elimination
+comment Return the top n elements using a min-pqueue
 
 command 
pqueue.topn_max(a:bat[:oid,:oid],t:bat[:void,:any_1],n:wrd):bat[:oid,:oid] 
 address PQtopn2_anymax;
@@ -41090,10 +41178,6 @@ command pqueue.topn_min(t:bat[:oid,:bte]
 address PQtopn_btemin;
 comment Return the topn elements of the bat t using a min-pqueue
 
-pattern pqueue.utopn_min(b:bat[:oid,:any_1],n:wrd,elim:bit) 
(bp:bat[:oid,:oid],bg:bat[:oid,:any_1]) 
-address PQutopn_minmax;
-comment to be defined
-
 command 
pqueue.utopn_max(a:bat[:oid,:oid],t:bat[:void,:any_1],n:wrd):bat[:oid,:oid] 
 address PQutopn2_anymax;
 comment Return the unique topn elements of the bat t using a max-pqueue
@@ -42115,6 +42199,18 @@ command str.like(s:str,pat:str):bit
 address STRlikewrap2;
 comment SQL pattern match function
 
+command str.lpad(s:str,len:int,s2:str):str 
+address STRLpad2;
+comment Fill up the first string to the given length prepending characters of 
the second string.
+
+command str.lpad(s:str,len:int):str 
+address STRLpad;
+comment Fill up a string to the given length prepending the whitespace 
character.
+
+command str.ltrim(s:str,s2:str):str 
+address STRLtrim2;
+comment Remove the longest string containing only characters from the second 
string from the start of the first string.
+
 command str.ltrim(s:str):str 
 address STRLtrim;
 comment Strip whitespaces from start of a string.
@@ -42147,6 +42243,18 @@ command str.replace(s:str,pat:str,s2:str
 address STRreplace;
 comment Insert a string into another
 
+command str.rpad(s:str,len:int,s2:str):str 
+address STRRpad2;
+comment Fill up the first string to the given length appending characters of 
the second string.
+
+command str.rpad(s:str,len:int):str 
+address STRRpad;
+comment Fill up a string to the given length appending the whitespace 
character.
+
+command str.rtrim(s:str,s2:str):str 
+address STRRtrim2;
+comment Remove the longest string containing only characters from the second 
string from the end of the first string.
+
 command str.rtrim(s:str):str 
 address STRRtrim;
 comment Strip whitespaces from end of a string.
@@ -42201,6 +42309,10 @@ command str.str(s:str):str
 address STRtostr;
 comment Noop routine.
 
+command str.trim(s:str,s2:str):str 
+address STRStrip2;
+comment Remove the longest string containing only characters from the second 
string around the first string.
+
 command str.trim(s:str):str 
 address STRStrip;
 comment Strip whitespaces around a string.
diff --git a/clients/Tests/MAL-signatures_gsl.stable.out 
b/clients/Tests/MAL-signatures_gsl.stable.out
--- a/clients/Tests/MAL-signatures_gsl.stable.out
+++ b/clients/Tests/MAL-signatures_gsl.stable.out
@@ -3029,6 +3029,38 @@ command batstr.like(s:bat[:oid,:str],pat
 address BATPCRElike2;
 command batstr.like(s:bat[:oid,:str],pat:str,esc:str):bat[:oid,:bit] 
 address BATPCRElike;
+command 
batstr.lpad(s:bat[:oid,:str],n:bat[:oid,:int],s2:bat[:oid,:str]):bat[:oid,:str] 
+address STRbatLpad2_bat_bat;
+comment Prepend the second strings to the first strings to reach the given 
lengths. Truncate the first strings on the right if their lengths is larger 
than the given lengths.
+
+command batstr.lpad(s:bat[:oid,:str],n:int,s2:bat[:oid,:str]):bat[:oid,:str] 
+address STRbatLpad2_const_bat;
+comment Prepend the second strings to the first strings to reach the given 
length. Truncate the first strings on the right if their lengths is larger than 
the given length.
+
+command batstr.lpad(s:bat[:oid,:str],n:bat[:oid,:int],s2:str):bat[:oid,:str] 
+address STRbatLpad2_bat_const;
+comment Prepend the second string to the first strings to reach the given 
lengths. Truncate the first strings on the right if their lengths is larger 
than the given lengths.
+
+command batstr.lpad(s:bat[:oid,:str],n:int,s2:str):bat[:oid,:str] 
+address STRbatLpad2_const_const;
+comment Prepend the second string to the first strings to reach the given 
length. Truncate the first strings on the right if their lengths is larger than 
the given length.
+
+command batstr.lpad(s:bat[:oid,:str],n:bat[:oid,:int]):bat[:oid,:str] 
+address STRbatLpad_bat;
+comment Prepend whitespaces to the strings to reach the given lengths. 
Truncate the strings on the right if their lengths is larger than the given 
lengths.
+
+command batstr.lpad(s:bat[:oid,:str],n:int):bat[:oid,:str] 
+address STRbatLpad_const;
+comment Prepend whitespaces to the strings to reach the given length. Truncate 
the strings on the right if their lengths is larger than the given length.
+
+command batstr.ltrim(s:bat[:oid,:str],s2:bat[:oid,:str]):bat[:oid,:str] 
+address STRbatLtrim2_bat;
+comment Strip characters in the second strings from start of the first strings.
+
+command batstr.ltrim(s:bat[:oid,:str],s2:str):bat[:oid,:str] 
+address STRbatLtrim2_const;
+comment Strip characters in the second string from start of the first strings.
+
 command batstr.ltrim(s:bat[:oid,:str]):bat[:oid,:str] 
 address STRbatLtrim;
 comment Strip whitespaces from start of a string.
@@ -3057,6 +3089,38 @@ command batstr.r_search(s:bat[:oid,:str]
 address STRbatRstrSearch;
 comment Reverse search for a substring. Returns position, -1 if not found.
 
+command 
batstr.rpad(s:bat[:oid,:str],n:bat[:oid,:int],s2:bat[:oid,:str]):bat[:oid,:str] 
+address STRbatRpad2_bat_bat;
+comment Append the second strings to the first strings to reach the given 
lengths. Truncate the first strings on the right if their lengths is larger 
than the given lengths.
+
+command batstr.rpad(s:bat[:oid,:str],n:int,s2:bat[:oid,:str]):bat[:oid,:str] 
+address STRbatRpad2_const_bat;
+comment Append the second strings to the first strings to reach the given 
length. Truncate the first strings on the right if their lengths is larger than 
the given length.
+
+command batstr.rpad(s:bat[:oid,:str],n:bat[:oid,:int],s2:str):bat[:oid,:str] 
+address STRbatRpad2_bat_const;
+comment Append the second string to the first strings to reach the given 
lengths. Truncate the first strings on the right if their lengths is larger 
than the given lengths.
+
+command batstr.rpad(s:bat[:oid,:str],n:int,s2:str):bat[:oid,:str] 
+address STRbatRpad2_const_const;
+comment Append the second string to the first strings to reach the given 
length. Truncate the first strings on the right if their lengths is larger than 
the given length.
+
+command batstr.rpad(s:bat[:oid,:str],n:bat[:oid,:int]):bat[:oid,:str] 
+address STRbatRpad_bat;
+comment Append whitespaces to the strings to reach the given lengths. Truncate 
the strings on the right if their lengths is larger than the given lengths.
+
+command batstr.rpad(s:bat[:oid,:str],n:int):bat[:oid,:str] 
+address STRbatRpad_const;
+comment Append whitespaces to the strings to reach the given length. Truncate 
the strings on the right if their lengths is larger than the given length.
+
+command batstr.rtrim(s:bat[:oid,:str],s2:bat[:oid,:str]):bat[:oid,:str] 
+address STRbatRtrim2_bat;
+comment Strip characters in the second strings from end of the first strings.
+
+command batstr.rtrim(s:bat[:oid,:str],s2:str):bat[:oid,:str] 
+address STRbatRtrim2_const;
+comment Strip characters in the second string from end of the first strings.
+
 command batstr.rtrim(s:bat[:oid,:str]):bat[:oid,:str] 
 address STRbatRtrim;
 comment Strip whitespaces from end of a string.
@@ -3101,6 +3165,14 @@ command batstr.stringlength(s:bat[:oid,:
 address STRbatstringLength;
 comment Return the length of a right trimed string.
 
+command batstr.trim(s:bat[:oid,:str],s2:bat[:oid,:str]):bat[:oid,:str] 
+address STRbatStrip2_bat;
+comment Strip characters in the second strings around the first strings.
+
+command batstr.trim(s:bat[:oid,:str],s2:str):bat[:oid,:str] 
+address STRbatStrip2_const;
+comment Strip characters in the second string around the first strings.
+
 command batstr.trim(s:bat[:oid,:str]):bat[:oid,:str] 
 address STRbatStrip;
_______________________________________________
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list

Reply via email to