Stefan Manegold wrote: > Martin, > > please double check the results you approved. > thanks for the warning. it seems I a not awake. (or asleep agai) I should look into it
> I hvaeno idea what the test (are supposed to) do, but a simple layman's > sanity check reveals the following: > > - Test "remote00" contains six "io.print()", one with a literal "1", two > with "mapi_port", and three with a BAT argument; however, the new stable > output only contains a "[ 1 ]", the two mapi_ports and two BATs (there was > no third?) have been removed by your checkin ... ? > > - Test "remote01" prints 4 BATs and one count; however, your changes of the > stable (corrct?) output replace the last two BATs and the count by > error messages ... ? > > Thanks! > > Stefan > > > On Sun, Jan 27, 2008 at 08:36:49AM +0000, Martin Kersten wrote: > >> Update of /cvsroot/monetdb/MonetDB5/src/optimizer/Tests >> In directory sc8-pr-cvs16.sourceforge.net:/tmp/cvs-serv8290/Tests >> >> Modified Files: >> remote00.stable.err remote00.stable.out remote01.stable.err >> remote01.stable.out >> Log Message: >> Approve test output >> >> >> Index: remote00.stable.out >> =================================================================== >> RCS file: /cvsroot/monetdb/MonetDB5/src/optimizer/Tests/remote00.stable.out,v >> retrieving revision 1.8 >> retrieving revision 1.9 >> diff -u -d -r1.8 -r1.9 >> --- remote00.stable.out 21 Aug 2006 14:40:36 -0000 1.8 >> +++ remote00.stable.out 27 Jan 2008 08:36:46 -0000 1.9 >> @@ -1,41 +1,25 @@ >> stdout of test 'remote00` in directory 'src/optimizer` itself: >> >> >> -# 23:06:19 > >> -# 23:06:19 > Mtimeout -timeout 60 mserver5 >> "--config=/ufs/mk/monet5/Linux/etc/MonetDB5.conf" --debug=10 --set >> "monet_mod_path=/ufs/mk/monet5/Linux/lib/MonetDB5:/ufs/mk/opensource/MonetDB/Linux/lib/MonetDB" >> --set "gdk_dbfarm=/ufs/mk/monet5/Linux/var/MonetDB5/dbfarm" --set >> "sql_logdir=/ufs/mk/monet5/Linux/var/MonetDB5/dblogs" --set mapi_port=30126 >> --set monet_prompt= --trace --dbname=mTests_src_optimizer remote00.mal < >> /dev/null >> -# 23:06:19 > >> +# 09:35:05 > >> +# 09:35:05 > /usr/bin/python remote00.py remote00 >> +# 09:35:05 > >> >> -# MonetDB Server v4.99.19 >> -# Copyright (c) 1993-2006 CWI, all rights reserved >> -# Compiled for x86_64-redhat-linux-gnu/64bit with 64bit OIDs dynamically >> linked >> -# config:/ufs/mk/monet5/Linux/etc/MonetDB5.conf >> -# dbfarm:/ufs/mk/monet5/Linux/var/MonetDB5/dbfarm >> -# dbname:mTests_src_optimizer >> +# MonetDB server v5.3.0, based on kernel v1.21.0 >> +# Serving database 'db1' >> +# Compiled for x86_64-unknown-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:12345/ >> [ 1 ] >> -[ "12345" ] >> -# MonetDB Server v4.99.19 >> -# Copyright (c) 1993-2006 CWI, all rights reserved >> -# Compiled for x86_64-redhat-linux-gnu/64bit with 64bit OIDs dynamically >> linked >> -# config:/ufs/niels/scratch/Linux-x86_64/etc/MonetDB5.conf >> -# dbfarm:/ufs/niels/scratch/Linux-x86_64/var/MonetDB5/dbfarm >> -# dbname:db2 >> +# MonetDB server v5.3.0, based on kernel v1.21.0 >> +# Serving database 'db2' >> +# Compiled for x86_64-unknown-linux-gnu/64bit with 64bit OIDs dynamically >> linked >> +# Copyright (c) 1993-2007 CWI, all rights reserved >> # Visit http://monetdb.cwi.nl/ for further information >> -[ "12346" ] >> -#-----------------# >> -# h t # name >> -# int int # type >> -#-----------------# >> -[ 1, 1 ] >> -[ 2, 7 ] >> -[ 1 ] >> -#-----------------# >> -# h t # name >> -# int int # type >> -#-----------------# >> -[ 2, 7 ] >> +# Listening for connection requests on mapi:monetdb://gio.ins.cwi.nl:12346/ >> >> -# 16:36:12 > >> -# 16:36:12 > Done. >> -# 16:36:12 > >> +# 09:35:07 > >> +# 09:35:07 > Done. >> +# 09:35:07 > >> >> >> Index: remote00.stable.err >> =================================================================== >> RCS file: /cvsroot/monetdb/MonetDB5/src/optimizer/Tests/remote00.stable.err,v >> retrieving revision 1.4 >> retrieving revision 1.5 >> diff -u -d -r1.4 -r1.5 >> --- remote00.stable.err 26 Jan 2008 13:34:23 -0000 1.4 >> +++ remote00.stable.err 27 Jan 2008 08:36:46 -0000 1.5 >> @@ -1,12 +1,16 @@ >> stderr of test 'remote00` in directory 'src/optimizer` itself: >> >> >> -# 23:06:19 > >> -# 23:06:19 > Mtimeout -timeout 60 mserver5 >> "--config=/ufs/mk/monet5/Linux/etc/MonetDB5.conf" --debug=10 --set >> "monet_mod_path=/ufs/mk/monet5/Linux/lib/MonetDB5:/ufs/mk/opensource/MonetDB/Linux/lib/MonetDB" >> --set "gdk_dbfarm=/ufs/mk/monet5/Linux/var/MonetDB5/dbfarm" --set >> "sql_logdir=/ufs/mk/monet5/Linux/var/MonetDB5/dblogs" --set mapi_port=30126 >> --set monet_prompt= --trace --dbname=mTests_src_optimizer remote00.mal < >> /dev/null >> -# 23:06:19 > >> +# 09:35:05 > >> +# 09:35:05 > /usr/bin/python remote00.py remote00 >> +# 09:35:05 > >> >> +#warning: please don't forget to set your vault key! >> +#(see /ufs/mk/monet5/Linux/etc/monetdb5.conf) >> +#warning: please don't forget to set your vault key! >> +#(see /ufs/mk/monet5/Linux/etc/monetdb5.conf) >> >> -# 23:06:19 > >> -# 23:06:19 > Done. >> -# 23:06:19 > >> +# 09:35:07 > >> +# 09:35:07 > Done. >> +# 09:35:07 > >> >> >> Index: remote01.stable.err >> =================================================================== >> RCS file: /cvsroot/monetdb/MonetDB5/src/optimizer/Tests/remote01.stable.err,v >> retrieving revision 1.4 >> retrieving revision 1.5 >> diff -u -d -r1.4 -r1.5 >> --- remote01.stable.err 26 Jan 2008 13:34:23 -0000 1.4 >> +++ remote01.stable.err 27 Jan 2008 08:36:46 -0000 1.5 >> @@ -1,12 +1,14 @@ >> stderr of test 'remote01` in directory 'src/optimizer` itself: >> >> >> -# 23:06:19 > >> -# 23:06:19 > Mtimeout -timeout 60 mserver5 >> "--config=/ufs/mk/monet5/Linux/etc/MonetDB5.conf" --debug=10 --set >> "monet_mod_path=/ufs/mk/monet5/Linux/lib/MonetDB5:/ufs/mk/opensource/MonetDB/Linux/lib/MonetDB" >> --set "gdk_dbfarm=/ufs/mk/monet5/Linux/var/MonetDB5/dbfarm" --set >> "sql_logdir=/ufs/mk/monet5/Linux/var/MonetDB5/dblogs" --set mapi_port=30126 >> --set monet_prompt= --trace --dbname=mTests_src_optimizer remote01.mal < >> /dev/null >> -# 23:06:19 > >> +# 09:35:05 > >> +# 09:35:05 > 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=39715 --set >> xrpc_port=43844 --set monet_prompt= --trace --dbname=mTests_src_optimizer >> remote01.mal >> +# 09:35:05 > >> >> +#warning: please don't forget to set your vault key! >> +#(see /ufs/mk/monet5/Linux/etc/monetdb5.conf) >> >> -# 23:06:19 > >> -# 23:06:19 > Done. >> -# 23:06:19 > >> +# 09:35:05 > >> +# 09:35:05 > Done. >> +# 09:35:05 > >> >> >> Index: remote01.stable.out >> =================================================================== >> RCS file: /cvsroot/monetdb/MonetDB5/src/optimizer/Tests/remote01.stable.out,v >> retrieving revision 1.10 >> retrieving revision 1.11 >> diff -u -d -r1.10 -r1.11 >> --- remote01.stable.out 8 Jun 2007 08:47:31 -0000 1.10 >> +++ remote01.stable.out 27 Jan 2008 08:36:46 -0000 1.11 >> @@ -1,36 +1,53 @@ >> stdout of test 'remote01` in directory 'src/optimizer` itself: >> >> >> -# 23:06:19 > >> -# 23:06:19 > Mtimeout -timeout 60 mserver5 >> "--config=/ufs/mk/monet5/Linux/etc/MonetDB5.conf" --debug=10 --set >> "monet_mod_path=/ufs/mk/monet5/Linux/lib/MonetDB5:/ufs/mk/opensource/MonetDB/Linux/lib/MonetDB" >> --set "gdk_dbfarm=/ufs/mk/monet5/Linux/var/MonetDB5/dbfarm" --set >> "sql_logdir=/ufs/mk/monet5/Linux/var/MonetDB5/dblogs" --set mapi_port=30126 >> --set monet_prompt= --trace --dbname=mTests_src_optimizer remote01.mal < >> /dev/null >> -# 23:06:19 > >> +# 09:35:05 > >> +# 09:35:05 > 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=39715 --set >> xrpc_port=43844 --set monet_prompt= --trace --dbname=mTests_src_optimizer >> remote01.mal >> +# 09:35:05 > >> >> -# MonetDB Server v4.99.19 >> -# Copyright (c) 1993-2006 CWI, all rights reserved >> -# Compiled for x86_64-redhat-linux-gnu/64bit with 64bit OIDs dynamically >> linked >> -# config:/ufs/mk/monet5/Linux/etc/MonetDB5.conf >> -# dbfarm:/ufs/mk/monet5/Linux/var/MonetDB5/dbfarm >> -# dbname:mTests_src_optimizer >> +# MonetDB server v5.3.0, based on kernel v1.21.0 >> +# Serving database 'mTests_src_optimizer' >> +# Compiled for x86_64-unknown-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:39715/ >> ## First test of the remoteQueries optimizer >> ## we create a remote bat and fake a bind operation. >> # >> -#mid:= >> mserver.reconnect("s0_0","localhost",50000,"monetdb","monetdb","mal"); >> -#mserver.rpc(mid,"rb:= bat.new(:int,:int); bat.setName(rb,\"rbat\"); >> bat.insert(rb,1,1);"); >> +#cat:= inspect.getEnvironment(); >> +#fs := algebra.find(cat,"mapi_port"); >> +#port := calc.int(fs); >> +##io.printf("port %d\n",port); >> # >> -#b:bat[:int,:int]:= mserver.bind(mid,"rbat"); >> -#mserver.rpc(mid,"c:=algebra.select(b,0,12);"); >> -#c:bat[:int,:int]:= mserver.rpc(mid, "io.print(c);"); >> +#mid:= mapi.reconnect("localhost",port,"s0_0","monetdb","monetdb","mal"); >> +#mapi.rpc(mid,"rb:= bat.new(:int,:int); bat.setName(rb,\"rbat\");"); >> +#mapi.rpc(mid,"bat.insert(rb,1,1);"); >> +#mapi.rpc(mid,"bat.insert(rb,3,3);"); >> +#mapi.rpc(mid,"bat.insert(rb,5,5);"); >> +#mapi.rpc(mid,"bat.insert(rb,6,6);"); >> +#mapi.rpc(mid,"bat.insert(rb,7,7);"); >> +#mapi.rpc(mid,"c:=algebra.select(rb,0,12);"); >> +#c:bat[:int,:int]:= mapi.rpc(mid, "io.print(c);"); >> #io.print(c); >> -#mserver.rpc(mid,"d:=algebra.select(b,5,10);"); >> +#mapi.rpc(mid,"c:=algebra.select(rb,0,4);"); >> +#c:bat[:int,:int]:= mapi.rpc(mid, "io.print(c);"); >> +#io.print(c); >> +# >> +#b:bat[:int,:int]:= mapi.bind(mid,"rbat"); >> +#io.print(b); >> +# >> +## see if we can do some remote selections. >> +#mapi.rpc(mid,"d:=algebra.select(b,5,10);"); >> #low:= 5+1; >> -#mserver.put(mid,"low",low); >> -#mserver.rpc(mid,"e:=algebra.select(d,low,7);"); >> -#mserver.rpc(mid,"i:=aggr.count(d);"); >> -#i:lng:= mserver.rpc(mid,"io.print(i);"); >> +#mapi.put(mid,"low",low); >> +#mapi.rpc(mid,"e:=algebra.select(d,low,7);"); >> +#mapi.rpc(mid,"i:=aggr.count(d);"); >> +#i:lng:= mapi.rpc(mid,"io.print(i);"); >> #io.printf(" count %d\n",i); >> -#d:bat[:int,:int]:= mserver.rpc(mid,"io.print(d);"); >> +#d:bat[:int,:int]:= mapi.rpc(mid,"io.print(d);"); >> #io.print(d); >> +#mapi.disconnect(mid); >> +#optimizer.remoteQueries(); >> # >> function user.main():void; # 0 (main:void) >> # First test of the remoteQueries optimizer # 1 (_1:str) >> @@ -39,34 +56,33 @@ >> fs := algebra.find(cat,"mapi_port"); # 4 ALGfind >> (fs:str)<-(cat:bat[:str,:str])(_5:str) >> port := calc.int(fs); # 5 CALCstr2int (port:int)<-(fs:str) >> #io.printf("port %d\n",port); # 6 (_7:str) >> - mid := >> mserver.reconnect("localhost",port,"s0_0","monetdb","monetdb","mal"); # 7 >> SERVERreconnectAlias >> (mid:int)<-(_9:str)(port:int)(_10:str)(_11:str)(_11:str)(_12:str) >> - mserver.rpc(mid,"rb:= bat.new(:int,:int); bat.setName(rb,\"rbat\");"); >> # 8 SERVERquery (_13:void)<-(mid:int)(_14:str) >> - mserver.rpc(mid,"bat.insert(rb,1,1);"); # 9 SERVERquery >> (_15:void)<-(mid:int)(_16:str) >> - mserver.rpc(mid,"bat.insert(rb,3,3);"); # 10 SERVERquery >> (_17:void)<-(mid:int)(_18:str) >> - mserver.rpc(mid,"bat.insert(rb,5,5);"); # 11 SERVERquery >> (_19:void)<-(mid:int)(_20:str) >> - mserver.rpc(mid,"bat.insert(rb,6,6);"); # 12 SERVERquery >> (_21:void)<-(mid:int)(_22:str) >> - mserver.rpc(mid,"bat.insert(rb,7,7);"); # 13 SERVERquery >> (_23:void)<-(mid:int)(_24:str) >> - mserver.rpc(mid,"c:=algebra.select(rb,0,12);"); # 14 SERVERquery >> (_25:void)<-(mid:int)(_26:str) >> - c:bat[:int,:int] := mserver.rpc(mid,"io.print(c);"); # 15 >> SERVERmapi_rpc_bat (c:bat[:int,:int])<-(mid:int)(_28:str) >> + mid := >> mapi.reconnect("localhost",port,"s0_0","monetdb","monetdb","mal"); # 7 >> SERVERreconnectAlias >> (mid:int)<-(_9:str)(port:int)(_10:str)(_11:str)(_11:str)(_12:str) >> + mapi.rpc(mid,"rb:= bat.new(:int,:int); bat.setName(rb,\"rbat\");"); >> # 8 SERVERquery (_13:void)<-(mid:int)(_14:str) >> + mapi.rpc(mid,"bat.insert(rb,1,1);"); # 9 SERVERquery >> (_15:void)<-(mid:int)(_16:str) >> + mapi.rpc(mid,"bat.insert(rb,3,3);"); # 10 SERVERquery >> (_17:void)<-(mid:int)(_18:str) >> + mapi.rpc(mid,"bat.insert(rb,5,5);"); # 11 SERVERquery >> (_19:void)<-(mid:int)(_20:str) >> + mapi.rpc(mid,"bat.insert(rb,6,6);"); # 12 SERVERquery >> (_21:void)<-(mid:int)(_22:str) >> + mapi.rpc(mid,"bat.insert(rb,7,7);"); # 13 SERVERquery >> (_23:void)<-(mid:int)(_24:str) >> + mapi.rpc(mid,"c:=algebra.select(rb,0,12);"); # 14 SERVERquery >> (_25:void)<-(mid:int)(_26:str) >> + c:bat[:int,:int] := mapi.rpc(mid,"io.print(c);"); # 15 >> SERVERmapi_rpc_bat (c:bat[:int,:int])<-(mid:int)(_28:str) >> io.print(c); # 16 IOprint_val (_29:void)<-(c:bat[:int,:int]) >> - mserver.rpc(mid,"c:=algebra.select(rb,0,4);"); # 17 SERVERquery >> (_30:void)<-(mid:int)(_31:str) >> - c:bat[:int,:int] := mserver.rpc(mid,"io.print(c);"); # 18 >> SERVERmapi_rpc_bat (c:bat[:int,:int])<-(mid:int)(_28:str) >> + mapi.rpc(mid,"c:=algebra.select(rb,0,4);"); # 17 SERVERquery >> (_30:void)<-(mid:int)(_31:str) >> + c:bat[:int,:int] := mapi.rpc(mid,"io.print(c);"); # 18 >> SERVERmapi_rpc_bat (c:bat[:int,:int])<-(mid:int)(_28:str) >> io.print(c); # 19 IOprint_val (_32:void)<-(c:bat[:int,:int]) >> - mserver.rpc(mid,"b:bat[:int,:int] := bbp.bind(\"rbat\":str);"); # 20 >> SERVERmapi_rpc_bat (_57:bat[:int,:int])<-(mid:int)(_58:str) >> - b:bat[:int,:int] := mserver.rpc(mid,"io.print(b);"); # 21 >> SERVERmapi_rpc_bat (b:bat[:int,:int])<-(mid:int)(_60:str) >> - io.print(b); # 22 IOprint_val (_35:void)<-(b:bat[:int,:int]) >> -# see if we can do some remote selections. # 23 (_36:str) >> - mserver.rpc(mid,"d:=algebra.select(b,5,10);"); # 24 SERVERquery >> (_37:void)<-(mid:int)(_38:str) >> - low := calc.+(5,1); # 25 CALCbinaryADDintint >> (low:int)<-(_40:int)(_41:int) >> - mserver.put(mid,"low",low); # 26 SERVERput >> (_42:void)<-(mid:int)(_43:str)(low:int) >> - mserver.rpc(mid,"e:=algebra.select(d,low,7);"); # 27 SERVERquery >> (_44:void)<-(mid:int)(_45:str) >> - mserver.rpc(mid,"i:=aggr.count(d);"); # 28 SERVERquery >> (_46:void)<-(mid:int)(_47:str) >> - i:lng := mserver.rpc(mid,"io.print(i);"); # 29 >> SERVERmapi_rpc_single_row (i:lng)<-(mid:int)(_49:str) >> - io.printf(" count %d\n",i); # 30 IOprint_formatted_lng >> (_50:void)<-(_51:str)(i:lng) >> - d:bat[:int,:int] := mserver.rpc(mid,"io.print(d);"); # 31 >> SERVERmapi_rpc_bat (d:bat[:int,:int])<-(mid:int)(_53:str) >> - io.print(d); # 32 IOprint_val (_54:void)<-(d:bat[:int,:int]) >> - mserver.disconnect(mid); # 33 SERVERdisconnect >> (_55:void)<-(mid:int) >> -end main; # 34 >> + b:bat[:int,:int] := mapi.bind(mid,"rbat"); # 20 SERVERbindBAT >> (b:bat[:int,:int])<-(mid:int)(_34:str) >> + io.print(b); # 21 IOprint_val (_35:void)<-(b:bat[:int,:int]) >> +# see if we can do some remote selections. # 22 (_36:str) >> + mapi.rpc(mid,"d:=algebra.select(b,5,10);"); # 23 SERVERquery >> (_37:void)<-(mid:int)(_38:str) >> + low := calc.+(5,1); # 24 CALCbinaryADDintint >> (low:int)<-(_40:int)(_41:int) >> + mapi.put(mid,"low",low); # 25 SERVERput >> (_42:void)<-(mid:int)(_43:str)(low:int) >> + mapi.rpc(mid,"e:=algebra.select(d,low,7);"); # 26 SERVERquery >> (_44:void)<-(mid:int)(_45:str) >> + mapi.rpc(mid,"i:=aggr.count(d);"); # 27 SERVERquery >> (_46:void)<-(mid:int)(_47:str) >> + i:lng := mapi.rpc(mid,"io.print(i);"); # 28 SERVERmapi_rpc_single_row >> (i:lng)<-(mid:int)(_49:str) >> + io.printf(" count %d\n",i); # 29 IOprint_formatted_lng >> (_50:void)<-(_51:str)(i:lng) >> + d:bat[:int,:int] := mapi.rpc(mid,"io.print(d);"); # 30 >> SERVERmapi_rpc_bat (d:bat[:int,:int])<-(mid:int)(_53:str) >> + io.print(d); # 31 IOprint_val (_54:void)<-(d:bat[:int,:int]) >> + mapi.disconnect(mid); # 32 SERVERdisconnect (_55:void)<-(mid:int) >> +end main; # 33 >> #-----------------# >> # h t # name >> # int int # type >> @@ -82,25 +98,12 @@ >> #-----------------# >> [ 1, 1 ] >> [ 3, 3 ] >> -#-----------------# >> -# h t # name >> -# int int # type >> -#-----------------# >> -[ 1, 1 ] >> -[ 3, 3 ] >> -[ 5, 5 ] >> -[ 6, 6 ] >> -[ 7, 7 ] >> - count 3 >> -#-----------------# >> -# h t # name >> -# int int # type >> -#-----------------# >> -[ 5, 5 ] >> -[ 6, 6 ] >> -[ 7, 7 ] >> +!MALException:mapi.bind:remote error: >> SyntaxException:parseError:b:bat[int,int]:=bbp.bind("rbat"); >> +!MALException:mapi.bind:remote error:SyntaxException:parseError: ^',' >> expected >> +!MALException:mapi.bind:remote error:SyntaxException:parseError: >> +!MALException:mapi.bind:remote error:';' expected >> >> -# 23:06:19 > >> -# 23:06:19 > Done. >> -# 23:06:19 > >> +# 09:35:05 > >> +# 09:35:05 > Done. >> +# 09:35:05 > >> >> >> >> ------------------------------------------------------------------------- >> 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 >> >> >> > > ------------------------------------------------------------------------- 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-developers mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/monetdb-developers
