Hi Denis, Hi All,

On Wed, May 9, 2018 at 1:35 AM, Denis Kudriashov <dionisiydk@gmail.com> wrote:
I checked on my few days image. And I have >2000 announcers.
Cleaning Calypso cache does not help. And in fact after closing all browsers and collecting garbage the cache became empty.

I found that most of subscriptions are related to rubric announcements.��

Can you tell me whether this is an application bug or possibly a bug with the Spur VMs weak collections?�� I'd hate for this to be an undiagnosed and unfixed VM bug.
��

2018-05-08 18:36 GMT+03:00 Henrik-Nergaard <draagren@outlook.com>:
Hi,

>Announcer allInstances size. ���7124"
Remember that GT implements a lot of Announcer subclasses so to gain a
better picture you should use:
Announcer allSubInstances size.

>clearly, that���s not good.
>a symptom there is something leaking badly in our current development
version.
There has been leaking Announcements back from Pharo 5. Most of them is
tangled into Rubric, and some GT tools.
In the past many of the leaks has been from mixing weak and non weak
subscriptions in the same announcer, IIRC.

Here is a script you can run.

===========================================================
| bag dct |

bag := Bag new.
dct := IdentityDictionary new.

Smalltalk garbageCollect.
Announcer allSubInstancesDo: [ :instance | | subs |
�� �� �� �� subs := instance subscriptions subscriptions.
�� �� �� �� subs do: [ :each | | cls |
�� �� �� �� �� �� �� �� cls := each announcementClass.
�� �� �� �� �� �� �� �� bag add: cls.
�� �� �� �� �� �� �� �� dct at: cls
�� �� �� �� �� �� �� �� �� �� �� �� ifPresent: [ :set | set add: each class ]
�� �� �� �� �� �� �� �� �� �� �� �� ifAbsentPut: [ IdentitySet with: each class ]
�� �� �� �� ]
].

"{ bag . dct } inspect."

"String streamContents: [ :ss |
�� �� �� �� bag sortedCounts do: [ :assoc |
�� �� �� �� �� �� �� �� ss
�� �� �� �� �� �� �� �� �� �� �� �� << (assoc key asString padRightTo: 7);
�� �� �� �� �� �� �� �� �� �� �� �� << assoc value printString;
�� �� �� �� �� �� �� �� �� �� �� �� cr
�� �� �� �� ]
]"

dct associations select: [ :assoc | assoc value size > 1 ]

===========================================================

Best regards,
Henrik






--
Sent from: http://forum.world.st/Pharo-Smalltalk-Developers-f1294837.html





--
_,,,^..^,,,_
best,��Eliot