Changeset: ba874198a299 for MonetDB URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=ba874198a299 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/backends/monet5/datacell/Tests/emilifinish.stable.err sql/backends/monet5/datacell/Tests/emilifinish.stable.out sql/backends/monet5/datacell/Tests/emilistart.sql sql/backends/monet5/datacell/Tests/emilistart.stable.err sql/backends/monet5/datacell/Tests/emilistart.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 Removed Files: monetdb5/modules/mal/Tests/pqueueElim.mal monetdb5/modules/mal/Tests/pqueueElim.stable.err monetdb5/modules/mal/Tests/pqueueElim.stable.out sql/backends/monet5/datacell/Tests/emili.sql 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/dump.c clients/mapiclient/mclient.c clients/mapiclient/tomograph.c clients/odbc/driver/SQLColAttribute.c clients/odbc/driver/SQLColumnPrivileges.c clients/odbc/driver/SQLColumns.c clients/odbc/driver/SQLForeignKeys.c clients/odbc/driver/SQLPrimaryKeys.c clients/odbc/driver/SQLProcedures.c clients/odbc/driver/SQLSpecialColumns.c clients/odbc/driver/SQLStatistics.c clients/odbc/driver/SQLTablePrivileges.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/Tests/All monetdb5/modules/mal/Tests/pqueue.mal monetdb5/modules/mal/Tests/pqueue.stable.out monetdb5/modules/mal/Tests/pqueue2.mal monetdb5/modules/mal/bbp.c monetdb5/modules/mal/mal_io.c monetdb5/modules/mal/pqueue.c monetdb5/modules/mal/pqueue.h monetdb5/modules/mal/pqueue.mal 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_pushselect.c monetdb5/optimizer/opt_remap.c monetdb5/optimizer/opt_remoteQueries.c sql/ChangeLog sql/backends/monet5/datacell/Tests/All sql/backends/monet5/datacell/Tests/dcload.sql sql/backends/monet5/datacell/Tests/dcload.stable.err sql/backends/monet5/datacell/opt_datacell.c sql/backends/monet5/datacell/opt_datacell.h sql/backends/monet5/datacell/petrinet.c 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_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_exp.c sql/server/rel_exp.h sql/server/rel_optimizer.c sql/server/rel_planner.c sql/server/rel_select.c sql/server/sql_privileges.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/Tests/systemfunctions.stable.out sql/test/Tests/systemfunctions_nogeom.stable.out sql/test/Tests/trace_nogeom.stable.out 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: bamloader Log Message:
Merged diffs (truncated from 31903 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 @@ -2667,13 +2667,9 @@ command algebra.sort(b:bat[:any_1,:any_2 address ALGhsort; comment Returns a BAT copy sorted on the head column. -command algebra.subsample(b:bat[:oid,:any_1],num:int):bat[:oid,:oid] -address ALGsubsample; -comment Return the oids of a random selection of size 'num' from the input BAT. - -command algebra.sample(b:bat[:oid,:any_2],num:int):bat[:oid,:any_2] +command algebra.sample(b:bat[:oid,:any_1],num:int):bat[:oid,:oid] address ALGsample; -comment Produce a random selection of size 'num' from the input BAT. +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; @@ -3021,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. @@ -3049,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. @@ -3093,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. @@ -41022,13 +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,:any_1],n:wrd,elim:bit):bat[:oid,:oid] -address PQtopn_max; -comment Return the top n elements using a min-pqueue with/without duplicate elimination - -pattern pqueue.topn_min(a:bat[:oid,:any_1],n:wrd,elim:bit):bat[:oid,:oid] -address PQtopn_min; -comment Return the top n elements using a min-pqueue with/without duplicate elimination +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 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 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 + +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 command pqueue.topn_max(a:bat[:oid,:oid],t:bat[:void,:any_1],n:wrd):bat[:oid,:oid] address PQtopn2_anymax; @@ -41388,18 +41480,14 @@ pattern recycle.setCache(clines:int):voi address RECYCLEsetCache; comment Set recycler cache line parameter -command sample.subuniform(b:bat[:oid,:any],s:wrd):bat[:oid,:oid] -address SAMPLEsubuniform; +command sample.uniform(b:bat[:oid,:any],p:dbl):bat[:oid,:oid] +address SAMPLEuniform_dbl; +comment Returns the oids of a uniform sample of size = (p x count(b)), where 0 <= p <= 1.0 + +command sample.uniform(b:bat[:oid,:any],s:wrd):bat[:oid,:oid] +address SAMPLEuniform; comment Returns the oids of a uniform sample of size s -command sample.uniform(b:bat[:oid,:any],p:dbl):bat[:oid,:any] -address SAMPLEuniform_dbl; -comment Returns a uniform sample of size = (p x count(b)), where 0 <= p <= 1.0 - -command sample.uniform(b:bat[:oid,:any],s:wrd):bat[:oid,:any] -address SAMPLEuniform; -comment Returns a uniform sample of size s - command sabaoth.epilogue():void address SABepilogue; comment Release the resources held by the sabaoth module @@ -41764,22 +41852,6 @@ pattern sql.eval(cmd:str):void address SQLstatement; comment Compile and execute a single sql statement -pattern sql.gzexpand(sch:str,tbl:str):void -address SQLexpand; -comment Remove the compressed image - -pattern sql.gztruncate(sch:str,tbl:str):void -address SQLtruncate; -comment Remove the tables when you have a compressed image - -pattern sql.gzdecompress(sch:str,tbl:str):void -address SQLgzdecompress; -comment Perform LZ decompression on a table - -pattern sql.gzcompress(sch:str,tbl:str):void -address SQLgzcompress; -comment Perform LZ compression on a table - command sql.getVersion(clientid:int):lng address mvc_getVersion; comment Return the database version identifier for a client @@ -42127,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. @@ -42159,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. @@ -42213,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 @@ -2667,13 +2667,9 @@ command algebra.sort(b:bat[:any_1,:any_2 address ALGhsort; comment Returns a BAT copy sorted on the head column. -command algebra.subsample(b:bat[:oid,:any_1],num:int):bat[:oid,:oid] -address ALGsubsample; -comment Return the oids of a random selection of size 'num' from the input BAT. - -command algebra.sample(b:bat[:oid,:any_2],num:int):bat[:oid,:any_2] +command algebra.sample(b:bat[:oid,:any_1],num:int):bat[:oid,:oid] address ALGsample; -comment Produce a random selection of size 'num' from the input BAT. +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; @@ -3033,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. _______________________________________________ checkin-list mailing list checkin-list@monetdb.org https://www.monetdb.org/mailman/listinfo/checkin-list