[Setools] Gjallar: UltraCleanImage problem

Göran Krampe goran at krampe.se
Fri Feb 16 09:13:03 UTC 2007


Hi!

> I am having a problem with my Gjallar image (0.3) that I am not sure
> to understand.
>
> The symptoms are that while performing a Q2Gjallar startServer I get the
> error:
> Q2Model instances hanging! Consider #ultraCleanImage
>
> This error is raised in Q2Gjallar class > cleanImage.

Yes, it first cleans up everything and then it checks if there are still
some key instances around (like Q2Model) - which there should be none.

I used the word "hanging" since if there are instances they are "hanging"
in something else thus preventing them to be GCed.

> After restarting the image without saving, I found 13 instances of
> Q2Model. After running Q2Gallar ultraCleanImage, there are 2 instances
> for Q2Model left and Squeak grabs all the CPU...

I presume alt-. can stop it?

> Any insights about how to restore Gjallar would be greatly appreciated.

There are several things to check. Make sure you don't have inspectors or
explorers up. Make sure you don't have Workspaces up with bindings (to be
sure, copy the text in them, close them and open new ones) in them.

Of course, close all debuggers and notifiers. :) Try cleanImage again and
see if they are still around. If they are, then it is time to use some
tools:

   PointerFinder on: Q2Model allInstances first

or:

   PointerExplorer new openExplorerFor: Q2Model allInstances first

Sometimes PointerFinder doesn't seem to find anything (not sure why),
otherwise it will show a trail up to the globals showing you the chain of
references causing it to still hang around.

If you can't figure this out - post again with more info. Or dump the
image somewhere for me to look at - these things can be tricksy.

regards, Göran



More information about the Setools mailing list