Update of /cvsroot/monetdb/MonetDB5/src/optimizer/Tests
In directory sc8-pr-cvs16.sourceforge.net:/tmp/cvs-serv12406/Tests

Modified Files:
        All 
Added Files:
        inline09.stable.err inline09.stable.out inline10.stable.err 
        inline10.stable.out inlineCst.mal inlineIfthen.mal 
        inlineIfthen.stable.err inlineIfthen.stable.out 
Log Message:
during multiplexed inlineing we have to be careful about barrier blocks.
if entrance to the barrier or redo/leave is dependent on an upgraded 
type, we bail out.

inlineCst.mal is a todo action.


--- NEW FILE: inlineIfthen.stable.err ---
stderr of test 'inlineIfthen` in directory 'src/optimizer` itself:


# 11:53:01 >  
# 11:53:01 >   mserver5 "--config=/ufs/mk/monet5/Linux/etc/monetdb5.conf" 
--debug=10 --set 
"monet_mod_path=/ufs/mk/monet5//Linux/lib/MonetDB5:/ufs/mk/monet5//Linux/lib/MonetDB5/lib:/ufs/mk/monet5//Linux/lib/MonetDB5/bin"
 --set "gdk_dbfarm=/ufs/mk/monet5//Linux/var/MonetDB5/dbfarm" --set 
"sql_logdir=/ufs/mk/monet5//Linux/var/MonetDB5/sql_logs"  --set mapi_open=true 
--set xrpc_open=true --set mapi_port=36453 --set xrpc_port=42260 --set 
monet_prompt= --trace --dbname=mTests_src_optimizer  inlineIfthen.mal
# 11:53:01 >  

#warning: please don't forget to set your vault key!
#(see /ufs/mk/monet5/Linux/etc/monetdb5.conf)

# 11:53:01 >  
# 11:53:01 >  Done.
# 11:53:01 >  


--- NEW FILE: inlineCst.mal ---
function user.foo{inline}(b:int):int;
   foo:= 0;
   return foo;
end foo;

function qry();
        b:= bat.new(:oid,:int);
        bat.append(b,1);
        bat.append(b,10);
        bat.append(b,20);
        r:bat[:oid,:int]:= mal.multiplex("user","foo",b);
        io.print(r);
end qry;

optimizer.inline("user","qry");
optimizer.remap("user","qry");
mdb.list("user","qry");

Index: All
===================================================================
RCS file: /cvsroot/monetdb/MonetDB5/src/optimizer/Tests/All,v
retrieving revision 1.59
retrieving revision 1.60
diff -u -d -r1.59 -r1.60
--- All 27 Dec 2007 18:39:57 -0000      1.59
+++ All 19 Jan 2008 11:06:13 -0000      1.60
@@ -70,6 +70,11 @@
 inline06
 inline07
 inline08
+inline09
+inline10
+#inline11
+inlineIfthen
+inlineCst
 
 CXerror1
 #the remainder are snippets used in the reference manual

--- NEW FILE: inlineIfthen.mal ---
function user.foo{inline}(b:int):int;
   foo:= 0;
barrier go:= b<10;
   foo:= 1;
exit go;
   return foo;
end foo;

function qry();
        b:= bat.new(:oid,:int);
        bat.append(b,1);
        bat.append(b,10);
        bat.append(b,20);
        r:bat[:oid,:int]:= mal.multiplex("user","foo",b);
        io.print(r);
end qry;

optimizer.inline("user","qry");
optimizer.remap("user","qry");
mdb.list("user","qry");

--- NEW FILE: inline09.stable.err ---
stderr of test 'inline09` in directory 'src/optimizer` itself:


# 11:53:00 >  
# 11:53:00 >   mserver5 "--config=/ufs/mk/monet5/Linux/etc/monetdb5.conf" 
--debug=10 --set 
"monet_mod_path=/ufs/mk/monet5//Linux/lib/MonetDB5:/ufs/mk/monet5//Linux/lib/MonetDB5/lib:/ufs/mk/monet5//Linux/lib/MonetDB5/bin"
 --set "gdk_dbfarm=/ufs/mk/monet5//Linux/var/MonetDB5/dbfarm" --set 
