[squeak-dev] Too much MC stuff left in image

tim Rowledge tim at rowledge.org
Fri Nov 14 18:44:33 UTC 2014


On 14-11-2014, at 1:49 AM, Bert Freudenberg <bert at freudenbergs.de> wrote:

> On 14.11.2014, at 03:15, tim Rowledge <tim at rowledge.org> wrote:
> 
>> Even after use of doits such as 	MCFileBasedRepository flushAllCaches & MCDefinition clearInstances I have 9500 MCVersionInfo and similar numbers of other MC related objects in my image. And 990 SMAccounts? 800 SMPackage? 13000 UUIDs? That all seems a bit excessive somehow.
> 
> SM* is SqueakMap, not Monticello.

Well, yeah, I know that but it still came as a nasty surprise!

> For deployment, you want to get rid of the version stuff completely. That is like removing change sets - it loses information. 
> 
> 	MCWorkingCopy allManagers do: [:wc | wc unregister]
> 	Smalltalk garbageCollect.
> 
> 	MCVersionInfo instanceCount
> 	==> 0
> 	UUID instanceCount
> 	==> 1

In my image I still had 3870 left, which caused some startlement. After taking a look around I noticed SMSqueakMap class>cleanUp: and then some senders of that. Turns out that
`Smalltalk cleanUp: true`
gets rid of a lot of stuff in a way I’d never heard of before. Along with the flushed cached versions and ancestry code Chris mentioned I can now get rid of a lot of stuff. My image is now down to 14Mb from 40, so that’s a help. 

I wonder where 10Mb of Bitmaps is being used...

tim
--
tim Rowledge; tim at rowledge.org; http://www.rowledge.org/tim
Strange OpCodes: AII: Add Insult to Injury




More information about the Squeak-dev mailing list