MaTransaction memory hog

Chris Muller asqueaker at gmail.com
Sat Oct 24 04:08:29 UTC 2009


Earlier this year, I had switched Magma over from requiring
applications to #finalizeOids to registering with WeakArray.
Apparently, I missed one!  Thanks, I will fix that.

sig, I have not experienced any problems myself since making the
above-mentioned change.  There are no race conditions that I am aware
of, can you elaborate about the problems you experienced?

Thanks,
  Chris

On Fri, Oct 23, 2009 at 4:51 PM, Igor Stasenko <siguctua at gmail.com> wrote:
> 2009/10/23 Carlo <snoobabk at yahoo.ie>:
>> Hi
>>
>> First off I'd like to say what a pleasure working with Magma has been so far
>> and I haven't even got to the HA functionality :)
>>
>> I noticed in my little app that memory was increasing over a few days. I
>> think I pinpointed it to MaTransaction not finalizing the readSet.
>> i.e. in MaTransaction>>initialize
>>        super initialize.
>>        readSet := MagmaPreferences weakIdentityKeyDictionaryClass new.
>>        largeCollectionChanges := WeakSet new.
>>        self resetCommitPackage.
>>        ignoreModifiedSignals := false.
>>        "Conveniently initialized to avoid nil check in code."
>>        commitNumber := 0
>>
>> I modified the initialization of the readSet to be registered with the
>> finalization process (WeakArray addWeakDependent: readSet.) i.e
>>        super initialize.
>>        readSet := MagmaPreferences weakIdentityKeyDictionaryClass new.
>>        WeakArray addWeakDependent: readSet.
>> ...
>>
>> So far memory has improved and sits around 70mb consistently.
>> Hopefully this will be helpful for someone else.
>
> As far as i remember, Magma using own means to finalize values in
> readset and rehash it.
> Registering readset in finalizatin process is a bit dangerous, because
> we had experienced some problems
> with it before - i.e. corruption of magma internal structures, because
> of race conditions.
>
>> Cheers
>> _______________________________________________
>> Magma mailing list
>> Magma at lists.squeakfoundation.org
>> http://lists.squeakfoundation.org/mailman/listinfo/magma
>>
>
>
>
> --
> Best regards,
> Igor Stasenko AKA sig.
> _______________________________________________
> Magma mailing list
> Magma at lists.squeakfoundation.org
> http://lists.squeakfoundation.org/mailman/listinfo/magma
>


More information about the Magma mailing list