Bugs item #1603655, was opened at 2006-11-27 12:05
Message generated for change (Comment added) made by sjoerd
You can respond by visiting:
https://sourceforge.net/tracker/?func=detail&atid=482468&aid=1603655&group_id=56967
Please note that this message will contain a full copy of the comment thread,
including the initial issue submission, for this request,
not just the latest update.
Category: Mapi
Group: MonetDB4 CVS Head
>Status: Closed
>Resolution: Wont Fix
Priority: 5
Private: No
Submitted By: Sandor Heman (saanti)
Assigned to: Nobody/Anonymous (nobody)
Summary: Inconsistency in Mapi Client context locality
Initial Comment:
Under certain conditions, procedures defined in a running Mserver, are not
visible from a MapiClient connecting to that server:
Start Mserver and run:
MonetDB>module(mapi);
MonetDB>PROC test() : void { print(1); }
MonetDB>mil_start();
When connecting with MapiClient and running above procedure:
mil>test();
MAPI = [EMAIL PROTECTED]:50000
QUERY = test();
ERROR = !ERROR: interpret: no matching MIL operator to 'test()'.
However, starting the Mserver with either of the following dbinit strings does
seem to work:
Mserver --dbinit="module(mapi);mil_start(); PROC test() : void { print(1); }"
AND:
Mserver --dbinit="module(mapi); PROC test() : void { print(1); }; mil_start();"
result in MapiClient:
mil>test();
[ 1 ]
mil>
----------------------------------------------------------------------
>Comment By: Sjoerd Mullender (sjoerd)
Date: 2007-02-19 15:06
Message:
Logged In: YES
user_id=43607
Originator: NO
Use the workaround. It's unlikely that this will get fixed.
----------------------------------------------------------------------
Comment By: Sandor Heman (saanti)
Date: 2006-11-27 18:24
Message:
Logged In: YES
user_id=1292024
Originator: YES
The suggusted approach does work, e.g.:
what's the behaviour if you define the PROC in a script that's given as a
command line option to Mserver, i.e.:
cat <<EOF >x.mil
module(mapi);
PROC test() : void { print(1); }
mil_start();
EOF
Mserver x.mil
Does produce the desired output when calling test() over MapiClient.
However, the below approach ('sourcing' the PROC from x.mil from an
external file
t.mil) used to work in the past as well, but does not work anymore:
cat <<EOF >x.mil
module(mapi);
var p := environment().find("monet_cwd");
var t := p + "/t.mil";
source(t);
mil_start();
EOF
cat <<EOF >t.mil
PROC test() : void { print(1); }
EOF
Mserver x.mil
calling test from MapiClient now again results in:
mil>test();
MAPI = [EMAIL PROTECTED]:50000
QUERY = test();
ERROR = !ERROR: interpret: no matching MIL operator to 'test()'.
Hope this makes things more clear.
Greetings
Sandor
----------------------------------------------------------------------
Comment By: Stefan Manegold (stmane)
Date: 2006-11-27 14:26
Message:
Logged In: YES
user_id=572415
Originator: NO
what's the behaviour if you define the PROC in a script that's given as a
command line option to Mserver, i.e.:
cat <<EOF >x.mil
module(mapi);
PROC test() : void { print(1); }
mil_start();
EOF
Mserver x.mil
?
----------------------------------------------------------------------
You can respond by visiting:
https://sourceforge.net/tracker/?func=detail&atid=482468&aid=1603655&group_id=56967
-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys-and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
Monetdb-bugs mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/monetdb-bugs