sending it again due to a mistake in the subject. sorry.

Martin, thanks for your response.

my actual application is now served by a mssql server, which has many stored-procedures, some of them are 45kb of TSQL-code, that may return about ten result-sets at once. these procedures are normally executed within about 50msec.

having this in mind...

for the sake of our discussion only, lets define :
"optimization" : automatically turning queries into query templates.
"compilation" : parsing the bulk of statements + deciding for each of the queries which "optimization" should be used (or built - if no suitable "optimization" found).
"bandwidth": sending a large bulk of statements from the client to the server.

now i would like ask: dose MonetDB stores "compilation" for each stored-procedure for reuse?
if the answer is "no", then i understand:
    "optimization" i pay only once :)
    "compilation" i pay many times :(
    "bandwidth" i pay only once :)
if the answer is "yes":
    "optimization" i pay only once :)
    "compilation" i pay only once :)
    "bandwidth" i pay only once :)

the situation today is i cannot use stored-procedure (because they don't return result sets), so it actually dose not meter whether the answer is "yes" or "no":
    "optimization" i pay only once :)
    "compilation" i pay many times :(
    "bandwidth" i pay many times :(

since MonetDB actually support returning multiple result-sets (without stored procedure), and it even support returning a single result set (using stored-function), it looks like adding this feature to stored-procedures as well, is not so much of a work (i'm thinking of contributing this work myself, having your kindly help and general directions). but if MonetDB dose NOT even store a "compilation" for each stored procedure, i guess we are too much far away...

note:
every time i said "stored-procedure", i actually meant "stored-function" as well.

thanks again.