[vwnc] Memory leak -- VisualLauncher, not sure if its VW of Gemstone ...

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
5 messages Options
Reply | Threaded
Open this post in threaded view
|

[vwnc] Memory leak -- VisualLauncher, not sure if its VW of Gemstone ...

Dennis smith-4
(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
Reply | Threaded
Open this post in threaded view
|

Re: [vwnc] Memory leak -- VisualLauncher, not sure if its VW of Gemstone ...

Dennis smith-4
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
Reply | Threaded
Open this post in threaded view
|

Re: [vwnc] Memory leak -- VisualLauncher, not sure if its VW of Gemstone ...

Alan Knight-2
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
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

--
Alan Knight [|], Engineering Manager, Cincom Smalltalk

_______________________________________________
vwnc mailing list
[hidden email]
http://lists.cs.uiuc.edu/mailman/listinfo/vwnc
Reply | Threaded
Open this post in threaded view
|

Re: [vwnc] Memory leak -- VisualLauncher, not sure if its VW of Gemstone ...

Dennis smith-4
I cleaned up all my images -- I will have to go find an old one -- will do

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?

At 12:04 PM 2009-12-26, Dennis Smith wrote:
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              <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

--
Alan Knight [|], Engineering Manager, Cincom Smalltalk

-- 
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
Reply | Threaded
Open this post in threaded view
|

Re: [vwnc] Memory leak -- VisualLauncher, not sure if its VW of Gemstone ...

Dennis smith-4
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?

At 12:04 PM 2009-12-26, Dennis Smith wrote:
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              <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

--
Alan Knight [|], Engineering Manager, Cincom Smalltalk
_______________________________________________ vwnc mailing list [hidden email] http://lists.cs.uiuc.edu/mailman/listinfo/vwnc

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