"sql_logdir=/ufs/mk/monet5//Linux/var/MonetDB5/sql_logs"  --set mapi_open=true 
--set xrpc_open=true --set mapi_port=36453 --set xrpc_port=42260 --set 
monet_prompt= --trace --dbname=mTests_src_optimizer  inline09.mal
# 11:53:00 >  

#warning: please don't forget to set your vault key!
#(see /ufs/mk/monet5/Linux/etc/monetdb5.conf)

# 11:53:00 >  
# 11:53:00 >  Done.
# 11:53:00 >  


--- NEW FILE: inlineIfthen.stable.out ---
stdout of test 'inlineIfthen` in directory 'src/optimizer` itself:


# 11:53:01 >  
# 11:53:01 >   mserver5 "--config=/ufs/mk/monet5/Linux/etc/monetdb5.conf" 
--debug=10 --set 
"monet_mod_path=/ufs/mk/monet5//Linux/lib/MonetDB5:/ufs/mk/monet5//Linux/lib/MonetDB5/lib:/ufs/mk/monet5//Linux/lib/MonetDB5/bin"
 --set "gdk_dbfarm=/ufs/mk/monet5//Linux/var/MonetDB5/dbfarm" --set 
"sql_logdir=/ufs/mk/monet5//Linux/var/MonetDB5/sql_logs"  --set mapi_open=true 
--set xrpc_open=true --set mapi_port=36453 --set xrpc_port=42260 --set 
monet_prompt= --trace --dbname=mTests_src_optimizer  inlineIfthen.mal
# 11:53:01 >  

# MonetDB server v5.3.0, based on kernel v1.21.0
# Serving database 'mTests_src_optimizer'
# Compiled for x86_64-redhat-linux-gnu/64bit with 64bit OIDs dynamically linked
# Copyright (c) 1993-2007 CWI, all rights reserved
# Visit http://monetdb.cwi.nl/ for further information
# Listening for connection requests on mapi:monetdb://gio.ins.cwi.nl:36453/
#function user.foo{inline}(b:int):int;
#   foo:= 0;
#barrier go:= b<10;
#   foo:= 1;
#exit go;
#   return foo;
#end foo;
function user.foo{inline}(b:int):int;   # 0  (foo:int)<-(b:int)
    foo{inline} := 0;   # 1  (foo:int)<-(_2:int)
barrier go := calc.<(b,10);     # 2 CALCcompLTintint (go:bit)<-(b:int)(_4:int) 
jump 4
    foo{inline} := 1;   # 3  (foo:int)<-(_5:int)
exit go;        # 4  (go:bit)
    return foo{inline} := foo;  # 5  (foo:int)<-(foo:int)
end foo;        # 6  
#
#function qry();
#       b:= bat.new(:oid,:int);
#       bat.append(b,1);
#       bat.append(b,10);
#       bat.append(b,20);
#       r:bat[:oid,:int]:= mal.multiplex("user","foo",b);
#       io.print(r);
#end qry;
function user.qry():void;       # 0  (qry:void)
    b := bat.new(:oid,:int);    # 1 CMDBATnew 
(b:bat[:oid,:int])<-(_2:oid)(_3:int)
    bat.append(b,1);    # 2 BKCappend_val_wrap 
(_4:void)<-(b:bat[:oid,:int])(_5:int)
    bat.append(b,10);   # 3 BKCappend_val_wrap 
(_6:void)<-(b:bat[:oid,:int])(_7:int)
    bat.append(b,20);   # 4 BKCappend_val_wrap 
(_8:void)<-(b:bat[:oid,:int])(_9:int)
    r:bat[:oid,:int]  := mal.multiplex("user","foo",b); # 5 OPTremapMultiplex 
(r:bat[:oid,:int])<-(_11:str)(_12:str)(b:bat[:oid,:int])
    io.print(r);        # 6 IOprint_val (_13:void)<-(r:bat[:oid,:int])
end qry;        # 7  
#
#optimizer.inline("user","qry");
#optimizer.remap("user","qry");
#mdb.list("user","qry");
#
function user.main():void;      # 0  (main:void)
    mdb.list("user","qry");     # 1 MDBlist3 (_5:void)<-(_2:str)(_3:str)
end main;       # 2  
function user.qry():void;
    b := bat.new(:oid,:int);
    bat.append(b,1);
    bat.append(b,10);
    bat.append(b,20);
    r:bat[:oid,:int]{inline}  := mal.multiplex("user","foo",b);
    io.print(r);
end qry;

# 11:53:01 >  
# 11:53:01 >  Done.
# 11:53:01 >  


--- NEW FILE: inline09.stable.out ---
stdout of test 'inline09` in directory 'src/optimizer` itself:


