Changeset: 89072f6557fa for MonetDB URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=89072f6557fa Modified Files: monetdb5/optimizer/Tests/GCexample01.stable.out monetdb5/optimizer/Tests/dataflow.stable.out sql/storage/bat/bat_storage.c Branch: default Log Message:
Approve output diffs (199 lines): diff --git a/monetdb5/optimizer/Tests/GCexample01.stable.out b/monetdb5/optimizer/Tests/GCexample01.stable.out --- a/monetdb5/optimizer/Tests/GCexample01.stable.out +++ b/monetdb5/optimizer/Tests/GCexample01.stable.out @@ -29,44 +29,44 @@ Ready. # 06:41:05 > "mclient" "-lmal" "-ftest" "-Eutf-8" "-i" "-e" "--host=/var/tmp/mtest-8837" "--port=33343" # 06:41:05 > -function user.qry():void; #[0] (0) 0 type check needed - b:bat[:int] := bat.new(:int); #[1] (0) CMDBATnew 1 <- 2 type check needed - c:bat[:int] := bat.new(:int); #[2] (0) CMDBATnew 3 <- 2 type check needed - d:bat[:int] := bat.new(:int); #[3] (0) CMDBATnew 4 <- 2 type check needed - bat.append(b:bat[:int], 1:int); #[4] (0) BKCappend_val_wrap 5 <- 1 6 type check needed -barrier (x:oid, z:int) := iterator.new(b:bat[:int]); #[5] (0) ITRbunIterator 7 8 <- 1 type check needed - io.print(x:oid); #[6] (0) IOprint_val 9 <- 7 type check needed -exit (x:oid, z:int); #[7] (0) 7 8 type check needed -barrier (x:oid, z:int) := iterator.new(c:bat[:int]); #[8] (0) ITRbunIterator 7 8 <- 3 type check needed - io.print(x:oid); #[9] (0) IOprint_val 10 <- 7 type check needed - redo (x:oid, z:int) := iterator.next(c:bat[:int]); #[10] (0) ITRbunNext 7 8 <- 3 type check needed -exit (x:oid, z:int); #[11] (0) 7 8 type check needed +function user.qry():void; #[0] (0) 0 + b:bat[:int] := bat.new(:int); #[1] (0) CMDBATnew 1 <- 2 + c:bat[:int] := bat.new(:int); #[2] (0) CMDBATnew 3 <- 2 + d:bat[:int] := bat.new(:int); #[3] (0) CMDBATnew 4 <- 2 + bat.append(b:bat[:int], 1:int); #[4] (0) BKCappend_val_wrap 5 <- 1 6 +barrier (x:oid, z:int) := iterator.new(b:bat[:int]); #[5] (0) ITRbunIterator 7 8 <- 1 + io.print(x:oid); #[6] (0) IOprint_val 9 <- 7 +exit (x:oid, z:int); #[7] (0) 7 8 +barrier (x:oid, z:int) := iterator.new(c:bat[:int]); #[8] (0) ITRbunIterator 7 8 <- 3 + io.print(x:oid); #[9] (0) IOprint_val 10 <- 7 + redo (x:oid, z:int) := iterator.next(c:bat[:int]); #[10] (0) ITRbunNext 7 8 <- 3 +exit (x:oid, z:int); #[11] (0) 7 8 # do not close d, it may be reused -barrier go:bit := true:bit; #[13] (0) 12 <- 13 type check needed - io.print(d:bat[:int]); #[14] (0) IOprint_val 14 <- 4 type check needed - redo go:bit := true:bit; #[15] (0) 12 <- 13 type check needed -exit go:bit; #[16] (0) 12 type check needed -end user.qry; #[17] (0) type check needed -#garbagecollector actions= 0 time=12 usec -function user.qry():void; #[0] (0) 0 type check needed - b:bat[:int] := bat.new(:int); #[1] (0) CMDBATnew 1 <- 2 type check needed - c:bat[:int] := bat.new(:int); #[2] (0) CMDBATnew 3 <- 2 type check needed - d:bat[:int] := bat.new(:int); #[3] (0) CMDBATnew 4 <- 2 type check needed - bat.append(b:bat[:int], 1:int); #[4] (0) BKCappend_val_wrap 5 <- 1 6 type check needed -barrier (x:oid, z:int) := iterator.new(b:bat[:int]); #[5] (0) ITRbunIterator 7 8 <- 1 type check needed - io.print(x:oid); #[6] (0) IOprint_val 9 <- 7 type check needed -exit (x:oid, z:int); #[7] (0) 7 8 type check needed -barrier (x:oid, z:int) := iterator.new(c:bat[:int]); #[8] (0) ITRbunIterator 7 8 <- 3 type check needed - io.print(x:oid); #[9] (0) IOprint_val 10 <- 7 type check needed - redo (x:oid, z:int) := iterator.next(c:bat[:int]); #[10] (0) ITRbunNext 7 8 <- 3 type check needed -exit (x:oid, z:int); #[11] (0) 7 8 type check needed +barrier go:bit := true:bit; #[13] (0) 12 <- 13 + io.print(d:bat[:int]); #[14] (0) IOprint_val 14 <- 4 + redo go:bit := true:bit; #[15] (0) 12 <- 13 +exit go:bit; #[16] (0) 12 +end user.qry; #[17] (0) +#garbagecollector actions= 0 time=18 usec +function user.qry():void; #[0] (0) 0 + b:bat[:int] := bat.new(:int); #[1] (0) CMDBATnew 1 <- 2 + c:bat[:int] := bat.new(:int); #[2] (0) CMDBATnew 3 <- 2 + d:bat[:int] := bat.new(:int); #[3] (0) CMDBATnew 4 <- 2 + bat.append(b:bat[:int], 1:int); #[4] (0) BKCappend_val_wrap 5 <- 1 6 +barrier (x:oid, z:int) := iterator.new(b:bat[:int]); #[5] (0) ITRbunIterator 7 8 <- 1 + io.print(x:oid); #[6] (0) IOprint_val 9 <- 7 +exit (x:oid, z:int); #[7] (0) 7 8 +barrier (x:oid, z:int) := iterator.new(c:bat[:int]); #[8] (0) ITRbunIterator 7 8 <- 3 + io.print(x:oid); #[9] (0) IOprint_val 10 <- 7 + redo (x:oid, z:int) := iterator.next(c:bat[:int]); #[10] (0) ITRbunNext 7 8 <- 3 +exit (x:oid, z:int); #[11] (0) 7 8 # do not close d, it may be reused -barrier go:bit := true:bit; #[13] (0) 12 <- 13 type check needed - io.print(d:bat[:int]); #[14] (0) IOprint_val 14 <- 4 type check needed - redo go:bit := true:bit; #[15] (0) 12 <- 13 type check needed -exit go:bit; #[16] (0) 12 type check needed -end user.qry; #[17] (0) type check needed -#garbagecollector actions= 0 time=12 usec +barrier go:bit := true:bit; #[13] (0) 12 <- 13 + io.print(d:bat[:int]); #[14] (0) IOprint_val 14 <- 4 + redo go:bit := true:bit; #[15] (0) 12 <- 13 +exit go:bit; #[16] (0) 12 +end user.qry; #[17] (0) +#garbagecollector actions= 0 time=18 usec # 23:17:49 > # 23:17:49 > Done. diff --git a/monetdb5/optimizer/Tests/dataflow.stable.out b/monetdb5/optimizer/Tests/dataflow.stable.out --- a/monetdb5/optimizer/Tests/dataflow.stable.out +++ b/monetdb5/optimizer/Tests/dataflow.stable.out @@ -20,36 +20,36 @@ stdout of test 'dataflow` in directory ' Ready. -# 13:35:26 > -# 13:35:26 > "mclient" "-lmal" "-ftest" "-Eutf-8" "--host=/var/tmp/mtest-25708" "--port=36740" -# 13:35:26 > +# 07:59:33 > +# 07:59:33 > "mclient" "-lmal" "-ftest" "-Eutf-8" "--host=/var/tmp/mtest-23820" "--port=35704" +# 07:59:33 > -function user.tst():void; #[0] (0) 0 type check needed -barrier X_27:bit := language.dataflow(); #[1] (0) MALstartDataflow 27 type check needed - s:bat[:int] := microbenchmark.uniform(0@0:oid, 100000:lng, 100000:int); #[2] (0) MBMuniform 1 <- 2 3 4 type check needed - l:int := aggr.min(s:bat[:int]); #[3] (0) ALGminany 5 <- 1 type check needed - h:int := l:int; #[4] (0) 6 <- 5 type check needed +function user.tst():void; #[0] (0) 0 +barrier X_27:bit := language.dataflow(); #[1] (0) MALstartDataflow 27 + s:bat[:int] := microbenchmark.uniform(0@0:oid, 100000:lng, 100000:int); #[2] (0) MBMuniform 1 <- 2 3 4 + l:int := aggr.min(s:bat[:int]); #[3] (0) ALGminany 5 <- 1 + h:int := l:int; #[4] (0) 6 <- 5 #mdb.setTimer(true); #mdb.setThread(true); - z:bat[:oid] := nil:bat[:oid]; #[7] (0) 9 <- 10 type check needed - t1:bat[:oid] := algebra.select(s:bat[:int], l:int, h:int, true:bit, true:bit, false:bit); #[8] (0) ALGselect1 11 <- 1 5 6 12 13 14 type check needed - t2:bat[:oid] := algebra.select(s:bat[:int], l:int, h:int, true:bit, true:bit, false:bit); #[9] (0) ALGselect1 15 <- 1 5 6 12 12 14 type check needed - t3:bat[:oid] := algebra.select(s:bat[:int], l:int, h:int, true:bit, true:bit, false:bit); #[10] (0) ALGselect1 16 <- 1 5 6 12 12 14 type check needed - t4:bat[:oid] := algebra.select(s:bat[:int], l:int, h:int, true:bit, true:bit, false:bit); #[11] (0) ALGselect1 17 <- 1 5 6 12 12 14 type check needed - t5:bat[:oid] := algebra.select(s:bat[:int], l:int, h:int, true:bit, true:bit, false:bit); #[12] (0) ALGselect1 18 <- 1 5 6 12 12 14 type check needed - t6:bat[:oid] := algebra.select(s:bat[:int], l:int, h:int, true:bit, true:bit, false:bit); #[13] (0) ALGselect1 19 <- 1 5 6 12 12 14 type check needed - t7:bat[:oid] := algebra.select(s:bat[:int], l:int, h:int, true:bit, true:bit, false:bit); #[14] (0) ALGselect1 20 <- 1 5 6 12 12 14 type check needed - t8:bat[:oid] := algebra.select(s:bat[:int], l:int, h:int, true:bit, true:bit, false:bit); #[15] (0) ALGselect1 21 <- 1 5 6 12 12 14 type check needed - language.pass(s:bat[:int]); #[16] (0) MALpass 29 <- 1 type check needed -exit X_27:bit; #[17] (0) 27 type check needed - z:bat[:oid] := mat.pack(t1:bat[:oid], t2:bat[:oid], t3:bat[:oid], t4:bat[:oid], t5:bat[:oid], t6:bat[:oid], t7:bat[:oid], t8:bat[:oid]); #[18] (0) MATpack 9 <- 11 15 16 17 18 19 20 21 type check needed - mdb.var(); #[19] (0) MDBvar 22 type check needed - c:lng := aggr.count(z:bat[:oid]); #[20] (0) ALGcount_bat 23 <- 9 type check needed - io.print(c:lng); #[21] (0) IOprint_val 24 <- 23 type check needed - io.print("done":str); #[22] (0) IOprint_val 25 <- 26 type check needed -end user.tst; #[23] (0) type check needed -#dataflow actions= 1 time=18 usec -#garbagecollector actions= 0 time=13 usec + z:bat[:oid] := nil:bat[:oid]; #[7] (0) 9 <- 10 + t1:bat[:oid] := algebra.select(s:bat[:int], l:int, h:int, true:bit, true:bit, false:bit); #[8] (0) ALGselect1 11 <- 1 5 6 12 13 14 + t2:bat[:oid] := algebra.select(s:bat[:int], l:int, h:int, true:bit, true:bit, false:bit); #[9] (0) ALGselect1 15 <- 1 5 6 12 12 14 + t3:bat[:oid] := algebra.select(s:bat[:int], l:int, h:int, true:bit, true:bit, false:bit); #[10] (0) ALGselect1 16 <- 1 5 6 12 12 14 + t4:bat[:oid] := algebra.select(s:bat[:int], l:int, h:int, true:bit, true:bit, false:bit); #[11] (0) ALGselect1 17 <- 1 5 6 12 12 14 + t5:bat[:oid] := algebra.select(s:bat[:int], l:int, h:int, true:bit, true:bit, false:bit); #[12] (0) ALGselect1 18 <- 1 5 6 12 12 14 + t6:bat[:oid] := algebra.select(s:bat[:int], l:int, h:int, true:bit, true:bit, false:bit); #[13] (0) ALGselect1 19 <- 1 5 6 12 12 14 + t7:bat[:oid] := algebra.select(s:bat[:int], l:int, h:int, true:bit, true:bit, false:bit); #[14] (0) ALGselect1 20 <- 1 5 6 12 12 14 + t8:bat[:oid] := algebra.select(s:bat[:int], l:int, h:int, true:bit, true:bit, false:bit); #[15] (0) ALGselect1 21 <- 1 5 6 12 12 14 + language.pass(s:bat[:int]); #[16] (0) MALpass 29 <- 1 +exit X_27:bit; #[17] (0) 27 + z:bat[:oid] := mat.pack(t1:bat[:oid], t2:bat[:oid], t3:bat[:oid], t4:bat[:oid], t5:bat[:oid], t6:bat[:oid], t7:bat[:oid], t8:bat[:oid]); #[18] (0) MATpack 9 <- 11 15 16 17 18 19 20 21 + mdb.var(); #[19] (0) MDBvar 22 + c:lng := aggr.count(z:bat[:oid]); #[20] (0) ALGcount_bat 23 <- 9 + io.print(c:lng); #[21] (0) IOprint_val 24 <- 23 + io.print("done":str); #[22] (0) IOprint_val 25 <- 26 +end user.tst; #[23] (0) +#dataflow actions= 1 time=43 usec +#garbagecollector actions= 0 time=51 usec #Stack 'tst' size=43 top=33 #[ 0] tst (0,0,17) = 0@0 :void not used #[ 1] s (2,2,16) = <tmp_21> :bat[:int] rows=100000 diff --git a/sql/storage/bat/bat_storage.c b/sql/storage/bat/bat_storage.c --- a/sql/storage/bat/bat_storage.c +++ b/sql/storage/bat/bat_storage.c @@ -159,7 +159,7 @@ delta_bind_bat( sql_delta *bat, int acce return NULL; } if (BATcount(nui)) { - o = BATthetaselect(ui, NULL, &b->hseqbase, ">="); + o = BATselect(ui, NULL, &b->hseqbase, ATOMnilptr(ui->ttype), 1, 0, 0); if (o == NULL) { bat_destroy(ui); bat_destroy(uv); @@ -258,7 +258,7 @@ delta_update_bat( sql_delta *bat, BAT *t if (BATcount(ib)) { BAT *nui = tids, *nuv = updates; - o = BATthetaselect(tids, NULL, &ib->hseqbase, ">="); + o = BATselect(tids, NULL, &ib->hseqbase, ATOMnilptr(tids->ttype), 1, 0, 0); if (o == NULL) { bat_destroy(ib); return LOG_ERR; @@ -281,7 +281,7 @@ delta_update_bat( sql_delta *bat, BAT *t return LOG_ERR; } - o = BATthetaselect(tids, NULL, &ib->hseqbase, "<"); + o = BATselect(tids, NULL, ATOMnilptr(tids->ttype), &ib->hseqbase, 0, 0, 0); if (o == NULL) { bat_destroy(ib); return LOG_ERR; @@ -339,7 +339,7 @@ delta_update_bat( sql_delta *bat, BAT *t if (BATcount(ib)) { BAT *nui = tids, *nuv = updates, *o; - o = BATthetaselect(tids, NULL, &ib->hseqbase, ">="); + o = BATselect(tids, NULL, &ib->hseqbase, ATOMnilptr(tids->ttype), 1, 0, 0); if (o == NULL) { bat_destroy(b); bat_destroy(ib); @@ -365,7 +365,7 @@ delta_update_bat( sql_delta *bat, BAT *t return LOG_ERR; } - o = BATthetaselect(tids, NULL, &ib->hseqbase, "<"); + o = BATselect(tids, NULL, ATOMnilptr(tids->ttype), &ib->hseqbase, 0, 0, 0); if (o == NULL) { bat_destroy(b); bat_destroy(ib); _______________________________________________ checkin-list mailing list checkin-list@monetdb.org https://www.monetdb.org/mailman/listinfo/checkin-list