Re: [Vm-dev] Weak finalization enh. are still not integrated into VM(s)

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

Re: [Vm-dev] Weak finalization enh. are still not integrated into VM(s)

Igor Stasenko
On 22 September 2010 06:23, David T. Lewis <[hidden email]> wrote:

> On Tue, Sep 21, 2010 at 04:22:22PM +0300, Igor Stasenko wrote:
>>
>> On 21 September 2010 06:20, David T. Lewis <[hidden email]> wrote:
>> >
>> > On Tue, Sep 21, 2010 at 03:28:35AM +0300, Igor Stasenko wrote:
>> >>
>> >> I am also uploaded a slice of system changes with new classes & rest
>> >> of stuff into inbox:
>> >>
>> >>
>> >> CollectionsTests-Igor.Stasenko.169
>> >> Collections-Igor.Stasenko.370
>> >> Kernel-Igor.Stasenko.478
>> >> System-Igor.Stasenko.358
>> >>
>> >> note, that despite of these changes, system are still using old
>> >> WeakRegistry instance,
>> >> and obviously 'WeakRegistry default' needs to be modified to be
>> >> replaced with new functionality.
>> >
>> > These inbox changes are out of date with respect to the trunk, so
>> > would need to be merged with care.
>>
>> Yeah, i did not updated the image before applying changesets.
>>
>> > But aside from that, is there
>> > any reason that your changes should *not* be moved into trunk now?
>> > If no objections, then we should include them now.
>> >
>>
>> There are a couple of doits, which should be invoked after loading changes:
>>
>> WeakArray restartFinalizationProcess
>> and of couse
>> Smalltalk recreateSpecialObjectsArray
>>
>> Btw, i found that in image i was using,
>> Smalltalk specialObjectsArray size
>> was 50
>> while in #recreateSpecialObjectsArray method there was already 55 entries
>> (and with weak finalization it should be 56).
>
> This should already be updated in trunk:
>
>        Name: System-dtl.333
>        Author: dtl
>        Time: 25 May 2010, 9:00:22.752 pm
>        Ancestors: System-spd.332
>        Update SmalltalkImage>>recreateSpecialObjectsArray for support of Alien and improved
>        finalization (Mantis 7473). Corresponding VM support is in SqS/VMMaker-dtl.175.
>
> So after a #recreateSpecialObjectsArray the size is 56, and the last slot
> is used for WeakFinalizer if present in the image.
>
> I think that everything is ready for your WeakFinalizer updates. Unless
> there are any other issues, please just go ahead and commit them to trunk.
>

I will do that shortly.
But i am little know, how to produce a multi-stage .mcd files,
and in my case, it should be split on stages, since i want to fully
replace WeakRegistry with new implementation,
and migrate instances of it.
So, i will produce a new changesets, which can be applied to both
pharo and squeak, and then
someone, who knows the process better, will make a final integration.

> :)
>
> Dave
>
>>
>> > I understand that the VM changes are not yet available in the
>> > official VMs, but this should be corrected the next time that new
>> > VMs are distributed.
>> >
>> > Dave
>> >
>> >
>> Thanks, David.
>>
>>
>> --
>> Best regards,
>> Igor Stasenko AKA sig.
>



--
Best regards,
Igor Stasenko AKA sig.