# 11:53:00 >  
# 11:53:00 >   mserver5 "--config=/ufs/mk/monet5/Linux/etc/monetdb5.conf" 
--debug=10 --set 
"monet_mod_path=/ufs/mk/monet5//Linux/lib/MonetDB5:/ufs/mk/monet5//Linux/lib/MonetDB5/lib:/ufs/mk/monet5//Linux/lib/MonetDB5/bin"
 --set "gdk_dbfarm=/ufs/mk/monet5//Linux/var/MonetDB5/dbfarm" --set 
"sql_logdir=/ufs/mk/monet5//Linux/var/MonetDB5/sql_logs"  --set mapi_open=true 
--set xrpc_open=true --set mapi_port=36453 --set xrpc_port=42260 --set 
monet_prompt= --trace --dbname=mTests_src_optimizer  inline09.mal
# 11:53:00 >  

# MonetDB server v5.3.0, based on kernel v1.21.0
# Serving database 'mTests_src_optimizer'
# Compiled for x86_64-redhat-linux-gnu/64bit with 64bit OIDs dynamically linked
# Copyright (c) 1993-2007 CWI, all rights reserved
# Visit http://monetdb.cwi.nl/ for further information
# Listening for connection requests on mapi:monetdb://gio.ins.cwi.nl:36453/
#
## remapping inline functions
#function foo{inline}(a:str):str;
#       a:= str.replace(a,"A","");
#       a:= str.replace(a,"E","");
#       a:= str.replace(a,"I","");
#       a:= str.replace(a,"O","");
#       a:= str.replace(a,"U","");
#       a:= str.replace(a," ","");
#       return foo:=a;
#end foo;
function user.foo{inline}(a:str):str;   # 0  (foo:str)<-(a:str)
    a := str.replace(a,"A",""); # 1 STRreplace (a:str)<-(a:str)(_2:str)(_3:str)
    a := str.replace(a,"E",""); # 2 STRreplace (a:str)<-(a:str)(_4:str)(_3:str)
    a := str.replace(a,"I",""); # 3 STRreplace (a:str)<-(a:str)(_5:str)(_3:str)
    a := str.replace(a,"O",""); # 4 STRreplace (a:str)<-(a:str)(_6:str)(_3:str)
    a := str.replace(a,"U",""); # 5 STRreplace (a:str)<-(a:str)(_7:str)(_3:str)
    a := str.replace(a," ",""); # 6 STRreplace (a:str)<-(a:str)(_8:str)(_3:str)
    return foo{inline} := a;    # 7  (foo:str)<-(a:str)
end foo;        # 8  
#
#function bar{inline}(a:str,b:str):str;
#       sa:= user.foo(a);
#       sa:= str.substring(sa, 1, 5);
#       sb:= user.foo(b);
#       sb:= str.substring(sb, 1, 3);
#       c:= sa+sb;
#       return bar:=c;
#end bar;
function user.bar{inline}(a:str,b:str):str;     # 0  (bar:str)<-(a:str)(b:str)
    sa := user.foo(a);  # 1  (sa:str)<-(a:str)
    sa := str.substring(sa,1,5);        # 2 STRsubstring 
(sa:str)<-(sa:str)(_4:int)(_5:int)
    sb := user.foo(b);  # 3  (sb:str)<-(b:str)
    sb := str.substring(sb,1,3);        # 4 STRsubstring 
