[IronPython] memory leak in IP 2.0.1
empirebuilder at gmail.com
Mon Mar 23 09:34:27 CET 2009
This was response from Dino a couple of emails ago. Direct quote
ust some comments on this as there’s a few issues intertwined here:
1. Optimized code – this is currently the default and part of the
original problem. If you execute code in “optimized” mode we generate an
uncollectible type. In 2.6 I’m switching the default to be non-optimized
and I also am trying out a change that should reduce the amount of leakage
when we do this. That will make the out of the box experience much better.
2. Multiple script runtimes – there’s a bug in the DLR when you
repeatedly create script runtimes that the rules aren’t getting collected.
This is supposed to be fixed in 2.6 but I’m still seeing some leaks in this
scenario that I’ll look into and fix. Back-porting this to 2.0 would be
quite difficult as a lot of things have changed but we could certainly look
at backporting a different fix to 2.0.
3. There’s a repro that defines “TestScriptOldClass” + n which leaks.
All class / function / member names in code get interned and this is where
this leak is coming from. If you remove the + n then everything works. We
may get rid of this interning at some point in the future but it’s a fairly
significant change. I’m inclined to believe this one isn’t as much of an
issue as usually you aren’t compiling code with new names every single
2009/3/23 Zsidó Zoltán <zsidoz at innodev.hu>
> I host ironPython in c#. It worked well. I changed from 1.1.2 to 2.0.1 and
> now I have a memory leak.
> I do not know why. Any idea?
> I do not know the working of DLR but is there a GenerateCodeSnippet option
> in IP2.0.1 too?
> Perhaps it causes the memory leak.
> Users mailing list
> Users at lists.ironpython.com
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the Ironpython-users