basicNew is looping... then out of memory
Ned Konz
ned at bike-nomad.com
Wed Jun 18 14:38:08 UTC 2003
On Tuesday 17 June 2003 01:59 pm, Derek Brans wrote:
> Does anyone know what this stack dump means? My image is running
> out of memory (I think it's when I try to save a snapshot using
> Smalltalk snapshot: true andQuit: false).
>
> Thank you!
>
> out of memory
> 185312508 Behavior>isVariable
> 185312416 Behavior>basicNew
[snip]
> 185310300 Behavior>basicNew
> 185310208 Behavior>new
> 185310116 LookupKey class>key:
> 185310024 Association class>key:value:
> 185309932 Dictionary>at:put:
> 185309840 Bag>add:withOccurrences:
> 185309748 Bag>add:
> 185308972 [] in ProcessorScheduler>tallyCPUUsageFor:every:
> 185309064 [] in BlockContext>newProcess
Well, you could turn off the CPU watcher first.
But the problem seems to be that LookupKey class>>Key: is calling
Behavior>>new, whose primitive is failing. Causing the fall-through
behavior of calling basicNew, which is recursing badly.
Of course, basicNew calls the same prim as new, which then fails
again. So it asks if the class isVariable. However, isVariable itself
has to create a return value, so it fails too...
So the problem is that the basicNew primitive (prim 70) is failing.
Now in this case, it seems like we should turn off the CPU watcher on
image shutdown.
Try the CS I just posted that adds shutdown behavior to the CPU
watcher and ProcessBrowser.
--
Ned Konz
http://bike-nomad.com
GPG key ID: BEEA7EFE
More information about the Squeak-dev
mailing list
|