Changeset: 054f1975f739 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=054f1975f739
Modified Files:
monetdb5/modules/mal/Tests/pqueue2.mal
monetdb5/modules/mal/pqueue.c
monetdb5/modules/mal/pqueue.h
monetdb5/modules/mal/pqueue.mal
Branch: default
Log Message:
Fix typos in new test and add signature.
diffs (184 lines):
diff --git a/monetdb5/modules/mal/Tests/pqueue2.mal
b/monetdb5/modules/mal/Tests/pqueue2.mal
--- a/monetdb5/modules/mal/Tests/pqueue2.mal
+++ b/monetdb5/modules/mal/Tests/pqueue2.mal
@@ -25,13 +25,13 @@ io.print(b);
c:= bat.new(:oid,:str);
-bat.append(c,'sjoerd');
-bat.append(c,'peter');
-bat.append(c,'stefan');
-bat.append(c,'stefan');
-bat.append(c,'niels');
-bat.append(c,'martin');
-bat.append(c,'stefan');
+bat.append(c,"sjoerd");
+bat.append(c,"peter");
+bat.append(c,"stefan");
+bat.append(c,"stefan");
+bat.append(c,"niels");
+bat.append(c,"martin");
+bat.append(c,"stefan");
io.print(c);
@@ -60,7 +60,7 @@ io.print(bp);
# get the same group id.
#
# returns both void,pos, void,gid
-bp,bg:= pqueue.utopn_min(b,0:wrd,false);
+(bp,bg):= pqueue.utopn_min(b,0:wrd,false);
io.print(bp);
io.print(bg);
ap := algebra.leftfetchjoin(bp, a);
@@ -71,7 +71,7 @@ io.print(ap);
bp:= pqueue.topn_min(bg,ap,0:wrd,false);
io.print(bp);
-bp,bg:= pqueue.utopn_min(b,1:wrd,false);
+(bp,bg):= pqueue.utopn_min(b,1:wrd,false);
io.print(bp);
io.print(bg);
ap := algebra.leftfetchjoin(bp, a);
@@ -79,7 +79,7 @@ io.print(ap);
bp:= pqueue.topn_min(bg,ap,1:wrd,false);
io.print(bp);
-bp,bg:= pqueue.utopn_min(b,2:wrd,false);
+(bp,bg):= pqueue.utopn_min(b,2:wrd,false);
io.print(bp);
io.print(bg);
ap := algebra.leftfetchjoin(bp, a);
@@ -87,7 +87,7 @@ io.print(ap);
bp:= pqueue.topn_min(bg,ap,2:wrd,false);
io.print(bp);
-bp,bg:= pqueue.utopn_min(b,3:wrd,false);
+(bp,bg):= pqueue.utopn_min(b,3:wrd,false);
io.print(bp);
io.print(bg);
ap := algebra.leftfetchjoin(bp, a);
@@ -95,7 +95,7 @@ io.print(ap);
bp:= pqueue.topn_min(bg,ap,3:wrd,false);
io.print(bp);
-bp,bg:= pqueue.utopn_min(b,4:wrd,false);
+(bp,bg):= pqueue.utopn_min(b,4:wrd,false);
io.print(bp);
io.print(bg);
ap := algebra.leftfetchjoin(bp, a);
@@ -103,7 +103,7 @@ io.print(ap);
bp:= pqueue.topn_min(bg,ap,4:wrd,false);
io.print(bp);
-bp,bg:= pqueue.utopn_min(b,5:wrd,false);
+(bp,bg):= pqueue.utopn_min(b,5:wrd,false);
io.print(bp);
io.print(bg);
ap := algebra.leftfetchjoin(bp, a);
@@ -111,7 +111,7 @@ io.print(ap);
bp:= pqueue.topn_min(bg,ap,5:wrd,false);
io.print(bp);
-bp,bg:= pqueue.utopn_min(b,6:wrd,false);
+(bp,bg):= pqueue.utopn_min(b,6:wrd,false);
io.print(bp);
io.print(bg);
ap := algebra.leftfetchjoin(bp, a);
@@ -119,7 +119,7 @@ io.print(ap);
bp:= pqueue.topn_min(bg,ap,6:wrd,false);
io.print(bp);
-bp,bg:= pqueue.utopn_min(b,7:wrd,false);
+(bp,bg):= pqueue.utopn_min(b,7:wrd,false);
io.print(bp);
io.print(bg);
ap := algebra.leftfetchjoin(bp, a);
@@ -127,7 +127,7 @@ io.print(ap);
bp:= pqueue.topn_min(bg,ap,7:wrd,false);
io.print(bp);
-bp,bg:= pqueue.utopn_min(b,8:wrd,false);
+(bp,bg):= pqueue.utopn_min(b,8:wrd,false);
io.print(bp);
io.print(bg);
ap := algebra.leftfetchjoin(bp, a);
@@ -135,42 +135,3 @@ io.print(ap);
bp:= pqueue.topn_min(bg,ap,8:wrd,false);
io.print(bp);
-# old
-bp:= pqueue.topn_min(a,b,0:wrd,false);
-io.print(bp);
-bp:= pqueue.topn_min(a,b,1:wrd,false);
-io.print(bp);
-bp:= pqueue.topn_min(a,b,2:wrd,false);
-io.print(bp);
-bp:= pqueue.topn_min(a,b,3:wrd,false);
-io.print(bp);
-bp:= pqueue.topn_min(a,b,4:wrd,false);
-io.print(bp);
-bp:= pqueue.topn_min(a,b,5:wrd,false);
-io.print(bp);
-bp:= pqueue.topn_min(a,b,6:wrd,false);
-io.print(bp);
-bp:= pqueue.topn_min(a,b,7:wrd,false);
-io.print(bp);
-bp:= pqueue.topn_min(a,b,8:wrd,false);
-io.print(bp);
-
-bp:= pqueue.topn_max(a,b,0:wrd,false);
-io.print(bp);
-bp:= pqueue.topn_max(a,b,1:wrd,false);
-io.print(bp);
-bp:= pqueue.topn_max(a,b,2:wrd,false);
-io.print(bp);
-bp:= pqueue.topn_max(a,b,3:wrd,false);
-io.print(bp);
-bp:= pqueue.topn_max(a,b,4:wrd,false);
-io.print(bp);
-bp:= pqueue.topn_max(a,b,5:wrd,false);
-io.print(bp);
-bp:= pqueue.topn_max(a,b,6:wrd,false);
-io.print(bp);
-bp:= pqueue.topn_max(a,b,7:wrd,false);
-io.print(bp);
-bp:= pqueue.topn_max(a,b,8:wrd,false);
-io.print(bp);
-
diff --git a/monetdb5/modules/mal/pqueue.c b/monetdb5/modules/mal/pqueue.c
--- a/monetdb5/modules/mal/pqueue.c
+++ b/monetdb5/modules/mal/pqueue.c
@@ -1643,3 +1643,12 @@ str PQtopn2_minmax(Client cntxt, MalBlkP
return MAL_SUCCEED;
}
+str PQutopn_minmax(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci)
+{
+
+ (void) cntxt;
+ (void) mb;
+ (void) stk;
+ (void) pci;
+ throw( MAL,"pqueue.utop_minmax","to be implemented");
+}
diff --git a/monetdb5/modules/mal/pqueue.h b/monetdb5/modules/mal/pqueue.h
--- a/monetdb5/modules/mal/pqueue.h
+++ b/monetdb5/modules/mal/pqueue.h
@@ -219,4 +219,5 @@ pqueue_export str PQutopn2_anymin(int *r
pqueue_export str PQtopn_minmax(Client cntxt, MalBlkPtr mb, MalStkPtr stk,
InstrPtr pci);
pqueue_export str PQtopn2_minmax(Client cntxt, MalBlkPtr mb, MalStkPtr stk,
InstrPtr pci);
+pqueue_export str PQutopn_minmax(Client cntxt, MalBlkPtr mb, MalStkPtr stk,
InstrPtr pci);
#endif /* _PQUEUE */
diff --git a/monetdb5/modules/mal/pqueue.mal b/monetdb5/modules/mal/pqueue.mal
--- a/monetdb5/modules/mal/pqueue.mal
+++ b/monetdb5/modules/mal/pqueue.mal
@@ -135,3 +135,7 @@ pattern topn_max(a:bat[:oid,:oid],b:bat[
address PQtopn2_minmax
comment "Return the top n elements using a max-pqueue with/without duplicate
elimination";
+pattern 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";
+
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list