On 14 April 2017 at 10:19, Stephane Ducasse <stepharo.s...@gmail.com> wrote:

> But I do not get how doing that would handle the old instances?
> Because you want to migrate the old instances.
>
>
+1
there are no such thing as 'bad zombies', if they are there, it means you
either don't care about migrating data
or again, don't care about doing #becomeForward-ing them properly.
In any case i don't see how GC could help to fix these issues. You either
have consistency or don't have it,
and GC cannot do anything magical to fix it.



> Stef
>
> On Wed, Apr 12, 2017 at 1:26 PM, Denis Kudriashov <dionisi...@gmail.com>
> wrote:
>
>>
>> 2017-04-12 13:17 GMT+02:00 Guillermo Polito <guillermopol...@gmail.com>:
>>
>>>   1) each instance of A is becomed into its corresponding instance of A'
>>>   2) finally we become class A into A'
>>>       This step will make that old instances of A now have:
>>>          - the old format
>>>          - but point to the new class A
>>>
>>
>> step 1) ensures that there are no instances of class A anymore.
>> Check following script:
>>
>> c1 := Class1 new.
>> c2 := Class2 new.
>> c1 becomeForward: c2.
>> Class1 allInstances "=> #()".
>>
>>
>> And full migration is executed in high priority uninterrupted process to
>> ensure that between 1) and 2) nobody will instantiate Class1
>>
>>
>


-- 
Best regards,
Igor Stasenko.

Reply via email to