Changeset: 1ce852d1a673 for MonetDB URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=1ce852d1a673 Added Files: gdk/gdk_firstn.c monetdb5/tests/gdkTests/Tests/firstn.mal monetdb5/tests/gdkTests/Tests/firstn.stable.err monetdb5/tests/gdkTests/Tests/firstn.stable.out Removed Files: monetdb5/modules/mal/pqueue.c monetdb5/modules/mal/pqueue.h monetdb5/modules/mal/pqueue.mal Modified Files: NT/installer32/MonetDB5-SQL-Installer.vdproj NT/installer64/MonetDB5-SQL-Installer.vdproj 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/exports.stable.out gdk/Makefile.ag gdk/gdk.h java/src/nl/cwi/monetdb/jdbc/MonetDatabaseMetaData.java monetdb5/modules/kernel/algebra.c monetdb5/modules/kernel/algebra.h monetdb5/modules/kernel/algebra.mal monetdb5/modules/mal/Makefile.ag monetdb5/modules/mal/Tests/pqueue.mal monetdb5/modules/mal/Tests/pqueue.stable.out monetdb5/modules/mal/Tests/pqueue2.mal monetdb5/modules/mal/Tests/pqueue2.stable.out monetdb5/modules/mal/Tests/pqueue3.mal monetdb5/modules/mal/Tests/pqueue3.stable.out monetdb5/modules/mal/mal_init.mal monetdb5/optimizer/opt_centipede.c monetdb5/optimizer/opt_prelude.c monetdb5/optimizer/opt_prelude.h monetdb5/optimizer/opt_support.c monetdb5/tests/gdkTests/Tests/All sql/backends/monet5/rel_bin.c sql/backends/monet5/sql.c sql/backends/monet5/sql_gencode.c sql/benchmarks/tpch/Tests/02-explain.stable.out sql/benchmarks/tpch/Tests/03-explain.stable.out sql/benchmarks/tpch/Tests/10-explain.stable.out sql/benchmarks/tpch/Tests/18-explain.stable.out sql/benchmarks/tpch/Tests/21-explain.stable.out sql/benchmarks/tpch/Tests/21-explain.stable.out.32bit sql/server/rel_select.c sql/server/sql_parser.y sql/test/BugTracker-2010/Tests/LIMIT_OFFSET_big-endian.Bug-2622.stable.out sql/test/pg_regress/Tests/numeric.sql sql/test/pg_regress/Tests/numeric.stable.err sql/test/pg_regress/Tests/numeric.stable.out sql/test/pg_regress/Tests/oid.sql sql/test/pg_regress/Tests/oid.stable.err sql/test/pg_regress/Tests/oid.stable.out sql/test/pg_regress/postgresql2sql99.sh Branch: bamloader Log Message:
Merge with default branch diffs (truncated from 11401 to 300 lines): diff --git a/NT/installer32/MonetDB5-SQL-Installer.vdproj b/NT/installer32/MonetDB5-SQL-Installer.vdproj --- a/NT/installer32/MonetDB5-SQL-Installer.vdproj +++ b/NT/installer32/MonetDB5-SQL-Installer.vdproj @@ -927,12 +927,6 @@ } "Entry" { - "MsmKey" = "8:_F4DDA57B13344198B902859413BF2B9D" - "OwnerKey" = "8:_UNDEFINED" - "MsmSig" = "8:_UNDEFINED" - } - "Entry" - { "MsmKey" = "8:_F671CE9CE9A64006AFFFAFBCBDA8EDCE" "OwnerKey" = "8:_UNDEFINED" "MsmSig" = "8:_UNDEFINED" @@ -4052,26 +4046,6 @@ "IsDependency" = "11:FALSE" "IsolateTo" = "8:" } - "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_F4DDA57B13344198B902859413BF2B9D" - { - "SourcePath" = "8:lib\\monetdb5\\pqueue.mal" - "TargetName" = "8:pqueue.mal" - "Tag" = "8:" - "Folder" = "8:_B593DAA0787744D6A44D17884E0C3951" - "Condition" = "8:" - "Transitive" = "11:FALSE" - "Vital" = "11:TRUE" - "ReadOnly" = "11:FALSE" - "Hidden" = "11:FALSE" - "System" = "11:FALSE" - "Permanent" = "11:FALSE" - "SharedLegacy" = "11:FALSE" - "PackageAs" = "3:1" - "Register" = "3:1" - "Exclude" = "11:FALSE" - "IsDependency" = "11:FALSE" - "IsolateTo" = "8:" - } "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_F671CE9CE9A64006AFFFAFBCBDA8EDCE" { "SourcePath" = "8:lib\\monetdb5\\createdb\\23_skyserver.sql" diff --git a/NT/installer64/MonetDB5-SQL-Installer.vdproj b/NT/installer64/MonetDB5-SQL-Installer.vdproj --- a/NT/installer64/MonetDB5-SQL-Installer.vdproj +++ b/NT/installer64/MonetDB5-SQL-Installer.vdproj @@ -927,12 +927,6 @@ } "Entry" { - "MsmKey" = "8:_F4DDA57B13344198B902859413BF2B9D" - "OwnerKey" = "8:_UNDEFINED" - "MsmSig" = "8:_UNDEFINED" - } - "Entry" - { "MsmKey" = "8:_F671CE9CE9A64006AFFFAFBCBDA8EDCE" "OwnerKey" = "8:_UNDEFINED" "MsmSig" = "8:_UNDEFINED" @@ -4052,26 +4046,6 @@ "IsDependency" = "11:FALSE" "IsolateTo" = "8:" } - "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_F4DDA57B13344198B902859413BF2B9D" - { - "SourcePath" = "8:lib\\monetdb5\\pqueue.mal" - "TargetName" = "8:pqueue.mal" - "Tag" = "8:" - "Folder" = "8:_B593DAA0787744D6A44D17884E0C3951" - "Condition" = "8:" - "Transitive" = "11:FALSE" - "Vital" = "11:TRUE" - "ReadOnly" = "11:FALSE" - "Hidden" = "11:FALSE" - "System" = "11:FALSE" - "Permanent" = "11:FALSE" - "SharedLegacy" = "11:FALSE" - "PackageAs" = "3:1" - "Register" = "3:1" - "Exclude" = "11:FALSE" - "IsDependency" = "11:FALSE" - "IsolateTo" = "8:" - } "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_F671CE9CE9A64006AFFFAFBCBDA8EDCE" { "SourcePath" = "8:lib\\monetdb5\\createdb\\23_skyserver.sql" 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 @@ -2422,6 +2422,30 @@ command algebra.exist(b:bat[:oid,:any_1] address ALGexist; comment Returns whether 'val' occurs in b. +pattern algebra.firstn(b:bat[:oid,:any],s:bat[:oid,:oid],g:bat[:oid,:oid],n:wrd,asc:bit) (X_6:bat[:oid,:oid],X_7:bat[:oid,:oid]) +address ALGfirstn; +comment Calculate first N values of B with candidate list S + +pattern algebra.firstn(b:bat[:oid,:any],s:bat[:oid,:oid],n:wrd,asc:bit) (X_5:bat[:oid,:oid],X_6:bat[:oid,:oid]) +address ALGfirstn; +comment Calculate first N values of B with candidate list S + +pattern algebra.firstn(b:bat[:oid,:any],n:wrd,asc:bit) (X_4:bat[:oid,:oid],X_5:bat[:oid,:oid]) +address ALGfirstn; +comment Calculate first N values of B + +pattern algebra.firstn(b:bat[:oid,:any],s:bat[:oid,:oid],g:bat[:oid,:oid],n:wrd,asc:bit):bat[:oid,:oid] +address ALGfirstn; +comment Calculate first N values of B with candidate list S + +pattern algebra.firstn(b:bat[:oid,:any],s:bat[:oid,:oid],n:wrd,asc:bit):bat[:oid,:oid] +address ALGfirstn; +comment Calculate first N values of B with candidate list S + +pattern algebra.firstn(b:bat[:oid,:any],n:wrd,asc:bit):bat[:oid,:oid] +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 @@ -41031,32 +41055,6 @@ command pcre.select(pat:str,strs:bat[:oi address PCREselectDef; comment Select tuples based on the pattern -function pqueue.topn_max(a:bat[:oid,:any_1],bp:bat[:oid,:oid],bg:bat[:oid,:oid],n:wrd):bat[:oid,:oid]; -function pqueue.topn_min(a:bat[:oid,:any_1],bp:bat[:oid,:oid],bg:bat[:oid,:oid],n:wrd):bat[:oid,:oid]; -pattern pqueue.topn_max(a:bat[:oid,:any_1],bp:bat[:oid,:oid],bg:bat[:oid,:oid],n:wrd) (cp:bat[:oid,:oid],cg:bat[:oid,:oid]) -address PQtopn3_minmax; -comment Return unique top n within groups - -pattern pqueue.topn_min(a:bat[:oid,:any_1],bp:bat[:oid,:oid],bg:bat[:oid,:oid],n:wrd) (cp:bat[:oid,:oid],cg:bat[:oid,:oid]) -address PQtopn3_minmax; -comment Return unique top n within groups - -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 - pattern profiler.activate(name:str...):void address CMDactivateProfiler; comment A list of counters to be activated. 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 @@ -2422,6 +2422,30 @@ command algebra.exist(b:bat[:oid,:any_1] address ALGexist; comment Returns whether 'val' occurs in b. +pattern algebra.firstn(b:bat[:oid,:any],s:bat[:oid,:oid],g:bat[:oid,:oid],n:wrd,asc:bit) (X_6:bat[:oid,:oid],X_7:bat[:oid,:oid]) +address ALGfirstn; +comment Calculate first N values of B with candidate list S + +pattern algebra.firstn(b:bat[:oid,:any],s:bat[:oid,:oid],n:wrd,asc:bit) (X_5:bat[:oid,:oid],X_6:bat[:oid,:oid]) +address ALGfirstn; +comment Calculate first N values of B with candidate list S + +pattern algebra.firstn(b:bat[:oid,:any],n:wrd,asc:bit) (X_4:bat[:oid,:oid],X_5:bat[:oid,:oid]) +address ALGfirstn; +comment Calculate first N values of B + +pattern algebra.firstn(b:bat[:oid,:any],s:bat[:oid,:oid],g:bat[:oid,:oid],n:wrd,asc:bit):bat[:oid,:oid] +address ALGfirstn; +comment Calculate first N values of B with candidate list S + +pattern algebra.firstn(b:bat[:oid,:any],s:bat[:oid,:oid],n:wrd,asc:bit):bat[:oid,:oid] +address ALGfirstn; +comment Calculate first N values of B with candidate list S + +pattern algebra.firstn(b:bat[:oid,:any],n:wrd,asc:bit):bat[:oid,:oid] +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 @@ -41047,32 +41071,6 @@ command pcre.select(pat:str,strs:bat[:oi address PCREselectDef; comment Select tuples based on the pattern -function pqueue.topn_max(a:bat[:oid,:any_1],bp:bat[:oid,:oid],bg:bat[:oid,:oid],n:wrd):bat[:oid,:oid]; -function pqueue.topn_min(a:bat[:oid,:any_1],bp:bat[:oid,:oid],bg:bat[:oid,:oid],n:wrd):bat[:oid,:oid]; -pattern pqueue.topn_max(a:bat[:oid,:any_1],bp:bat[:oid,:oid],bg:bat[:oid,:oid],n:wrd) (cp:bat[:oid,:oid],cg:bat[:oid,:oid]) -address PQtopn3_minmax; -comment Return unique top n within groups - -pattern pqueue.topn_min(a:bat[:oid,:any_1],bp:bat[:oid,:oid],bg:bat[:oid,:oid],n:wrd) (cp:bat[:oid,:oid],cg:bat[:oid,:oid]) -address PQtopn3_minmax; -comment Return unique top n within groups - -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 - pattern profiler.activate(name:str...):void address CMDactivateProfiler; comment A list of counters to be activated. diff --git a/clients/Tests/MAL-signatures_nocfitsio.stable.out b/clients/Tests/MAL-signatures_nocfitsio.stable.out --- a/clients/Tests/MAL-signatures_nocfitsio.stable.out +++ b/clients/Tests/MAL-signatures_nocfitsio.stable.out @@ -2422,6 +2422,30 @@ command algebra.exist(b:bat[:oid,:any_1] address ALGexist; comment Returns whether 'val' occurs in b. +pattern algebra.firstn(b:bat[:oid,:any],s:bat[:oid,:oid],g:bat[:oid,:oid],n:wrd,asc:bit) (X_6:bat[:oid,:oid],X_7:bat[:oid,:oid]) +address ALGfirstn; +comment Calculate first N values of B with candidate list S + +pattern algebra.firstn(b:bat[:oid,:any],s:bat[:oid,:oid],n:wrd,asc:bit) (X_5:bat[:oid,:oid],X_6:bat[:oid,:oid]) +address ALGfirstn; +comment Calculate first N values of B with candidate list S + +pattern algebra.firstn(b:bat[:oid,:any],n:wrd,asc:bit) (X_4:bat[:oid,:oid],X_5:bat[:oid,:oid]) +address ALGfirstn; +comment Calculate first N values of B + +pattern algebra.firstn(b:bat[:oid,:any],s:bat[:oid,:oid],g:bat[:oid,:oid],n:wrd,asc:bit):bat[:oid,:oid] +address ALGfirstn; +comment Calculate first N values of B with candidate list S + +pattern algebra.firstn(b:bat[:oid,:any],s:bat[:oid,:oid],n:wrd,asc:bit):bat[:oid,:oid] +address ALGfirstn; +comment Calculate first N values of B with candidate list S + +pattern algebra.firstn(b:bat[:oid,:any],n:wrd,asc:bit):bat[:oid,:oid] +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 @@ -41007,32 +41031,6 @@ command pcre.select(pat:str,strs:bat[:oi address PCREselectDef; comment Select tuples based on the pattern -function pqueue.topn_max(a:bat[:oid,:any_1],bp:bat[:oid,:oid],bg:bat[:oid,:oid],n:wrd):bat[:oid,:oid]; -function pqueue.topn_min(a:bat[:oid,:any_1],bp:bat[:oid,:oid],bg:bat[:oid,:oid],n:wrd):bat[:oid,:oid]; -pattern pqueue.topn_max(a:bat[:oid,:any_1],bp:bat[:oid,:oid],bg:bat[:oid,:oid],n:wrd) (cp:bat[:oid,:oid],cg:bat[:oid,:oid]) -address PQtopn3_minmax; -comment Return unique top n within groups - -pattern pqueue.topn_min(a:bat[:oid,:any_1],bp:bat[:oid,:oid],bg:bat[:oid,:oid],n:wrd) (cp:bat[:oid,:oid],cg:bat[:oid,:oid]) -address PQtopn3_minmax; -comment Return unique top n within groups - -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 - pattern profiler.activate(name:str...):void address CMDactivateProfiler; comment A list of counters to be activated. diff --git a/clients/Tests/MAL-signatures_sphinxclient.stable.out b/clients/Tests/MAL-signatures_sphinxclient.stable.out --- a/clients/Tests/MAL-signatures_sphinxclient.stable.out +++ b/clients/Tests/MAL-signatures_sphinxclient.stable.out @@ -2422,6 +2422,30 @@ command algebra.exist(b:bat[:oid,:any_1] address ALGexist; comment Returns whether 'val' occurs in b. +pattern algebra.firstn(b:bat[:oid,:any],s:bat[:oid,:oid],g:bat[:oid,:oid],n:wrd,asc:bit) (X_6:bat[:oid,:oid],X_7:bat[:oid,:oid]) +address ALGfirstn; +comment Calculate first N values of B with candidate list S + +pattern algebra.firstn(b:bat[:oid,:any],s:bat[:oid,:oid],n:wrd,asc:bit) (X_5:bat[:oid,:oid],X_6:bat[:oid,:oid]) +address ALGfirstn; _______________________________________________ checkin-list mailing list checkin-list@monetdb.org https://www.monetdb.org/mailman/listinfo/checkin-list