Issue 5964 in pharo: WeakRegistry's dictionary grows indefinitely large

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

Issue 5964 in pharo: WeakRegistry's dictionary grows indefinitely large

pharo
Status: FixReviewNeeded
Owner: [hidden email]
Labels: Type-Bug Milestone-1.4 Milestone-2.0

New issue 5964 by [hidden email]: WeakRegistry's  dictionary grows  
indefinitely large
http://code.google.com/p/pharo/issues/detail?id=5964

since new finalization avoids iterating over all
weak dict elements, weak dict counters (tally, expired)
are not updated..
which leads to growth and never shrinks down since it thinks
there's not enough slots, because tally and expired counters are incorrect.

This small patch should cure the issue.
Test included

We should probably do at postscript:

WeakKeyDictionary allInstances do: [:ea | ea rehash].
WeakIdentityKeyDictionary allInstances do: [:ea | ea rehash].

Attachments:
        expire-stuff.3.cs  2.3 KB


_______________________________________________
Pharo-bugtracker mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-bugtracker
Reply | Threaded
Open this post in threaded view
|

Re: Issue 5964 in pharo: WeakRegistry's dictionary grows indefinitely large

pharo

Comment #1 on issue 5964 by [hidden email]: WeakRegistry's  dictionary  
grows indefinitely large
http://code.google.com/p/pharo/issues/detail?id=5964

sorry.. #compact:  is better

WeakIdentityKeyDictionary allInstances do: [:ea | ea compact].
WeakKeyDictionary allInstances do: [:ea | ea compact].



_______________________________________________
Pharo-bugtracker mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-bugtracker
Reply | Threaded
Open this post in threaded view
|

Re: Issue 5964 in pharo: WeakRegistry's dictionary grows indefinitely large

pharo
Updates:
        Labels: -Milestone-2.0

Comment #2 on issue 5964 by [hidden email]: WeakRegistry's  
dictionary grows indefinitely large
http://code.google.com/p/pharo/issues/detail?id=5964

in 2.0 100

TODO: 1.4


_______________________________________________
Pharo-bugtracker mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-bugtracker
Reply | Threaded
Open this post in threaded view
|

Re: Issue 5964 in pharo: WeakRegistry's dictionary grows indefinitely large

pharo
Updates:
        Status: Workneeded
        Labels: Milestone-2.0

Comment #3 on issue 5964 by [hidden email]: WeakRegistry's  
dictionary grows indefinitely large
http://code.google.com/p/pharo/issues/detail?id=5964

(No comment was entered for this change.)


_______________________________________________
Pharo-bugtracker mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-bugtracker
Reply | Threaded
Open this post in threaded view
|

Re: Issue 5964 in pharo: WeakRegistry's dictionary grows indefinitely large

pharo

Comment #4 on issue 5964 by [hidden email]: WeakRegistry's  dictionary  
grows indefinitely large
http://code.google.com/p/pharo/issues/detail?id=5964

Igor, this is now working at all, can you review?


_______________________________________________
Pharo-bugtracker mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-bugtracker
Reply | Threaded
Open this post in threaded view
|

Re: Issue 5964 in pharo: WeakRegistry's dictionary grows indefinitely large

pharo
In reply to this post by pharo
Updates:
        Labels: -Milestone-1.4

Comment #6 on issue 5964 by [hidden email]: WeakRegistry's  
dictionary grows indefinitely large
http://code.google.com/p/pharo/issues/detail?id=5964

un-tagged 1.4 as we even live in 2.0 with it with not problem


_______________________________________________
Pharo-bugtracker mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-bugtracker
Reply | Threaded
Open this post in threaded view
|

Re: Issue 5964 in pharo: WeakRegistry's dictionary grows indefinitely large

pharo

Comment #7 on issue 5964 by [hidden email]: WeakRegistry's  
dictionary grows indefinitely large
http://code.google.com/p/pharo/issues/detail?id=5964

Igor could you have a look at this issue?


_______________________________________________
Pharo-bugtracker mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-bugtracker
Reply | Threaded
Open this post in threaded view
|

Re: Issue 5964 in pharo: WeakRegistry's dictionary grows indefinitely large

pharo

Comment #8 on issue 5964 by [hidden email]: WeakRegistry's  dictionary  
grows indefinitely large
http://code.google.com/p/pharo/issues/detail?id=5964

yes i will


_______________________________________________
Pharo-bugtracker mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-bugtracker
Reply | Threaded
Open this post in threaded view
|

Re: Issue 5964 in pharo: WeakRegistry's dictionary grows indefinitely large

pharo

Comment #9 on issue 5964 by [hidden email]: WeakRegistry's  
dictionary grows indefinitely large
http://code.google.com/p/pharo/issues/detail?id=5964

Nobody looked at this since summer 2012... is it a show stopper for 2.0?


_______________________________________________
Pharo-bugtracker mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-bugtracker
Reply | Threaded
Open this post in threaded view
|

Re: Issue 5964 in pharo: WeakRegistry's dictionary grows indefinitely large

pharo

Comment #10 on issue 5964 by [hidden email]: WeakRegistry's  dictionary  
grows indefinitely large
http://code.google.com/p/pharo/issues/detail?id=5964

No i looked at it recently and discussed with Stef, i guess. And the  
decision was to write a separate dictionary which will work in a way,  
weakregistry needs, instead of having one kind.

Still it is not a showstopper. So you can reassign it to 3.0 or 2.1


_______________________________________________
Pharo-bugtracker mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-bugtracker
Reply | Threaded
Open this post in threaded view
|

Re: Issue 5964 in pharo: WeakRegistry's dictionary grows indefinitely large

pharo
Updates:
        Labels: -Milestone-2.0 Milestone-3.0

Comment #11 on issue 5964 by [hidden email]: WeakRegistry's  
dictionary grows indefinitely large
http://code.google.com/p/pharo/issues/detail?id=5964

(No comment was entered for this change.)


_______________________________________________
Pharo-bugtracker mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-bugtracker