(I will post this on both vwnc and Gemstone forums).
If you count the number of "isOpen not" VisualLaunchers VisualLauncher allInstances select: [:v | v builder window isOpen not] Then close the launcher, then do "VisualLauncher open" (probably don't have to), then a full GC then count the number of "isOpen not" VisualLaunchers, you find you have 1 more, and it hangs onto lots of other stuff. My image had 11 such launchers and had grown by 30Mb. I do have Gembuilder loaded and maybe its that, as it is there somewhere in the list, but the path is something like Object -> EventHandlers -> an EphemeronDictionary ... -> an ActionSequence and the ActionSequence is hanging onto the lists. OK, how did I get an EphemeronDictionary in there? If I just use ReferencePathCollector it says there are no paths, so I had to disable the check for GC'able objects -- but note that the reference does not go away with GC's (of any type). I wrote code to dump the closed VisaulLauncher instances from those ActionSequence arrays and all my memory came back. -- Dennis Smith +1 416.798.7948 Cherniak Software Development Corporation Fax: +1 416.798.0948 509-2001 Sheppard Avenue East [hidden email] Toronto, ON M2J 4Z8 sip:[hidden email] Canada http://www.CherniakSoftware.com Entrance off Yorkland Blvd south of Sheppard Ave east of the DVP _______________________________________________ vwnc mailing list [hidden email] http://lists.cs.uiuc.edu/mailman/listinfo/vwnc |
Another interesting thing about this, which I suppose goes along with
the fact that its an Ephemeron Dictionary that seems to be holding onto it ... Even though I find this ActionSequence, and if I clean out the dead instances of VisualLauncher (as Message receivers) - my memory all comes back, doing ActionSequence allInstances returns an empty list. On 12/26/2009 11:32 AM, Dennis Smith wrote: > (I will post this on both vwnc and Gemstone forums). > > If you count the number of "isOpen not" VisualLaunchers > VisualLauncher allInstances select: [:v | v builder window isOpen not] > Then close the launcher, then do "VisualLauncher open" (probably don't > have to), > then a full GC then count the number of "isOpen not" VisualLaunchers, > you find you have 1 more, > and it hangs onto lots of other stuff. My image had 11 such launchers > and had grown by 30Mb. > > I do have Gembuilder loaded and maybe its that, as it is there somewhere > in the list, but > the path is something like > Object -> EventHandlers -> an EphemeronDictionary ... -> an > ActionSequence > and the ActionSequence is hanging onto the lists. > > OK, how did I get an EphemeronDictionary in there? If I just use > ReferencePathCollector > it says there are no paths, so I had to disable the check for GC'able > objects -- but note > that the reference does not go away with GC's (of any type). > > I wrote code to dump the closed VisaulLauncher instances from those > ActionSequence arrays > and all my memory came back. > > > -- Dennis Smith +1 416.798.7948 Cherniak Software Development Corporation Fax: +1 416.798.0948 509-2001 Sheppard Avenue East [hidden email] Toronto, ON M2J 4Z8 sip:[hidden email] Canada http://www.CherniakSoftware.com Entrance off Yorkland Blvd south of Sheppard Ave east of the DVP _______________________________________________ vwnc mailing list [hidden email] http://lists.cs.uiuc.edu/mailman/listinfo/vwnc |
It's not clear to me from your description if the action
sequence is the key or the value in the list of events. I'd guess the
value, because there doesn't seem to be much point in attaching a trigger
event or announcement to an action sequence, which wouldn't ever trigger
them. So what would be useful is to know the key. There aren't any action
sequences in the base image, so presumably something in either an add-on
or your code is adding them. The most likely thing is a menu item, and
something might be holding on to that menu item. So I'd say find out
what's the key, who creates it, and who's holding on to that. It might
also be interesting to know how the action sequence is holding on to the
launcher. Is it really sending something to the VisualLauncher, or it is
it being held indirectly?
At 12:04 PM 2009-12-26, Dennis Smith wrote: Another interesting thing about this, which I suppose goes along with --
Alan Knight [|], Engineering Manager, Cincom Smalltalk
_______________________________________________ vwnc mailing list [hidden email] http://lists.cs.uiuc.edu/mailman/listinfo/vwnc |
On 12/30/2009 10:24 AM, Alan Knight wrote: It's not clear to me from your description if the action sequence is the key or the value in the list of events. I'd guess the value, because there doesn't seem to be much point in attaching a trigger event or announcement to an action sequence, which wouldn't ever trigger them. So what would be useful is to know the key. There aren't any action sequences in the base image, so presumably something in either an add-on or your code is adding them. The most likely thing is a menu item, and something might be holding on to that menu item. So I'd say find out what's the key, who creates it, and who's holding on to that. It might also be interesting to know how the action sequence is holding on to the launcher. Is it really sending something to the VisualLauncher, or it is it being held indirectly? -- Dennis Smith +1 416.798.7948 Cherniak Software Development Corporation Fax: +1 416.798.0948 509-2001 Sheppard Avenue East [hidden email] Toronto, ON M2J 4Z8 <a class="moz-txt-link-freetext" href="sip:dennis@CherniakSoftware.com">sip:dennis@... Canada http://www.CherniakSoftware.com Entrance off Yorkland Blvd south of Sheppard Ave east of the DVP _______________________________________________ vwnc mailing list [hidden email] http://lists.cs.uiuc.edu/mailman/listinfo/vwnc |
In reply to this post by Alan Knight-2
The problem is in Gembuilder for Gemstone ... I will post it to the
gemstone forum.
Basically it finds all instances of VisualLauncher (via the window scheduler), and sets up each in an array to be notified when gemstone sessions change -- very nice unless you close the VisualLauncher, which I do from time to time -- then open a new one, then close that one -- and eventually with the things the launcher is pointing to which also should no longer exist, 50Mb gone. On 12/30/2009 10:24 AM, Alan Knight wrote: It's not clear to me from your description if the action sequence is the key or the value in the list of events. I'd guess the value, because there doesn't seem to be much point in attaching a trigger event or announcement to an action sequence, which wouldn't ever trigger them. So what would be useful is to know the key. There aren't any action sequences in the base image, so presumably something in either an add-on or your code is adding them. The most likely thing is a menu item, and something might be holding on to that menu item. So I'd say find out what's the key, who creates it, and who's holding on to that. It might also be interesting to know how the action sequence is holding on to the launcher. Is it really sending something to the VisualLauncher, or it is it being held indirectly? -- Dennis Smith +1 416.798.7948 Cherniak Software Development Corporation Fax: +1 416.798.0948 509-2001 Sheppard Avenue East [hidden email] Toronto, ON M2J 4Z8 <a class="moz-txt-link-freetext" href="sip:dennis@CherniakSoftware.com">sip:dennis@... Canada http://www.CherniakSoftware.com Entrance off Yorkland Blvd south of Sheppard Ave east of the DVP _______________________________________________ vwnc mailing list [hidden email] http://lists.cs.uiuc.edu/mailman/listinfo/vwnc |
Free forum by Nabble | Edit this page |