(sb:str)<-(sb:str)(_4:int)(_7:int)
    c := calc.+(sa,sb); # 5 CALCstrConcat (c:str)<-(sa:str)(sb:str)
    return bar{inline} := c;    # 6  (bar:str)<-(c:str)
end bar;        # 7  
#
#function qry();
#       b:= bat.new(:oid,:str);
#       bat.insert(b,[EMAIL PROTECTED],"2");
#       z:bat[:oid,:str]:= mal.multiplex("user","bar",b,b);
#end qry;
function user.qry():void;       # 0  (qry:void)
    b := bat.new(:oid,:str);    # 1 CMDBATnew 
(b:bat[:oid,:str])<-(_2:oid)(_3:str)
    bat.insert(b,[EMAIL PROTECTED],"2");        # 2 BKCinsert_bun 
(_4:void)<-(b:bat[:oid,:str])(_5:oid)(_6:str)
    z:bat[:oid,:str]  := mal.multiplex("user","bar",b,b);       # 3 
OPTremapMultiplex 
(z:bat[:oid,:str])<-(_8:str)(_9:str)(b:bat[:oid,:str])(b:bat[:oid,:str])
end qry;        # 4  
#
#       optimizer.inline("user","qry");
#       optimizer.remap("user","qry");
#       mdb.list("user","qry");
#
function user.main():void;      # 0  (main:void)
# remapping inline functions    # 1  (_1:str)
    mdb.list("user","qry");     # 2 MDBlist3 (_6:void)<-(_3:str)(_4:str)
end main;       # 3  
function user.qry():void;
    b := bat.new(:oid,:str);
    bat.insert(b,[EMAIL PROTECTED],"2");
    z:bat[:oid,:str]{inline}  := nil;
    _13 := nil;
    b := batstr.replace(b,"A","");
    b := batstr.replace(b,"E","");
    b := batstr.replace(b,"I","");
    b := batstr.replace(b,"O","");
    b := batstr.replace(b,"U","");
    b := batstr.replace(b," ","");
    _13 := b;
    _13 := batstr.substring(_13,1,5);
    _16 := nil;
    b := batstr.replace(b,"A","");
    b := batstr.replace(b,"E","");
    b := batstr.replace(b,"I","");
    b := batstr.replace(b,"O","");
    b := batstr.replace(b,"U","");
    b := batstr.replace(b," ","");
    _16 := b;
    _16 := batstr.substring(_16,1,3);
    _18 := batcalc.+(_13,_16);
    z:bat[:oid,:str]{inline}  := _18;
end qry;

# 11:53:00 >  
# 11:53:00 >  Done.
# 11:53:00 >  


