Changeset: ac9c7db3b1a0 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=ac9c7db3b1a0
Modified Files:
monetdb5/modules/mal/Tests/mosaic_delta.mal
monetdb5/modules/mal/Tests/mosaic_delta.stable.out
monetdb5/modules/mal/Tests/mosaic_delta_joins.mal
monetdb5/modules/mal/Tests/mosaic_delta_joins.stable.out
monetdb5/modules/mal/Tests/mosaic_delta_subselect.mal
monetdb5/modules/mal/Tests/mosaic_delta_subselect.stable.out
monetdb5/modules/mal/Tests/mosaic_delta_thetasubselect.mal
monetdb5/modules/mal/Tests/mosaic_delta_thetasubselect.stable.out
monetdb5/modules/mal/Tests/mosaic_dictionary.mal
monetdb5/modules/mal/Tests/mosaic_dictionary.stable.out
monetdb5/modules/mal/Tests/mosaic_dictionary_joins.mal
monetdb5/modules/mal/Tests/mosaic_dictionary_joins.stable.out
monetdb5/modules/mal/Tests/mosaic_dictionary_subselect.mal
monetdb5/modules/mal/Tests/mosaic_dictionary_subselect.stable.out
monetdb5/modules/mal/Tests/mosaic_dictionary_thetasubselect.mal
monetdb5/modules/mal/Tests/mosaic_dictionary_thetasubselect.stable.out
monetdb5/modules/mal/Tests/mosaic_linear.mal
monetdb5/modules/mal/Tests/mosaic_linear.stable.out
monetdb5/modules/mal/Tests/mosaic_linear_joins.mal
monetdb5/modules/mal/Tests/mosaic_linear_joins.stable.out
monetdb5/modules/mal/Tests/mosaic_linear_subselect.mal
monetdb5/modules/mal/Tests/mosaic_linear_subselect.stable.out
monetdb5/modules/mal/Tests/mosaic_linear_thetasubselect.mal
monetdb5/modules/mal/Tests/mosaic_linear_thetasubselect.stable.out
monetdb5/modules/mal/Tests/mosaic_literal.mal
monetdb5/modules/mal/Tests/mosaic_literal.stable.out
monetdb5/modules/mal/Tests/mosaic_literal_double.mal
monetdb5/modules/mal/Tests/mosaic_literal_double.stable.out
monetdb5/modules/mal/Tests/mosaic_literal_joins.mal
monetdb5/modules/mal/Tests/mosaic_literal_joins.stable.out
monetdb5/modules/mal/Tests/mosaic_literal_subselect.mal
monetdb5/modules/mal/Tests/mosaic_literal_subselect.stable.out
monetdb5/modules/mal/Tests/mosaic_literal_thetasubselect.mal
monetdb5/modules/mal/Tests/mosaic_literal_thetasubselect.stable.out
monetdb5/modules/mal/Tests/mosaic_mix_joins.mal
monetdb5/modules/mal/Tests/mosaic_mix_joins.stable.out
monetdb5/modules/mal/Tests/mosaic_mix_subselect.mal
monetdb5/modules/mal/Tests/mosaic_mix_subselect.stable.out
monetdb5/modules/mal/Tests/mosaic_mix_thetasubselect.mal
monetdb5/modules/mal/Tests/mosaic_mix_thetasubselect.stable.out
monetdb5/modules/mal/Tests/mosaic_runlength.mal
monetdb5/modules/mal/Tests/mosaic_runlength.stable.out
monetdb5/modules/mal/Tests/mosaic_runlength_joins.mal
monetdb5/modules/mal/Tests/mosaic_runlength_joins.stable.out
monetdb5/modules/mal/Tests/mosaic_runlength_subselect.mal
monetdb5/modules/mal/Tests/mosaic_runlength_subselect.stable.out
monetdb5/modules/mal/Tests/mosaic_runlength_thetasubselect.mal
monetdb5/modules/mal/Tests/mosaic_runlength_thetasubselect.stable.out
monetdb5/modules/mal/Tests/mosaic_view_subselect.mal
monetdb5/modules/mal/Tests/mosaic_zone.mal
monetdb5/modules/mal/Tests/mosaic_zone.stable.out
monetdb5/modules/mal/Tests/mosaic_zone_joins.mal
monetdb5/modules/mal/Tests/mosaic_zone_joins.stable.out
monetdb5/modules/mal/Tests/mosaic_zone_subselect.mal
monetdb5/modules/mal/Tests/mosaic_zone_subselect.stable.out
monetdb5/modules/mal/Tests/mosaic_zone_thetasubselect.mal
monetdb5/modules/mal/Tests/mosaic_zone_thetasubselect.stable.out
monetdb5/modules/mal/mosaic.c
monetdb5/modules/mal/mosaic.h
monetdb5/modules/mal/mosaic_delta.c
monetdb5/modules/mal/mosaic_literal.c
monetdb5/modules/mal/mosaic_runlength.c
monetdb5/optimizer/opt_mosaic.c
Branch: mosaic
Log Message:
Change to inplace compression
It is not protected yet against concurrent access to the BAT.
diffs (truncated from 3648 to 300 lines):
diff --git a/monetdb5/modules/mal/Tests/mosaic_delta.mal
b/monetdb5/modules/mal/Tests/mosaic_delta.mal
--- a/monetdb5/modules/mal/Tests/mosaic_delta.mal
+++ b/monetdb5/modules/mal/Tests/mosaic_delta.mal
@@ -10,8 +10,9 @@ bat.append(b,1001);
bat.append(b,1004);
bat.append(b,999);
bat.append(b,977);
+base:= algebra.copy(b);
-io.print(b);
+io.print(base);
x:= mosaic.compress(b,"delta");
#mosaic.dump(x);
z:= mosaic.decompress(x);
diff --git a/monetdb5/modules/mal/Tests/mosaic_delta.stable.out
b/monetdb5/modules/mal/Tests/mosaic_delta.stable.out
--- a/monetdb5/modules/mal/Tests/mosaic_delta.stable.out
+++ b/monetdb5/modules/mal/Tests/mosaic_delta.stable.out
@@ -30,7 +30,8 @@ function user.main():void;
bat.append(b,1004);
bat.append(b,999);
bat.append(b,977);
- io.print(b);
+ base := algebra.copy(b);
+ io.print(base);
x := mosaic.compress(b,"delta");
#mosaic.dump(x);
z := mosaic.decompress(x);
diff --git a/monetdb5/modules/mal/Tests/mosaic_delta_joins.mal
b/monetdb5/modules/mal/Tests/mosaic_delta_joins.mal
--- a/monetdb5/modules/mal/Tests/mosaic_delta_joins.mal
+++ b/monetdb5/modules/mal/Tests/mosaic_delta_joins.mal
@@ -10,8 +10,9 @@ bat.append(b,1001);
bat.append(b,1004);
bat.append(b,999);
bat.append(b,977);
+base:=algebra.copy(b);
-io.print(b);
+io.print(base);
x:= mosaic.compress(b,"delta");
c:= bat.new(:oid,:oid);
@@ -21,9 +22,9 @@ bat.append(c,5@0);
io.print(c);
#mosaic.dump(x);
-s:= algebra.leftfetchjoin(c,b);
+s:= algebra.leftfetchjoin(c,base);
io.print(s);
-xs:= mosaic.leftfetchjoin(c,b);
+xs:= mosaic.leftfetchjoin(c,x);
io.print(xs);
d:= bat.new(:oid,:int);
@@ -31,12 +32,12 @@ bat.append(d,4);
bat.append(d,-1);
bat.append(d,nil:int);
-(jl,jr):= algebra.join(b,d);
+(jl,jr):= algebra.join(base,d);
io.print(jl,jr);
(ml,mr):= mosaic.join(x,d);
io.print(ml,mr);
-(jl,jr):= algebra.join(d,b);
+(jl,jr):= algebra.join(d,base);
io.print(jl,jr);
(ml,mr):= mosaic.join(d,x);
io.print(ml,mr);
diff --git a/monetdb5/modules/mal/Tests/mosaic_delta_joins.stable.out
b/monetdb5/modules/mal/Tests/mosaic_delta_joins.stable.out
--- a/monetdb5/modules/mal/Tests/mosaic_delta_joins.stable.out
+++ b/monetdb5/modules/mal/Tests/mosaic_delta_joins.stable.out
@@ -30,7 +30,8 @@ function user.main():void;
bat.append(b,1004);
bat.append(b,999);
bat.append(b,977);
- io.print(b);
+ base := algebra.copy(b);
+ io.print(base);
x := mosaic.compress(b,"delta");
c := bat.new(:oid,:oid);
bat.append(c,0@0);
@@ -38,19 +39,19 @@ function user.main():void;
bat.append(c,5@0);
io.print(c);
#mosaic.dump(x);
- s := algebra.leftfetchjoin(c,b);
+ s := algebra.leftfetchjoin(c,base);
io.print(s);
- xs := mosaic.leftfetchjoin(c,b);
+ xs := mosaic.leftfetchjoin(c,x);
io.print(xs);
d := bat.new(:oid,:int);
bat.append(d,4);
bat.append(d,-1);
bat.append(d,nil:int);
- (jl,jr) := algebra.join(b,d);
+ (jl,jr) := algebra.join(base,d);
io.print(jl,jr);
(ml,mr) := mosaic.join(x,d);
io.print(ml,mr);
- (jl,jr) := algebra.join(d,b);
+ (jl,jr) := algebra.join(d,base);
io.print(jl,jr);
(ml,mr) := mosaic.join(d,x);
io.print(ml,mr);
diff --git a/monetdb5/modules/mal/Tests/mosaic_delta_subselect.mal
b/monetdb5/modules/mal/Tests/mosaic_delta_subselect.mal
--- a/monetdb5/modules/mal/Tests/mosaic_delta_subselect.mal
+++ b/monetdb5/modules/mal/Tests/mosaic_delta_subselect.mal
@@ -10,46 +10,47 @@ bat.append(b,1001);
bat.append(b,1004);
bat.append(b,999);
bat.append(b,977);
+base:= algebra.copy(b);
-io.print(b);
+io.print(base);
x:= mosaic.compress(b,"delta");
#mosaic.dump(x);
-s:= algebra.subselect(b,-1,4,false,false,false);
+s:= algebra.subselect(base,-1,4,false,false,false);
io.print(s);
xs:= mosaic.subselect(x,-1,4,false,false,false);
io.print(xs);
-s:= algebra.subselect(b,-1,4,false,true,false);
+s:= algebra.subselect(base,-1,4,false,true,false);
io.print(s);
xs:= mosaic.subselect(x,-1,4,false,true,false);
io.print(xs);
-s:= algebra.subselect(b,-1,4,true,false,false);
+s:= algebra.subselect(base,-1,4,true,false,false);
io.print(s);
xs:= mosaic.subselect(x,-1,4,true,false,false);
io.print(xs);
-s:= algebra.subselect(b,-1,4,true,true,false);
+s:= algebra.subselect(base,-1,4,true,true,false);
io.print(s);
xs:= mosaic.subselect(x,-1,4,true,true,false);
io.print(xs);
-s:= algebra.subselect(b,nil:int,1001,false,false,false);
+s:= algebra.subselect(base,nil:int,1001,false,false,false);
io.print(s);
xs:= mosaic.subselect(x,nil:int,10010,false,false,false);
io.print(xs);
-s:= algebra.subselect(b,999,nil:int,false,false,false);
+s:= algebra.subselect(base,999,nil:int,false,false,false);
io.print(s);
xs:= mosaic.subselect(x,999,nil:int,false,false,false);
io.print(xs);
-s:= algebra.subselect(b,nil:int,nil:int,false,false,false);
+s:= algebra.subselect(base,nil:int,nil:int,false,false,false);
io.print(s);
xs:= mosaic.subselect(x,nil:int,nil:int,false,false,false);
io.print(xs);
-s:= algebra.subselect(b,nil:int,nil:int,false,false,true);
+s:= algebra.subselect(base,nil:int,nil:int,false,false,true);
io.print(s);
xs:= mosaic.subselect(x,nil:int,nil:int,false,false,true);
io.print(xs);
@@ -60,42 +61,42 @@ bat.append(c,1@0);
bat.append(c,5@0);
io.print(c);
-s:= algebra.subselect(b,c,-1,4,false,false,false);
+s:= algebra.subselect(base,c,-1,4,false,false,false);
io.print(s);
xs:= mosaic.subselect(x,c,-1,4,false,false,false);
io.print(xs);
-s:= algebra.subselect(b,c,-1,4,false,true,false);
+s:= algebra.subselect(base,c,-1,4,false,true,false);
io.print(s);
xs:= mosaic.subselect(x,c,-1,4,false,true,false);
io.print(xs);
-s:= algebra.subselect(b,c,-1,4,true,false,false);
+s:= algebra.subselect(base,c,-1,4,true,false,false);
io.print(s);
xs:= mosaic.subselect(x,c,-1,4,true,false,false);
io.print(xs);
-s:= algebra.subselect(b,c,-1,4,true,true,false);
+s:= algebra.subselect(base,c,-1,4,true,true,false);
io.print(s);
xs:= mosaic.subselect(x,c,-1,4,true,true,false);
io.print(xs);
-s:= algebra.subselect(b,c,nil:int,1000,false,false,false);
+s:= algebra.subselect(base,c,nil:int,1000,false,false,false);
io.print(s);
xs:= mosaic.subselect(x,c,nil:int,1000,false,false,false);
io.print(xs);
-s:= algebra.subselect(b,c,1000,nil:int,false,false,false);
+s:= algebra.subselect(base,c,1000,nil:int,false,false,false);
io.print(s);
xs:= mosaic.subselect(x,c,1000,nil:int,false,false,false);
io.print(xs);
-s:= algebra.subselect(b,c,nil:int,nil:int,false,false,false);
+s:= algebra.subselect(base,c,nil:int,nil:int,false,false,false);
io.print(s);
xs:= mosaic.subselect(x,c,nil:int,nil:int,false,false,false);
io.print(xs);
-s:= algebra.subselect(b,c,nil:int,nil:int,false,false,true);
+s:= algebra.subselect(base,c,nil:int,nil:int,false,false,true);
io.print(s);
xs:= mosaic.subselect(x,c,nil:int,nil:int,false,false,true);
io.print(xs);
diff --git a/monetdb5/modules/mal/Tests/mosaic_delta_subselect.stable.out
b/monetdb5/modules/mal/Tests/mosaic_delta_subselect.stable.out
--- a/monetdb5/modules/mal/Tests/mosaic_delta_subselect.stable.out
+++ b/monetdb5/modules/mal/Tests/mosaic_delta_subselect.stable.out
@@ -30,38 +30,39 @@ function user.main():void;
bat.append(b,1004);
bat.append(b,999);
bat.append(b,977);
- io.print(b);
+ base := algebra.copy(b);
+ io.print(base);
x := mosaic.compress(b,"delta");
#mosaic.dump(x);
- s := algebra.subselect(b,-1,4,false,false,false);
+ s := algebra.subselect(base,-1,4,false,false,false);
io.print(s);
xs := mosaic.subselect(x,-1,4,false,false,false);
io.print(xs);
- s := algebra.subselect(b,-1,4,false,true,false);
+ s := algebra.subselect(base,-1,4,false,true,false);
io.print(s);
xs := mosaic.subselect(x,-1,4,false,true,false);
io.print(xs);
- s := algebra.subselect(b,-1,4,true,false,false);
+ s := algebra.subselect(base,-1,4,true,false,false);
io.print(s);
xs := mosaic.subselect(x,-1,4,true,false,false);
io.print(xs);
- s := algebra.subselect(b,-1,4,true,true,false);
+ s := algebra.subselect(base,-1,4,true,true,false);
io.print(s);
xs := mosaic.subselect(x,-1,4,true,true,false);
io.print(xs);
- s := algebra.subselect(b,nil:int,1001,false,false,false);
+ s := algebra.subselect(base,nil:int,1001,false,false,false);
io.print(s);
xs := mosaic.subselect(x,nil:int,10010,false,false,false);
io.print(xs);
- s := algebra.subselect(b,999,nil:int,false,false,false);
+ s := algebra.subselect(base,999,nil:int,false,false,false);
io.print(s);
xs := mosaic.subselect(x,999,nil:int,false,false,false);
io.print(xs);
- s := algebra.subselect(b,nil:int,nil:int,false,false,false);
+ s := algebra.subselect(base,nil:int,nil:int,false,false,false);
io.print(s);
xs := mosaic.subselect(x,nil:int,nil:int,false,false,false);
io.print(xs);
- s := algebra.subselect(b,nil:int,nil:int,false,false,true);
+ s := algebra.subselect(base,nil:int,nil:int,false,false,true);
io.print(s);
xs := mosaic.subselect(x,nil:int,nil:int,false,false,true);
io.print(xs);
@@ -70,35 +71,35 @@ function user.main():void;
bat.append(c,1@0);
bat.append(c,5@0);
io.print(c);
- s := algebra.subselect(b,c,-1,4,false,false,false);
+ s := algebra.subselect(base,c,-1,4,false,false,false);
io.print(s);
xs := mosaic.subselect(x,c,-1,4,false,false,false);
io.print(xs);
- s := algebra.subselect(b,c,-1,4,false,true,false);
+ s := algebra.subselect(base,c,-1,4,false,true,false);
io.print(s);
xs := mosaic.subselect(x,c,-1,4,false,true,false);
io.print(xs);
- s := algebra.subselect(b,c,-1,4,true,false,false);
+ s := algebra.subselect(base,c,-1,4,true,false,false);
io.print(s);
xs := mosaic.subselect(x,c,-1,4,true,false,false);
io.print(xs);
- s := algebra.subselect(b,c,-1,4,true,true,false);
+ s := algebra.subselect(base,c,-1,4,true,true,false);
io.print(s);
xs := mosaic.subselect(x,c,-1,4,true,true,false);
io.print(xs);
- s := algebra.subselect(b,c,nil:int,1000,false,false,false);
+ s := algebra.subselect(base,c,nil:int,1000,false,false,false);
io.print(s);
xs := mosaic.subselect(x,c,nil:int,1000,false,false,false);
io.print(xs);
- s := algebra.subselect(b,c,1000,nil:int,false,false,false);
+ s := algebra.subselect(base,c,1000,nil:int,false,false,false);
io.print(s);
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list