[squeak-dev] The Inbox: Monticello-nice.528.mcz

H. Hirzel hannes.hirzel at gmail.com
Tue Jan 22 21:31:30 UTC 2013


On 1/22/13, Nicolas Cellier <nicolas.cellier.aka.nice at gmail.com> wrote:
> OK, I commited but...
> This was a first guess, and now I think it was a wrong guess.

A wrong guess in terms of getting rid of unreleased  MCDefinition instances...

But as a whole having

    Model subclass: #MCTool

makes sense to me and seems to do no harm.

>
> DependentsFields key is weak AND DependentsFields value is a
> DependentsArray which weakly point to its variables too.
> So this is not the same case as http://bugs.squeak.org/view.php?id=7119
>
> I finally found that the unreleased instances I saw were pointed by
> the docking bar 'windows' subMenu.
> When you close a window, the subMenu isn't rebuilt.
> So all the windows that existed when you last opened docking bar
> 'windows' menu will continue to exist until next time you open this
> menu.
> You usually open this menu when your screen is crowded, which tend to
> maximize the life of many garbage...
>
> The fact that the dependents are in Object DependentsFields only make
> them more visible, and my change just let them be less visible, so it
> was essentially useless...

But this analysis leads us further. It is very helpful. I have many
Morphic projects and all have windows in it. So I now know a source
why MCDefinition instances are not released.

What should we do about the 'Windows' subMenu?

Rebuild it any time a menu is called? Or rebuild it any time a window is closed?

--Hannes

>
> 2013/1/22 H. Hirzel <hannes.hirzel at gmail.com>:
>> Good Nicolas that you took the initiative to solve this long standing
>> issue of un-released MCDefinitions hanging around.
>>
>> --Hannes
>>
>> On 1/22/13, Bert Freudenberg <bert at freudenbergs.de> wrote:
>>>
>>> On 22.01.2013, at 14:42, commits at source.squeak.org wrote:
>>>
>>>> A new version of Monticello was added to project The Inbox:
>>>> http://source.squeak.org/inbox/Monticello-nice.528.mcz
>>>>
>>>> ==================== Summary ====================
>>>>
>>>> Name: Monticello-nice.528
>>>> Author: nice
>>>> Time: 22 January 2013, 3:42:35.787 pm
>>>> UUID: 3bc3c4a2-2ec6-e942-9517-5da75b32bac5
>>>> Ancestors: Monticello-bf.527
>>>>
>>>> Let MCTool inherit from Model.
>>>> This is to avoid nasty garbage to survive in DependentsFields with kilo
>>>> bytes of un-released MCDefinition cache.
>>>
>>> Looks reasonable. Commit it and we'll find out soon if there are
>>> problems.
>>>
>>> - Bert -
>>>
>>>
>>>
>>>
>>
>
>


More information about the Squeak-dev mailing list