--- NEW FILE: inline10.stable.out ---
stdout of test 'inline10` in directory 'src/optimizer` itself:


# 11:53:01 >  
# 11:53:01 >   mserver5 "--config=/ufs/mk/monet5/Linux/etc/monetdb5.conf" 
--debug=10 --set 
"monet_mod_path=/ufs/mk/monet5//Linux/lib/MonetDB5:/ufs/mk/monet5//Linux/lib/MonetDB5/lib:/ufs/mk/monet5//Linux/lib/MonetDB5/bin"
 --set "gdk_dbfarm=/ufs/mk/monet5//Linux/var/MonetDB5/dbfarm" --set 
"sql_logdir=/ufs/mk/monet5//Linux/var/MonetDB5/sql_logs"  --set mapi_open=true 
--set xrpc_open=true --set mapi_port=36453 --set xrpc_port=42260 --set 
monet_prompt= --trace --dbname=mTests_src_optimizer  inline10.mal
# 11:53:01 >  

# MonetDB server v5.3.0, based on kernel v1.21.0
# Serving database 'mTests_src_optimizer'
# Compiled for x86_64-redhat-linux-gnu/64bit with 64bit OIDs dynamically linked
# Copyright (c) 1993-2007 CWI, all rights reserved
# Visit http://monetdb.cwi.nl/ for further information
# Listening for connection requests on mapi:monetdb://gio.ins.cwi.nl:36453/
## remapping inline functions
## recursive inlining
#function foo{inline}(a:int,b:int):int;
#       c:= a+b;
#       return foo:=c;
#end foo;
function user.foo{inline}(a:int,b:int):int;     # 0  (foo:int)<-(a:int)(b:int)
    c := calc.+(a,b);   # 1 CALCbinaryADDintint (c:int)<-(a:int)(b:int)
    return foo{inline} := c;    # 2  (foo:int)<-(c:int)
end foo;        # 3  
#
#function bar{inline}(a:int,b:int):int;
#       z:= foo(a,b);
#       return bar:=z;
#end bar;
function user.bar{inline}(a:int,b:int):int;     # 0  (bar:int)<-(a:int)(b:int)
    z := user.foo(a,b); # 1  (z:int)<-(a:int)(b:int)
    return bar{inline} := z;    # 2  (bar:int)<-(z:int)
end bar;        # 3  
#
#function qry();
#       b:= bat.new(:oid,:int);
#       bat.insert(b,[EMAIL PROTECTED],1);
#       zz:= user.bar(1,2); # base line test for inlining
#
#       z:bat[:oid,:int]:= mal.multiplex("user","bar",b,b);
#end qry;
function user.qry():void;       # 0  (qry:void)
    b := bat.new(:oid,:int);    # 1 CMDBATnew 
(b:bat[:oid,:int])<-(_2:oid)(_3:int)
    bat.insert(b,[EMAIL PROTECTED],1);  # 2 BKCinsert_bun 
(_4:void)<-(b:bat[:oid,:int])(_5:oid)(_6:int)
    zz := user.bar(1,2);        # 3  (zz:int)<-(_6:int)(_8:int)
# base line test for inlining   # 4  (_9:str)
    z:bat[:oid,:int]  := mal.multiplex("user","bar",b,b);       # 5 
OPTremapMultiplex 
(z:bat[:oid,:int])<-(_11:str)(_12:str)(b:bat[:oid,:int])(b:bat[:oid,:int])
end qry;        # 6  
#
#       optimizer.inline("user","qry");
#       optimizer.remap("user","qry");
#       mdb.list("user","qry");
#
function user.main():void;      # 0  (main:void)
# remapping inline functions    # 1  (_1:str)
# recursive inlining    # 2  (_2:str)
    mdb.list("user","qry");     # 3 MDBlist3 (_7:void)<-(_4:str)(_5:str)
end main;       # 4  
function user.qry():void;
    b := bat.new(:oid,:int);
    bat.insert(b,[EMAIL PROTECTED],1);
    zz := nil:int;
    _16 := nil:int;
    _21 := calc.+(1,2);
    _16 := _21;
    zz := _16;
# base line test for inlining 
    z:bat[:oid,:int]{inline}  := nil;
    _25 := nil;
    _29 := batcalc.+(b,b);
    _25 := _29;
    z:bat[:oid,:int]{inline}  := _25;
end qry;

# 11:53:01 >  
# 11:53:01 >  Done.
# 11:53:01 >  


--- NEW FILE: inline10.stable.err ---
stderr of test 'inline10` in directory 'src/optimizer` itself:


# 11:53:01 >  
# 11:53:01 >   mserver5 "--config=/ufs/mk/monet5/Linux/etc/monetdb5.conf" 
--debug=10 --set 
"monet_mod_path=/ufs/mk/monet5//Linux/lib/MonetDB5:/ufs/mk/monet5//Linux/lib/MonetDB5/lib:/ufs/mk/monet5//Linux/lib/MonetDB5/bin"
 --set "gdk_dbfarm=/ufs/mk/monet5//Linux/var/MonetDB5/dbfarm" --set 
"sql_logdir=/ufs/mk/monet5//Linux/var/MonetDB5/sql_logs"  --set mapi_open=true 
--set xrpc_open=true --set mapi_port=36453 --set xrpc_port=42260 --set 
monet_prompt= --trace --dbname=mTests_src_optimizer  inline10.mal
# 11:53:01 >  

#warning: please don't forget to set your vault key!
#(see /ufs/mk/monet5/Linux/etc/monetdb5.conf)

# 11:53:01 >  
# 11:53:01 >  Done.
# 11:53:01 >  



-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2008.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
Monetdb-checkins mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/monetdb-checkins

Reply via email to