Hi, I've found a problem with Rhino.DSL when used in a web
application. It appears that Rhino.DSL was recompiling a script over
and over, generating a new assembly on each use and crashing the
application in the end. I've tracked the cause of this problem to be
the DSLFactory.cs, line 114:

type = engine.Cache.Get(engine.CanonizeUrl(url));

this code checks if the dynamically generated type is in cache for
given script url. The default engine.CanonizeUrl() function returns a
full path of script file, but in case of web applications the full
path is assumed to be in c:\windows\system32\inetsrv...
this wouldn't be a problem, if CanonizeUrl was used also when putting
things in the cache, but it's not - actual script file locations are
used instead. In effect DSLFactory is never able to retrieve a type
from the cache and recompiles scripts every time.
Sorry but I don't have the code to reproduce this, I've 'fixed' it (by
overriding DslEngine.CanonizeUrl).
Best regards
RG


-- 
You received this message because you are subscribed to the Google Groups 
"Rhino Tools Dev" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/rhino-tools-dev?hl=en.

Reply via email to