Can you create a test case for repro?

On Fri, Sep 10, 2010 at 7:28 PM, nabils <[email protected]> wrote:

> When running in a web application and only when multiple requests
> (multiple threads) are being made I get the following error when
> constructing the Boo compiler. My DslFactory is a singleton instance
> that is created in global.asax. I also register the DslEngine in the
> global.asax staright after creating the DslFactory.
> This does not happen when one request is made. Does anyone have any
> idea why this is happening?
>
> Thanks
> Regards,
> Nabil
>
> System.ArgumentException occurred
>  Message=An item with the same key has already been added.
>  Source=mscorlib
>  StackTrace:
>       at System.ThrowHelper.ThrowArgumentException(ExceptionResource
> resource)
>       at System.Collections.Generic.Dictionary`2.Insert(TKey key,
> TValue value, Boolean add)
>       at System.Collections.Generic.Dictionary`2.Add(TKey key, TValue
> value)
>       at Boo.Lang.Compiler.Util.Memo`2.Produce(TKey key, Func`2
> producer)
>       at
>
> Boo.Lang.Compiler.TypeSystem.Reflection.ReflectionTypeSystemProvider.ForAssembly(Assembly
> assembly)
>       at Boo.Lang.Compiler.CompilerParameters.LoadAssembly(String
> assemblyName, Boolean throwOnError)
>       at Boo.Lang.Compiler.CompilerParameters.LoadDefaultReferences()
>       at
> Boo.Lang.Compiler.CompilerParameters..ctor(IReflectionTypeSystemProvider
> reflectionProvider, Boolean loadDefaultReferences)
>       at Boo.Lang.Compiler.CompilerParameters..ctor(Boolean
> loadDefaultReferences)
>       at Boo.Lang.Compiler.CompilerParameters..ctor()
>       at Boo.Lang.Compiler.BooCompiler..ctor()
>       at Rhino.DSL.DslEngine.ForceCompile(String[] urls, String
> cacheFileName) in c:\Dev\ayende-rhino-dsl-71f7768\Rhino.DSL
> \DslEngine.cs:line 92
>  InnerException:
>
> Stacktrace:
>
> >       Rhino.DSL.DLL!Rhino.DSL.DslEngine.ForceCompile(string[] urls,
> string cacheFileName) Line 92 + 0x15 bytes        C#
>        Rhino.DSL.DLL!
> Rhino.DSL.DslCompilerContextCache.GetCached(Rhino.DSL.DslEngine
> engine, string[] urls) Line 68 + 0x1a bytes     C#
>        Rhino.DSL.DLL!Rhino.DSL.DslEngine.Compile(string[] urls) Line 72 +
> 0x1b bytes      C#
>        Rhino.DSL.DLL!
>
> Rhino.DSL.DslFactory.CreateInternal<ServiceLayer.Dsl.AuthorisationRule>.AnonymousMethod__3()
> Line 130 + 0x11 bytes   C#
>        Rhino.DSL.DLL!
> Rhino.DSL.AbstractLockable.ReadLock(Rhino.DSL.CacheAction cacheAction)
> Line 52 + 0xb bytes     C#
>        Rhino.DSL.DLL!
>
> Rhino.DSL.DslFactory.CreateInternal<ServiceLayer.Dsl.AuthorisationRule>(Rhino.DSL.DslFactory.ScriptNotFoundBehavior
> notFoundBehavior, string url, object[] parameters) Line 111 + 0x59
> bytes   C#
>        Rhino.DSL.DLL!
> Rhino.DSL.DslFactory.Create<ServiceLayer.Dsl.AuthorisationRule>(string
> url, object[] parameters) Line 49 + 0x35 bytes  C#
>        Rhino.DSL.DLL!
>
> Rhino.DSL.DslFactory.CreateAll<ServiceLayer.Dsl.AuthorisationRule>.AnonymousMethod__0()
> Line 82 + 0x58 bytes    C#
>        Rhino.DSL.DLL!
> Rhino.DSL.AbstractLockable.ReadLock(Rhino.DSL.CacheAction cacheAction)
> Line 58 + 0xb bytes     C#
>        Rhino.DSL.DLL!
> Rhino.DSL.DslFactory.CreateAll<ServiceLayer.Dsl.AuthorisationRule>(string
> parentUrl, object[] parameters) Line 78 + 0x59 bytes    C#
>
> --
> 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]<rhino-tools-dev%[email protected]>
> .
> For more options, visit this group at
> http://groups.google.com/group/rhino-tools-dev?hl=en.
>
>

-- 
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