interesting recursive out-of-memory error

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

interesting recursive out-of-memory error

Eliot Miranda-2
Hi All,

    this in a bleeding edge Pharo 5 image which had been left standing with a Playground open which, when I clicked on it after leaving it for over an hour, got into an infinite recursion failing to allocate an object as part of opening a file to write an error report to.  Here's the infinite recursion beginning.  Full crash.mp attached.

0x3ebf4bf8 s OutOfMemory class(Exception class)>signal
0x3ebf4c54 s OutOfMemory class(Behavior)>basicNew
0x3ebf4cb0 s OutOfMemory class(Behavior)>new
0x3ebf4d0c s OutOfMemory class(Exception class)>signal
0x3ebe52ec s OutOfMemory class(Behavior)>basicNew
0x3ebf4d68 s OutOfMemory class(Behavior)>new
0x3ebf4dc4 s OutOfMemory class(Exception class)>signal
0x3ebf4e20 s OutOfMemory class(Behavior)>basicNew
0x3ebf4e7c s OutOfMemory class(Behavior)>new
0x3ebf4ed8 s OutOfMemory class(Exception class)>signal
0x3ebf4f34 s OutOfMemory class(Behavior)>basicNew
0x3ebf4f90 s OutOfMemory class(Behavior)>new
0x3ebf4fec s OutOfMemory class(Exception class)>signal
0x3ebe5290 s WeakFinalizerItem class(Behavior)>basicNew:
0x3ebf5048 s WeakFinalizerItem class>new
0x3ebf50a4 s [] in WeakRegistry>add:executor:
0x3ebe5234 s WeakIdentityKeyDictionary(Dictionary)>at:ifAbsent:
0x3ebe51c4 s [] in WeakRegistry>add:executor:
0x3ebf4860 s BlockClosure>on:do:
0x3ebe5154 s BlockClosure>ifError:
0x3ebe50e4 s [] in Semaphore>critical:ifError:
0x3ebf48bc s [] in Semaphore>critical:
0x3ebf4918 s BlockClosure>ensure:
0x3ebe505c s Semaphore>critical:
0x3ebe4fdc s Semaphore>critical:ifError:
0x3ebe4f5c s WeakRegistry>protected:
0x3ebe4ee8 s WeakRegistry>add:executor:
0x3ebf4974 s WeakRegistry>add:
0x3ebf49d0 s MultiByteFileStream class(StandardFileStream class)>register:
0x3ebf4a2c s MultiByteFileStream(StandardFileStream)>register
0x3ebe4de0 s MultiByteFileStream(StandardFileStream)>open:forWrite:
0x3ebe4e58 s MultiByteFileStream>open:forWrite:
0x3ebf4524 s MultiByteFileStream class(StandardFileStream class)>readOnlyFileNamed:
0x3ebf4580 s MultiByteFileStream(StandardFileStream)>readOnlyCopy
0x3ebf45dc s [] in SourceFileArray>readStreamAtFileIndex:atPosition:ifPresent:ifAbsent:
0x3ebf4638 s BlockClosure>on:do:
0x3ebe4cc8 s SourceFileArray>readStreamAtFileIndex:atPosition:ifPresent:ifAbsent:
0x3ebf4694 s SourceFileArray>readStreamAt:ifPresent:ifAbsent:
0x3ebe4be8 s SourceFileArray>sourceCodeAt:
0x3ebe4c64 s [] in CompiledMethod>getSourceFromFile
0x3ebf418c s BlockClosure>on:do:
0x3ebe4b6c s CompiledMethod>getSourceFromFile
0x3ebf41e8 s CompiledMethod>sourceCode
0x3ebf4244 s CompiledMethod>parseTree
0x3ebf42a0 s [] in ASTCache>at:
0x3ebf42fc s [] in ASTCache(Dictionary)>at:ifAbsentPut:
0x3ebf4358 s ASTCache(Dictionary)>at:ifAbsent:
0x3ebe4adc s ASTCache(Dictionary)>at:ifAbsentPut:
0x3ebe4a6c s ASTCache>at:
0x3ebe4a10 s ASTCache class>at:
0x3ebe49b4 s CompiledMethod>ast
0x3ebf3ce0 s CompiledMethod>sourceNode
0x3ebf3d3c s CompiledMethod>sourceNodeForPC:
0x3ebf3d98 s BlockClosure>sourceNode
0x3ebf3df4 s BlockClosure>printOn:
0x3ebf3e50 s [] in BlockClosure(Object)>printStringLimitedTo:
0x3ebe4944 s String class(SequenceableCollection class)>streamContents:limitedTo:
0x3ebe4850 s BlockClosure(Object)>printStringLimitedTo:
0x3ebf3eac s BlockClosure(Object)>printString
0x3ebf3f08 s Context>printOn:
0x3ebf3f64 s Context>printDebugOn:
0x3ebf3fc0 s [] in Context>debugStack:on:
0x3ebe44c8 s OrderedCollection>do:
0x3ebe4458 s Context>debugStack:on:
0x3ebf3a00 s Context>shortDebugStackOn:
0x3ebf3a5c s [] in ControlButtonMorph(Morph)>drawErrorOn:
0x3ebf3ab8 s String class(SequenceableCollection class)>new:streamContents:
0x3ebf3b14 s String class(SequenceableCollection class)>streamContents:
0x3ebe4318 s [] in ControlButtonMorph(Morph)>drawErrorOn:
0x3ebe42b4 s ControlButtonMorph(Morph)>valueOfProperty:ifPresentDo:
0x3ebe41e0 s ControlButtonMorph(Morph)>drawErrorOn:
0x3ebe4244 s [] in ControlButtonMorph(Morph)>fullDrawOn:
0x3ebf377c s BlockClosure>cull:
0x3ebf37d8 s Context>evaluateSignal:
0x3ebf3834 s Context>handleSignal:
0x3ebe1608 s OutOfMemory(Exception)>signal
0x3ebe1664 s OutOfMemory class(Exception class)>signal
0x3ebe158c s BalloonBuffer class(Behavior)>basicNew:
0x3ebe1830 s BalloonBuffer class(Behavior)>new:
0x3ebe1478 s BalloonEngine class>allocateOrRecycleBuffer:
0x3ebe1944 s BalloonEngine>reset
0x3ebe1530 s BalloonEngine>resetIfNeeded
0x3ebe14d4 s BalloonEngine>drawRectangle:fill:borderWidth:borderColor:transform:
0x3ebe1ab4 s BalloonCanvas>drawRectangle:color:borderWidth:borderColor:
0x3ebe1b6c s BalloonCanvas>fillRectangle:basicFillStyle:
0x3ebe1c24 s FormCanvas>balloonFillRectangle:fillStyle:
0x3ebe1cdc s FormCanvas>fillRectangle:basicFillStyle:
0x3ebe1d94 s GradientFillStyle(FillStyle)>fillRectangle:on:
0x3ebe1e4c s FormCanvas(Canvas)>fillRectangle:fillStyle:
0x3ebe1f04 s FormCanvas(Canvas)>fillRectangle:fillStyle:borderStyle:
0x3ebe1fbc s ControlButtonMorph(Morph)>drawOn:
0x3ebdf0fc s FormCanvas(Canvas)>draw:
0x3ebdf0a0 s FormCanvas(Canvas)>drawMorph:
0x3ebe212c s [] in ControlButtonMorph(Morph)>fullDrawOn:
0x3ebe21e4 s FormCanvas>roundCornersOf:in:during:
0x3ebe229c s FormCanvas(Canvas)>roundCornersOf:during:
0x3ebdf030 s [] in ControlButtonMorph(Morph)>fullDrawOn:
0x3ebe16c0 s BlockClosure>on:do:
0x3ebdefac s ControlButtonMorph(Morph)>fullDrawOn:
0x3ebe2468 s FormCanvas(Canvas)>fullDraw:
0x3ebe2520 s FormCanvas(Canvas)>fullDrawMorph:
0x3ebe25d8 s [] in SearchMorph(Morph)>drawSubmorphsOn:
0x3ebe2690 s Array(SequenceableCollection)>reverseDo:
0x3ebdef3c s [] in SearchMorph(Morph)>drawSubmorphsOn:
0x3ebe27a4 s FormCanvas>clipBy:during:
0x3ebded5c s SearchMorph(Morph)>drawSubmorphsOn:
0x3ebdedc8 s SearchMorph(DropListMorph)>drawSubmorphsOn:
0x3ebe2914 s [] in SearchMorph(Morph)>fullDrawOn:
0x3ebe29cc s FormCanvas>roundCornersOf:in:during:
0x3ebe2a84 s FormCanvas(Canvas)>roundCornersOf:during:
0x3ebdecc8 s [] in SearchMorph(Morph)>fullDrawOn:
0x3ebe2b98 s BlockClosure>on:do:
0x3ebdec44 s SearchMorph(Morph)>fullDrawOn:
0x3ebe2cac s FormCanvas(Canvas)>fullDraw:
0x3ebe2d64 s FormCanvas(Canvas)>fullDrawMorph:
0x3ebe2e1c s [] in SystemWindow(Morph)>drawSubmorphsOn:
0x3ebd976c s Array(SequenceableCollection)>reverseDo:
0x3ebd96fc s [] in SystemWindow(Morph)>drawSubmorphsOn:
0x3ebe2f8c s FormCanvas>clipBy:during:
0x3ebd9584 s SystemWindow(Morph)>drawSubmorphsOn:
0x3ebe30a0 s [] in SystemWindow(Morph)>fullDrawOn:
0x3ebe3158 s FormCanvas>roundCornersOf:in:during:
0x3ebe3210 s FormCanvas(Canvas)>roundCornersOf:during:
0x3ebd94f0 s [] in SystemWindow(Morph)>fullDrawOn:
0x3ebe3324 s BlockClosure>on:do:
0x3ebd946c s SystemWindow(Morph)>fullDrawOn:
0x3ebd9410 s FormCanvas(Canvas)>fullDraw:
0x3ebd93b4 s FormCanvas(Canvas)>fullDrawMorph:
0x3ebd9004 s [] in WorldState>drawWorld:submorphs:invalidAreasOn:
0x3ebe35ec s Rectangle>allAreasOutsideList:startingAt:do:
0x3ebe36a4 s Rectangle>allAreasOutsideList:do:
0x3ebd8e94 s [] in WorldState>drawWorld:submorphs:invalidAreasOn:
0x3ebe3858 s Array(SequenceableCollection)>do:
0x3ebd8b98 s WorldState>drawWorld:submorphs:invalidAreasOn:
0x3ebd8c94 s [] in WorldState>displayWorld:submorphs:
0x3ebe3a68 s FormCanvas>roundCornersOf:in:during:
0x3ebe3b20 s FormCanvas(Canvas)>roundCornersOf:during:
0x3ebd8aa8 s WorldState>displayWorld:submorphs:
0x3ebe3c34 s WorldMorph>displayWorld
0x3ebe3cec s [] in WorldState>displayWorldSafely:
0x3ebe3da4 s BlockClosure>on:do:
0x3ebd8a2c s BlockClosure>ifError:
0x3ebd89ac s WorldState>displayWorldSafely:
0x3ebd3df4 s WorldState>doOneCycleNowFor:
0x3ebe3f70 s WorldState>doOneCycleFor:
0x3ebe4028 s WorldMorph>doOneCycle
0x2162ad58 s [] in MorphicUIManager>spawnNewProcess
0x21629f30 s [] in BlockClosure>newProcess



_,,,^..^,,,_
best, Eliot

crash.dmp (646K) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: interesting recursive out-of-memory error

Nicolai Hess-3-2
Thanks eliot.
Did you run anything that consumed much memory?
Platform linux?


2015-10-18 2:24 GMT+02:00 Eliot Miranda <[hidden email]>:
Hi All,

    this in a bleeding edge Pharo 5 image which had been left standing with a Playground open which, when I clicked on it after leaving it for over an hour, got into an infinite recursion failing to allocate an object as part of opening a file to write an error report to.  Here's the infinite recursion beginning.  Full crash.mp attached.

0x3ebf4bf8 s OutOfMemory class(Exception class)>signal
0x3ebf4c54 s OutOfMemory class(Behavior)>basicNew
0x3ebf4cb0 s OutOfMemory class(Behavior)>new
0x3ebf4d0c s OutOfMemory class(Exception class)>signal
0x3ebe52ec s OutOfMemory class(Behavior)>basicNew
0x3ebf4d68 s OutOfMemory class(Behavior)>new
0x3ebf4dc4 s OutOfMemory class(Exception class)>signal
0x3ebf4e20 s OutOfMemory class(Behavior)>basicNew
0x3ebf4e7c s OutOfMemory class(Behavior)>new
0x3ebf4ed8 s OutOfMemory class(Exception class)>signal
0x3ebf4f34 s OutOfMemory class(Behavior)>basicNew
0x3ebf4f90 s OutOfMemory class(Behavior)>new
0x3ebf4fec s OutOfMemory class(Exception class)>signal
0x3ebe5290 s WeakFinalizerItem class(Behavior)>basicNew:
0x3ebf5048 s WeakFinalizerItem class>new
0x3ebf50a4 s [] in WeakRegistry>add:executor:
0x3ebe5234 s WeakIdentityKeyDictionary(Dictionary)>at:ifAbsent:
0x3ebe51c4 s [] in WeakRegistry>add:executor:
0x3ebf4860 s BlockClosure>on:do:
0x3ebe5154 s BlockClosure>ifError:
0x3ebe50e4 s [] in Semaphore>critical:ifError:
0x3ebf48bc s [] in Semaphore>critical:
0x3ebf4918 s BlockClosure>ensure:
0x3ebe505c s Semaphore>critical:
0x3ebe4fdc s Semaphore>critical:ifError:
0x3ebe4f5c s WeakRegistry>protected:
0x3ebe4ee8 s WeakRegistry>add:executor:
0x3ebf4974 s WeakRegistry>add:
0x3ebf49d0 s MultiByteFileStream class(StandardFileStream class)>register:
0x3ebf4a2c s MultiByteFileStream(StandardFileStream)>register
0x3ebe4de0 s MultiByteFileStream(StandardFileStream)>open:forWrite:
0x3ebe4e58 s MultiByteFileStream>open:forWrite:
0x3ebf4524 s MultiByteFileStream class(StandardFileStream class)>readOnlyFileNamed:
0x3ebf4580 s MultiByteFileStream(StandardFileStream)>readOnlyCopy
0x3ebf45dc s [] in SourceFileArray>readStreamAtFileIndex:atPosition:ifPresent:ifAbsent:
0x3ebf4638 s BlockClosure>on:do:
0x3ebe4cc8 s SourceFileArray>readStreamAtFileIndex:atPosition:ifPresent:ifAbsent:
0x3ebf4694 s SourceFileArray>readStreamAt:ifPresent:ifAbsent:
0x3ebe4be8 s SourceFileArray>sourceCodeAt:
0x3ebe4c64 s [] in CompiledMethod>getSourceFromFile
0x3ebf418c s BlockClosure>on:do:
0x3ebe4b6c s CompiledMethod>getSourceFromFile
0x3ebf41e8 s CompiledMethod>sourceCode
0x3ebf4244 s CompiledMethod>parseTree
0x3ebf42a0 s [] in ASTCache>at:
0x3ebf42fc s [] in ASTCache(Dictionary)>at:ifAbsentPut:
0x3ebf4358 s ASTCache(Dictionary)>at:ifAbsent:
0x3ebe4adc s ASTCache(Dictionary)>at:ifAbsentPut:
0x3ebe4a6c s ASTCache>at:
0x3ebe4a10 s ASTCache class>at:
0x3ebe49b4 s CompiledMethod>ast
0x3ebf3ce0 s CompiledMethod>sourceNode
0x3ebf3d3c s CompiledMethod>sourceNodeForPC:
0x3ebf3d98 s BlockClosure>sourceNode
0x3ebf3df4 s BlockClosure>printOn:
0x3ebf3e50 s [] in BlockClosure(Object)>printStringLimitedTo:
0x3ebe4944 s String class(SequenceableCollection class)>streamContents:limitedTo:
0x3ebe4850 s BlockClosure(Object)>printStringLimitedTo:
0x3ebf3eac s BlockClosure(Object)>printString
0x3ebf3f08 s Context>printOn:
0x3ebf3f64 s Context>printDebugOn:
0x3ebf3fc0 s [] in Context>debugStack:on:
0x3ebe44c8 s OrderedCollection>do:
0x3ebe4458 s Context>debugStack:on:
0x3ebf3a00 s Context>shortDebugStackOn:
0x3ebf3a5c s [] in ControlButtonMorph(Morph)>drawErrorOn:
0x3ebf3ab8 s String class(SequenceableCollection class)>new:streamContents:
0x3ebf3b14 s String class(SequenceableCollection class)>streamContents:
0x3ebe4318 s [] in ControlButtonMorph(Morph)>drawErrorOn:
0x3ebe42b4 s ControlButtonMorph(Morph)>valueOfProperty:ifPresentDo:
0x3ebe41e0 s ControlButtonMorph(Morph)>drawErrorOn:
0x3ebe4244 s [] in ControlButtonMorph(Morph)>fullDrawOn:
0x3ebf377c s BlockClosure>cull:
0x3ebf37d8 s Context>evaluateSignal:
0x3ebf3834 s Context>handleSignal:
0x3ebe1608 s OutOfMemory(Exception)>signal
0x3ebe1664 s OutOfMemory class(Exception class)>signal
0x3ebe158c s BalloonBuffer class(Behavior)>basicNew:
0x3ebe1830 s BalloonBuffer class(Behavior)>new:
0x3ebe1478 s BalloonEngine class>allocateOrRecycleBuffer:
0x3ebe1944 s BalloonEngine>reset
0x3ebe1530 s BalloonEngine>resetIfNeeded
0x3ebe14d4 s BalloonEngine>drawRectangle:fill:borderWidth:borderColor:transform:
0x3ebe1ab4 s BalloonCanvas>drawRectangle:color:borderWidth:borderColor:
0x3ebe1b6c s BalloonCanvas>fillRectangle:basicFillStyle:
0x3ebe1c24 s FormCanvas>balloonFillRectangle:fillStyle:
0x3ebe1cdc s FormCanvas>fillRectangle:basicFillStyle:
0x3ebe1d94 s GradientFillStyle(FillStyle)>fillRectangle:on:
0x3ebe1e4c s FormCanvas(Canvas)>fillRectangle:fillStyle:
0x3ebe1f04 s FormCanvas(Canvas)>fillRectangle:fillStyle:borderStyle:
0x3ebe1fbc s ControlButtonMorph(Morph)>drawOn:
0x3ebdf0fc s FormCanvas(Canvas)>draw:
0x3ebdf0a0 s FormCanvas(Canvas)>drawMorph:
0x3ebe212c s [] in ControlButtonMorph(Morph)>fullDrawOn:
0x3ebe21e4 s FormCanvas>roundCornersOf:in:during:
0x3ebe229c s FormCanvas(Canvas)>roundCornersOf:during:
0x3ebdf030 s [] in ControlButtonMorph(Morph)>fullDrawOn:
0x3ebe16c0 s BlockClosure>on:do:
0x3ebdefac s ControlButtonMorph(Morph)>fullDrawOn:
0x3ebe2468 s FormCanvas(Canvas)>fullDraw:
0x3ebe2520 s FormCanvas(Canvas)>fullDrawMorph:
0x3ebe25d8 s [] in SearchMorph(Morph)>drawSubmorphsOn:
0x3ebe2690 s Array(SequenceableCollection)>reverseDo:
0x3ebdef3c s [] in SearchMorph(Morph)>drawSubmorphsOn:
0x3ebe27a4 s FormCanvas>clipBy:during:
0x3ebded5c s SearchMorph(Morph)>drawSubmorphsOn:
0x3ebdedc8 s SearchMorph(DropListMorph)>drawSubmorphsOn:
0x3ebe2914 s [] in SearchMorph(Morph)>fullDrawOn:
0x3ebe29cc s FormCanvas>roundCornersOf:in:during:
0x3ebe2a84 s FormCanvas(Canvas)>roundCornersOf:during:
0x3ebdecc8 s [] in SearchMorph(Morph)>fullDrawOn:
0x3ebe2b98 s BlockClosure>on:do:
0x3ebdec44 s SearchMorph(Morph)>fullDrawOn:
0x3ebe2cac s FormCanvas(Canvas)>fullDraw:
0x3ebe2d64 s FormCanvas(Canvas)>fullDrawMorph:
0x3ebe2e1c s [] in SystemWindow(Morph)>drawSubmorphsOn:
0x3ebd976c s Array(SequenceableCollection)>reverseDo:
0x3ebd96fc s [] in SystemWindow(Morph)>drawSubmorphsOn:
0x3ebe2f8c s FormCanvas>clipBy:during:
0x3ebd9584 s SystemWindow(Morph)>drawSubmorphsOn:
0x3ebe30a0 s [] in SystemWindow(Morph)>fullDrawOn:
0x3ebe3158 s FormCanvas>roundCornersOf:in:during:
0x3ebe3210 s FormCanvas(Canvas)>roundCornersOf:during:
0x3ebd94f0 s [] in SystemWindow(Morph)>fullDrawOn:
0x3ebe3324 s BlockClosure>on:do:
0x3ebd946c s SystemWindow(Morph)>fullDrawOn:
0x3ebd9410 s FormCanvas(Canvas)>fullDraw:
0x3ebd93b4 s FormCanvas(Canvas)>fullDrawMorph:
0x3ebd9004 s [] in WorldState>drawWorld:submorphs:invalidAreasOn:
0x3ebe35ec s Rectangle>allAreasOutsideList:startingAt:do:
0x3ebe36a4 s Rectangle>allAreasOutsideList:do:
0x3ebd8e94 s [] in WorldState>drawWorld:submorphs:invalidAreasOn:
0x3ebe3858 s Array(SequenceableCollection)>do:
0x3ebd8b98 s WorldState>drawWorld:submorphs:invalidAreasOn:
0x3ebd8c94 s [] in WorldState>displayWorld:submorphs:
0x3ebe3a68 s FormCanvas>roundCornersOf:in:during:
0x3ebe3b20 s FormCanvas(Canvas)>roundCornersOf:during:
0x3ebd8aa8 s WorldState>displayWorld:submorphs:
0x3ebe3c34 s WorldMorph>displayWorld
0x3ebe3cec s [] in WorldState>displayWorldSafely:
0x3ebe3da4 s BlockClosure>on:do:
0x3ebd8a2c s BlockClosure>ifError:
0x3ebd89ac s WorldState>displayWorldSafely:
0x3ebd3df4 s WorldState>doOneCycleNowFor:
0x3ebe3f70 s WorldState>doOneCycleFor:
0x3ebe4028 s WorldMorph>doOneCycle
0x2162ad58 s [] in MorphicUIManager>spawnNewProcess
0x21629f30 s [] in BlockClosure>newProcess



_,,,^..^,,,_
best, Eliot

Reply | Threaded
Open this post in threaded view
|

Re: interesting recursive out-of-memory error

Eliot Miranda-2
Hi Nicolai,

On Oct 18, 2015, at 3:16 AM, Nicolai Hess <[hidden email]> wrote:

Thanks eliot.
Did you run anything that consumed much memory?
Platform linux?

I filed in a small package that is entirely Smalltalk code, ran a very simple example in the context of a GT playground, played around with a colleague exploring the playground, diving into and out of the structure, and then left it alone for perhaps a half hour until I returned, at which point it appeared to lock up as soon as I started interacting with it to shut it down.

_,,,^..^,,,_ (phone)



2015-10-18 2:24 GMT+02:00 Eliot Miranda <[hidden email]>:
Hi All,

    this in a bleeding edge Pharo 5 image which had been left standing with a Playground open which, when I clicked on it after leaving it for over an hour, got into an infinite recursion failing to allocate an object as part of opening a file to write an error report to.  Here's the infinite recursion beginning.  Full crash.mp attached.

0x3ebf4bf8 s OutOfMemory class(Exception class)>signal
0x3ebf4c54 s OutOfMemory class(Behavior)>basicNew
0x3ebf4cb0 s OutOfMemory class(Behavior)>new
0x3ebf4d0c s OutOfMemory class(Exception class)>signal
0x3ebe52ec s OutOfMemory class(Behavior)>basicNew
0x3ebf4d68 s OutOfMemory class(Behavior)>new
0x3ebf4dc4 s OutOfMemory class(Exception class)>signal
0x3ebf4e20 s OutOfMemory class(Behavior)>basicNew
0x3ebf4e7c s OutOfMemory class(Behavior)>new
0x3ebf4ed8 s OutOfMemory class(Exception class)>signal
0x3ebf4f34 s OutOfMemory class(Behavior)>basicNew
0x3ebf4f90 s OutOfMemory class(Behavior)>new
0x3ebf4fec s OutOfMemory class(Exception class)>signal
0x3ebe5290 s WeakFinalizerItem class(Behavior)>basicNew:
0x3ebf5048 s WeakFinalizerItem class>new
0x3ebf50a4 s [] in WeakRegistry>add:executor:
0x3ebe5234 s WeakIdentityKeyDictionary(Dictionary)>at:ifAbsent:
0x3ebe51c4 s [] in WeakRegistry>add:executor:
0x3ebf4860 s BlockClosure>on:do:
0x3ebe5154 s BlockClosure>ifError:
0x3ebe50e4 s [] in Semaphore>critical:ifError:
0x3ebf48bc s [] in Semaphore>critical:
0x3ebf4918 s BlockClosure>ensure:
0x3ebe505c s Semaphore>critical:
0x3ebe4fdc s Semaphore>critical:ifError:
0x3ebe4f5c s WeakRegistry>protected:
0x3ebe4ee8 s WeakRegistry>add:executor:
0x3ebf4974 s WeakRegistry>add:
0x3ebf49d0 s MultiByteFileStream class(StandardFileStream class)>register:
0x3ebf4a2c s MultiByteFileStream(StandardFileStream)>register
0x3ebe4de0 s MultiByteFileStream(StandardFileStream)>open:forWrite:
0x3ebe4e58 s MultiByteFileStream>open:forWrite:
0x3ebf4524 s MultiByteFileStream class(StandardFileStream class)>readOnlyFileNamed:
0x3ebf4580 s MultiByteFileStream(StandardFileStream)>readOnlyCopy
0x3ebf45dc s [] in SourceFileArray>readStreamAtFileIndex:atPosition:ifPresent:ifAbsent:
0x3ebf4638 s BlockClosure>on:do:
0x3ebe4cc8 s SourceFileArray>readStreamAtFileIndex:atPosition:ifPresent:ifAbsent:
0x3ebf4694 s SourceFileArray>readStreamAt:ifPresent:ifAbsent:
0x3ebe4be8 s SourceFileArray>sourceCodeAt:
0x3ebe4c64 s [] in CompiledMethod>getSourceFromFile
0x3ebf418c s BlockClosure>on:do:
0x3ebe4b6c s CompiledMethod>getSourceFromFile
0x3ebf41e8 s CompiledMethod>sourceCode
0x3ebf4244 s CompiledMethod>parseTree
0x3ebf42a0 s [] in ASTCache>at:
0x3ebf42fc s [] in ASTCache(Dictionary)>at:ifAbsentPut:
0x3ebf4358 s ASTCache(Dictionary)>at:ifAbsent:
0x3ebe4adc s ASTCache(Dictionary)>at:ifAbsentPut:
0x3ebe4a6c s ASTCache>at:
0x3ebe4a10 s ASTCache class>at:
0x3ebe49b4 s CompiledMethod>ast
0x3ebf3ce0 s CompiledMethod>sourceNode
0x3ebf3d3c s CompiledMethod>sourceNodeForPC:
0x3ebf3d98 s BlockClosure>sourceNode
0x3ebf3df4 s BlockClosure>printOn:
0x3ebf3e50 s [] in BlockClosure(Object)>printStringLimitedTo:
0x3ebe4944 s String class(SequenceableCollection class)>streamContents:limitedTo:
0x3ebe4850 s BlockClosure(Object)>printStringLimitedTo:
0x3ebf3eac s BlockClosure(Object)>printString
0x3ebf3f08 s Context>printOn:
0x3ebf3f64 s Context>printDebugOn:
0x3ebf3fc0 s [] in Context>debugStack:on:
0x3ebe44c8 s OrderedCollection>do:
0x3ebe4458 s Context>debugStack:on:
0x3ebf3a00 s Context>shortDebugStackOn:
0x3ebf3a5c s [] in ControlButtonMorph(Morph)>drawErrorOn:
0x3ebf3ab8 s String class(SequenceableCollection class)>new:streamContents:
0x3ebf3b14 s String class(SequenceableCollection class)>streamContents:
0x3ebe4318 s [] in ControlButtonMorph(Morph)>drawErrorOn:
0x3ebe42b4 s ControlButtonMorph(Morph)>valueOfProperty:ifPresentDo:
0x3ebe41e0 s ControlButtonMorph(Morph)>drawErrorOn:
0x3ebe4244 s [] in ControlButtonMorph(Morph)>fullDrawOn:
0x3ebf377c s BlockClosure>cull:
0x3ebf37d8 s Context>evaluateSignal:
0x3ebf3834 s Context>handleSignal:
0x3ebe1608 s OutOfMemory(Exception)>signal
0x3ebe1664 s OutOfMemory class(Exception class)>signal
0x3ebe158c s BalloonBuffer class(Behavior)>basicNew:
0x3ebe1830 s BalloonBuffer class(Behavior)>new:
0x3ebe1478 s BalloonEngine class>allocateOrRecycleBuffer:
0x3ebe1944 s BalloonEngine>reset
0x3ebe1530 s BalloonEngine>resetIfNeeded
0x3ebe14d4 s BalloonEngine>drawRectangle:fill:borderWidth:borderColor:transform:
0x3ebe1ab4 s BalloonCanvas>drawRectangle:color:borderWidth:borderColor:
0x3ebe1b6c s BalloonCanvas>fillRectangle:basicFillStyle:
0x3ebe1c24 s FormCanvas>balloonFillRectangle:fillStyle:
0x3ebe1cdc s FormCanvas>fillRectangle:basicFillStyle:
0x3ebe1d94 s GradientFillStyle(FillStyle)>fillRectangle:on:
0x3ebe1e4c s FormCanvas(Canvas)>fillRectangle:fillStyle:
0x3ebe1f04 s FormCanvas(Canvas)>fillRectangle:fillStyle:borderStyle:
0x3ebe1fbc s ControlButtonMorph(Morph)>drawOn:
0x3ebdf0fc s FormCanvas(Canvas)>draw:
0x3ebdf0a0 s FormCanvas(Canvas)>drawMorph:
0x3ebe212c s [] in ControlButtonMorph(Morph)>fullDrawOn:
0x3ebe21e4 s FormCanvas>roundCornersOf:in:during:
0x3ebe229c s FormCanvas(Canvas)>roundCornersOf:during:
0x3ebdf030 s [] in ControlButtonMorph(Morph)>fullDrawOn:
0x3ebe16c0 s BlockClosure>on:do:
0x3ebdefac s ControlButtonMorph(Morph)>fullDrawOn:
0x3ebe2468 s FormCanvas(Canvas)>fullDraw:
0x3ebe2520 s FormCanvas(Canvas)>fullDrawMorph:
0x3ebe25d8 s [] in SearchMorph(Morph)>drawSubmorphsOn:
0x3ebe2690 s Array(SequenceableCollection)>reverseDo:
0x3ebdef3c s [] in SearchMorph(Morph)>drawSubmorphsOn:
0x3ebe27a4 s FormCanvas>clipBy:during:
0x3ebded5c s SearchMorph(Morph)>drawSubmorphsOn:
0x3ebdedc8 s SearchMorph(DropListMorph)>drawSubmorphsOn:
0x3ebe2914 s [] in SearchMorph(Morph)>fullDrawOn:
0x3ebe29cc s FormCanvas>roundCornersOf:in:during:
0x3ebe2a84 s FormCanvas(Canvas)>roundCornersOf:during:
0x3ebdecc8 s [] in SearchMorph(Morph)>fullDrawOn:
0x3ebe2b98 s BlockClosure>on:do:
0x3ebdec44 s SearchMorph(Morph)>fullDrawOn:
0x3ebe2cac s FormCanvas(Canvas)>fullDraw:
0x3ebe2d64 s FormCanvas(Canvas)>fullDrawMorph:
0x3ebe2e1c s [] in SystemWindow(Morph)>drawSubmorphsOn:
0x3ebd976c s Array(SequenceableCollection)>reverseDo:
0x3ebd96fc s [] in SystemWindow(Morph)>drawSubmorphsOn:
0x3ebe2f8c s FormCanvas>clipBy:during:
0x3ebd9584 s SystemWindow(Morph)>drawSubmorphsOn:
0x3ebe30a0 s [] in SystemWindow(Morph)>fullDrawOn:
0x3ebe3158 s FormCanvas>roundCornersOf:in:during:
0x3ebe3210 s FormCanvas(Canvas)>roundCornersOf:during:
0x3ebd94f0 s [] in SystemWindow(Morph)>fullDrawOn:
0x3ebe3324 s BlockClosure>on:do:
0x3ebd946c s SystemWindow(Morph)>fullDrawOn:
0x3ebd9410 s FormCanvas(Canvas)>fullDraw:
0x3ebd93b4 s FormCanvas(Canvas)>fullDrawMorph:
0x3ebd9004 s [] in WorldState>drawWorld:submorphs:invalidAreasOn:
0x3ebe35ec s Rectangle>allAreasOutsideList:startingAt:do:
0x3ebe36a4 s Rectangle>allAreasOutsideList:do:
0x3ebd8e94 s [] in WorldState>drawWorld:submorphs:invalidAreasOn:
0x3ebe3858 s Array(SequenceableCollection)>do:
0x3ebd8b98 s WorldState>drawWorld:submorphs:invalidAreasOn:
0x3ebd8c94 s [] in WorldState>displayWorld:submorphs:
0x3ebe3a68 s FormCanvas>roundCornersOf:in:during:
0x3ebe3b20 s FormCanvas(Canvas)>roundCornersOf:during:
0x3ebd8aa8 s WorldState>displayWorld:submorphs:
0x3ebe3c34 s WorldMorph>displayWorld
0x3ebe3cec s [] in WorldState>displayWorldSafely:
0x3ebe3da4 s BlockClosure>on:do:
0x3ebd8a2c s BlockClosure>ifError:
0x3ebd89ac s WorldState>displayWorldSafely:
0x3ebd3df4 s WorldState>doOneCycleNowFor:
0x3ebe3f70 s WorldState>doOneCycleFor:
0x3ebe4028 s WorldMorph>doOneCycle
0x2162ad58 s [] in MorphicUIManager>spawnNewProcess
0x21629f30 s [] in BlockClosure>newProcess



_,,,^..^,,,_
best, Eliot

Reply | Threaded
Open this post in threaded view
|

Re: interesting recursive out-of-memory error

Tudor Girba-2
Hmm, I never encountered this case. Let's try to manufacture this case again.

Cheers,
Doru

On Sun, Oct 18, 2015 at 3:58 PM, Eliot Miranda <[hidden email]> wrote:
Hi Nicolai,

On Oct 18, 2015, at 3:16 AM, Nicolai Hess <[hidden email]> wrote:

Thanks eliot.
Did you run anything that consumed much memory?
Platform linux?

I filed in a small package that is entirely Smalltalk code, ran a very simple example in the context of a GT playground, played around with a colleague exploring the playground, diving into and out of the structure, and then left it alone for perhaps a half hour until I returned, at which point it appeared to lock up as soon as I started interacting with it to shut it down.

_,,,^..^,,,_ (phone)



2015-10-18 2:24 GMT+02:00 Eliot Miranda <[hidden email]>:
Hi All,

    this in a bleeding edge Pharo 5 image which had been left standing with a Playground open which, when I clicked on it after leaving it for over an hour, got into an infinite recursion failing to allocate an object as part of opening a file to write an error report to.  Here's the infinite recursion beginning.  Full crash.mp attached.

0x3ebf4bf8 s OutOfMemory class(Exception class)>signal
0x3ebf4c54 s OutOfMemory class(Behavior)>basicNew
0x3ebf4cb0 s OutOfMemory class(Behavior)>new
0x3ebf4d0c s OutOfMemory class(Exception class)>signal
0x3ebe52ec s OutOfMemory class(Behavior)>basicNew
0x3ebf4d68 s OutOfMemory class(Behavior)>new
0x3ebf4dc4 s OutOfMemory class(Exception class)>signal
0x3ebf4e20 s OutOfMemory class(Behavior)>basicNew
0x3ebf4e7c s OutOfMemory class(Behavior)>new
0x3ebf4ed8 s OutOfMemory class(Exception class)>signal
0x3ebf4f34 s OutOfMemory class(Behavior)>basicNew
0x3ebf4f90 s OutOfMemory class(Behavior)>new
0x3ebf4fec s OutOfMemory class(Exception class)>signal
0x3ebe5290 s WeakFinalizerItem class(Behavior)>basicNew:
0x3ebf5048 s WeakFinalizerItem class>new
0x3ebf50a4 s [] in WeakRegistry>add:executor:
0x3ebe5234 s WeakIdentityKeyDictionary(Dictionary)>at:ifAbsent:
0x3ebe51c4 s [] in WeakRegistry>add:executor:
0x3ebf4860 s BlockClosure>on:do:
0x3ebe5154 s BlockClosure>ifError:
0x3ebe50e4 s [] in Semaphore>critical:ifError:
0x3ebf48bc s [] in Semaphore>critical:
0x3ebf4918 s BlockClosure>ensure:
0x3ebe505c s Semaphore>critical:
0x3ebe4fdc s Semaphore>critical:ifError:
0x3ebe4f5c s WeakRegistry>protected:
0x3ebe4ee8 s WeakRegistry>add:executor:
0x3ebf4974 s WeakRegistry>add:
0x3ebf49d0 s MultiByteFileStream class(StandardFileStream class)>register:
0x3ebf4a2c s MultiByteFileStream(StandardFileStream)>register
0x3ebe4de0 s MultiByteFileStream(StandardFileStream)>open:forWrite:
0x3ebe4e58 s MultiByteFileStream>open:forWrite:
0x3ebf4524 s MultiByteFileStream class(StandardFileStream class)>readOnlyFileNamed:
0x3ebf4580 s MultiByteFileStream(StandardFileStream)>readOnlyCopy
0x3ebf45dc s [] in SourceFileArray>readStreamAtFileIndex:atPosition:ifPresent:ifAbsent:
0x3ebf4638 s BlockClosure>on:do:
0x3ebe4cc8 s SourceFileArray>readStreamAtFileIndex:atPosition:ifPresent:ifAbsent:
0x3ebf4694 s SourceFileArray>readStreamAt:ifPresent:ifAbsent:
0x3ebe4be8 s SourceFileArray>sourceCodeAt:
0x3ebe4c64 s [] in CompiledMethod>getSourceFromFile
0x3ebf418c s BlockClosure>on:do:
0x3ebe4b6c s CompiledMethod>getSourceFromFile
0x3ebf41e8 s CompiledMethod>sourceCode
0x3ebf4244 s CompiledMethod>parseTree
0x3ebf42a0 s [] in ASTCache>at:
0x3ebf42fc s [] in ASTCache(Dictionary)>at:ifAbsentPut:
0x3ebf4358 s ASTCache(Dictionary)>at:ifAbsent:
0x3ebe4adc s ASTCache(Dictionary)>at:ifAbsentPut:
0x3ebe4a6c s ASTCache>at:
0x3ebe4a10 s ASTCache class>at:
0x3ebe49b4 s CompiledMethod>ast
0x3ebf3ce0 s CompiledMethod>sourceNode
0x3ebf3d3c s CompiledMethod>sourceNodeForPC:
0x3ebf3d98 s BlockClosure>sourceNode
0x3ebf3df4 s BlockClosure>printOn:
0x3ebf3e50 s [] in BlockClosure(Object)>printStringLimitedTo:
0x3ebe4944 s String class(SequenceableCollection class)>streamContents:limitedTo:
0x3ebe4850 s BlockClosure(Object)>printStringLimitedTo:
0x3ebf3eac s BlockClosure(Object)>printString
0x3ebf3f08 s Context>printOn:
0x3ebf3f64 s Context>printDebugOn:
0x3ebf3fc0 s [] in Context>debugStack:on:
0x3ebe44c8 s OrderedCollection>do:
0x3ebe4458 s Context>debugStack:on:
0x3ebf3a00 s Context>shortDebugStackOn:
0x3ebf3a5c s [] in ControlButtonMorph(Morph)>drawErrorOn:
0x3ebf3ab8 s String class(SequenceableCollection class)>new:streamContents:
0x3ebf3b14 s String class(SequenceableCollection class)>streamContents:
0x3ebe4318 s [] in ControlButtonMorph(Morph)>drawErrorOn:
0x3ebe42b4 s ControlButtonMorph(Morph)>valueOfProperty:ifPresentDo:
0x3ebe41e0 s ControlButtonMorph(Morph)>drawErrorOn:
0x3ebe4244 s [] in ControlButtonMorph(Morph)>fullDrawOn:
0x3ebf377c s BlockClosure>cull:
0x3ebf37d8 s Context>evaluateSignal:
0x3ebf3834 s Context>handleSignal:
0x3ebe1608 s OutOfMemory(Exception)>signal
0x3ebe1664 s OutOfMemory class(Exception class)>signal
0x3ebe158c s BalloonBuffer class(Behavior)>basicNew:
0x3ebe1830 s BalloonBuffer class(Behavior)>new:
0x3ebe1478 s BalloonEngine class>allocateOrRecycleBuffer:
0x3ebe1944 s BalloonEngine>reset
0x3ebe1530 s BalloonEngine>resetIfNeeded
0x3ebe14d4 s BalloonEngine>drawRectangle:fill:borderWidth:borderColor:transform:
0x3ebe1ab4 s BalloonCanvas>drawRectangle:color:borderWidth:borderColor:
0x3ebe1b6c s BalloonCanvas>fillRectangle:basicFillStyle:
0x3ebe1c24 s FormCanvas>balloonFillRectangle:fillStyle:
0x3ebe1cdc s FormCanvas>fillRectangle:basicFillStyle:
0x3ebe1d94 s GradientFillStyle(FillStyle)>fillRectangle:on:
0x3ebe1e4c s FormCanvas(Canvas)>fillRectangle:fillStyle:
0x3ebe1f04 s FormCanvas(Canvas)>fillRectangle:fillStyle:borderStyle:
0x3ebe1fbc s ControlButtonMorph(Morph)>drawOn:
0x3ebdf0fc s FormCanvas(Canvas)>draw:
0x3ebdf0a0 s FormCanvas(Canvas)>drawMorph:
0x3ebe212c s [] in ControlButtonMorph(Morph)>fullDrawOn:
0x3ebe21e4 s FormCanvas>roundCornersOf:in:during:
0x3ebe229c s FormCanvas(Canvas)>roundCornersOf:during:
0x3ebdf030 s [] in ControlButtonMorph(Morph)>fullDrawOn:
0x3ebe16c0 s BlockClosure>on:do:
0x3ebdefac s ControlButtonMorph(Morph)>fullDrawOn:
0x3ebe2468 s FormCanvas(Canvas)>fullDraw:
0x3ebe2520 s FormCanvas(Canvas)>fullDrawMorph:
0x3ebe25d8 s [] in SearchMorph(Morph)>drawSubmorphsOn:
0x3ebe2690 s Array(SequenceableCollection)>reverseDo:
0x3ebdef3c s [] in SearchMorph(Morph)>drawSubmorphsOn:
0x3ebe27a4 s FormCanvas>clipBy:during:
0x3ebded5c s SearchMorph(Morph)>drawSubmorphsOn:
0x3ebdedc8 s SearchMorph(DropListMorph)>drawSubmorphsOn:
0x3ebe2914 s [] in SearchMorph(Morph)>fullDrawOn:
0x3ebe29cc s FormCanvas>roundCornersOf:in:during:
0x3ebe2a84 s FormCanvas(Canvas)>roundCornersOf:during:
0x3ebdecc8 s [] in SearchMorph(Morph)>fullDrawOn:
0x3ebe2b98 s BlockClosure>on:do:
0x3ebdec44 s SearchMorph(Morph)>fullDrawOn:
0x3ebe2cac s FormCanvas(Canvas)>fullDraw:
0x3ebe2d64 s FormCanvas(Canvas)>fullDrawMorph:
0x3ebe2e1c s [] in SystemWindow(Morph)>drawSubmorphsOn:
0x3ebd976c s Array(SequenceableCollection)>reverseDo:
0x3ebd96fc s [] in SystemWindow(Morph)>drawSubmorphsOn:
0x3ebe2f8c s FormCanvas>clipBy:during:
0x3ebd9584 s SystemWindow(Morph)>drawSubmorphsOn:
0x3ebe30a0 s [] in SystemWindow(Morph)>fullDrawOn:
0x3ebe3158 s FormCanvas>roundCornersOf:in:during:
0x3ebe3210 s FormCanvas(Canvas)>roundCornersOf:during:
0x3ebd94f0 s [] in SystemWindow(Morph)>fullDrawOn:
0x3ebe3324 s BlockClosure>on:do:
0x3ebd946c s SystemWindow(Morph)>fullDrawOn:
0x3ebd9410 s FormCanvas(Canvas)>fullDraw:
0x3ebd93b4 s FormCanvas(Canvas)>fullDrawMorph:
0x3ebd9004 s [] in WorldState>drawWorld:submorphs:invalidAreasOn:
0x3ebe35ec s Rectangle>allAreasOutsideList:startingAt:do:
0x3ebe36a4 s Rectangle>allAreasOutsideList:do:
0x3ebd8e94 s [] in WorldState>drawWorld:submorphs:invalidAreasOn:
0x3ebe3858 s Array(SequenceableCollection)>do:
0x3ebd8b98 s WorldState>drawWorld:submorphs:invalidAreasOn:
0x3ebd8c94 s [] in WorldState>displayWorld:submorphs:
0x3ebe3a68 s FormCanvas>roundCornersOf:in:during:
0x3ebe3b20 s FormCanvas(Canvas)>roundCornersOf:during:
0x3ebd8aa8 s WorldState>displayWorld:submorphs:
0x3ebe3c34 s WorldMorph>displayWorld
0x3ebe3cec s [] in WorldState>displayWorldSafely:
0x3ebe3da4 s BlockClosure>on:do:
0x3ebd8a2c s BlockClosure>ifError:
0x3ebd89ac s WorldState>displayWorldSafely:
0x3ebd3df4 s WorldState>doOneCycleNowFor:
0x3ebe3f70 s WorldState>doOneCycleFor:
0x3ebe4028 s WorldMorph>doOneCycle
0x2162ad58 s [] in MorphicUIManager>spawnNewProcess
0x21629f30 s [] in BlockClosure>newProcess



_,,,^..^,,,_
best, Eliot




--

"Every thing has its own flow"
Reply | Threaded
Open this post in threaded view
|

Re: interesting recursive out-of-memory error

Marcus Denker-4
There is some memory leak with the new editor recently (we have seen it until now just with nautilus).
But I guess that could be the same reason.

On 18 Oct 2015, at 23:33, Tudor Girba <[hidden email]> wrote:

Hmm, I never encountered this case. Let's try to manufacture this case again.

Cheers,
Doru

On Sun, Oct 18, 2015 at 3:58 PM, Eliot Miranda <[hidden email]> wrote:
Hi Nicolai,

On Oct 18, 2015, at 3:16 AM, Nicolai Hess <[hidden email]> wrote:

Thanks eliot.
Did you run anything that consumed much memory?
Platform linux?

I filed in a small package that is entirely Smalltalk code, ran a very simple example in the context of a GT playground, played around with a colleague exploring the playground, diving into and out of the structure, and then left it alone for perhaps a half hour until I returned, at which point it appeared to lock up as soon as I started interacting with it to shut it down.

_,,,^..^,,,_ (phone)



2015-10-18 2:24 GMT+02:00 Eliot Miranda <[hidden email]>:
Hi All,

    this in a bleeding edge Pharo 5 image which had been left standing with a Playground open which, when I clicked on it after leaving it for over an hour, got into an infinite recursion failing to allocate an object as part of opening a file to write an error report to.  Here's the infinite recursion beginning.  Full crash.mp attached.

0x3ebf4bf8 s OutOfMemory class(Exception class)>signal
0x3ebf4c54 s OutOfMemory class(Behavior)>basicNew
0x3ebf4cb0 s OutOfMemory class(Behavior)>new
0x3ebf4d0c s OutOfMemory class(Exception class)>signal
0x3ebe52ec s OutOfMemory class(Behavior)>basicNew
0x3ebf4d68 s OutOfMemory class(Behavior)>new
0x3ebf4dc4 s OutOfMemory class(Exception class)>signal
0x3ebf4e20 s OutOfMemory class(Behavior)>basicNew
0x3ebf4e7c s OutOfMemory class(Behavior)>new
0x3ebf4ed8 s OutOfMemory class(Exception class)>signal
0x3ebf4f34 s OutOfMemory class(Behavior)>basicNew
0x3ebf4f90 s OutOfMemory class(Behavior)>new
0x3ebf4fec s OutOfMemory class(Exception class)>signal
0x3ebe5290 s WeakFinalizerItem class(Behavior)>basicNew:
0x3ebf5048 s WeakFinalizerItem class>new
0x3ebf50a4 s [] in WeakRegistry>add:executor:
0x3ebe5234 s WeakIdentityKeyDictionary(Dictionary)>at:ifAbsent:
0x3ebe51c4 s [] in WeakRegistry>add:executor:
0x3ebf4860 s BlockClosure>on:do:
0x3ebe5154 s BlockClosure>ifError:
0x3ebe50e4 s [] in Semaphore>critical:ifError:
0x3ebf48bc s [] in Semaphore>critical:
0x3ebf4918 s BlockClosure>ensure:
0x3ebe505c s Semaphore>critical:
0x3ebe4fdc s Semaphore>critical:ifError:
0x3ebe4f5c s WeakRegistry>protected:
0x3ebe4ee8 s WeakRegistry>add:executor:
0x3ebf4974 s WeakRegistry>add:
0x3ebf49d0 s MultiByteFileStream class(StandardFileStream class)>register:
0x3ebf4a2c s MultiByteFileStream(StandardFileStream)>register
0x3ebe4de0 s MultiByteFileStream(StandardFileStream)>open:forWrite:
0x3ebe4e58 s MultiByteFileStream>open:forWrite:
0x3ebf4524 s MultiByteFileStream class(StandardFileStream class)>readOnlyFileNamed:
0x3ebf4580 s MultiByteFileStream(StandardFileStream)>readOnlyCopy
0x3ebf45dc s [] in SourceFileArray>readStreamAtFileIndex:atPosition:ifPresent:ifAbsent:
0x3ebf4638 s BlockClosure>on:do:
0x3ebe4cc8 s SourceFileArray>readStreamAtFileIndex:atPosition:ifPresent:ifAbsent:
0x3ebf4694 s SourceFileArray>readStreamAt:ifPresent:ifAbsent:
0x3ebe4be8 s SourceFileArray>sourceCodeAt:
0x3ebe4c64 s [] in CompiledMethod>getSourceFromFile
0x3ebf418c s BlockClosure>on:do:
0x3ebe4b6c s CompiledMethod>getSourceFromFile
0x3ebf41e8 s CompiledMethod>sourceCode
0x3ebf4244 s CompiledMethod>parseTree
0x3ebf42a0 s [] in ASTCache>at:
0x3ebf42fc s [] in ASTCache(Dictionary)>at:ifAbsentPut:
0x3ebf4358 s ASTCache(Dictionary)>at:ifAbsent:
0x3ebe4adc s ASTCache(Dictionary)>at:ifAbsentPut:
0x3ebe4a6c s ASTCache>at:
0x3ebe4a10 s ASTCache class>at:
0x3ebe49b4 s CompiledMethod>ast
0x3ebf3ce0 s CompiledMethod>sourceNode
0x3ebf3d3c s CompiledMethod>sourceNodeForPC:
0x3ebf3d98 s BlockClosure>sourceNode
0x3ebf3df4 s BlockClosure>printOn:
0x3ebf3e50 s [] in BlockClosure(Object)>printStringLimitedTo:
0x3ebe4944 s String class(SequenceableCollection class)>streamContents:limitedTo:
0x3ebe4850 s BlockClosure(Object)>printStringLimitedTo:
0x3ebf3eac s BlockClosure(Object)>printString
0x3ebf3f08 s Context>printOn:
0x3ebf3f64 s Context>printDebugOn:
0x3ebf3fc0 s [] in Context>debugStack:on:
0x3ebe44c8 s OrderedCollection>do:
0x3ebe4458 s Context>debugStack:on:
0x3ebf3a00 s Context>shortDebugStackOn:
0x3ebf3a5c s [] in ControlButtonMorph(Morph)>drawErrorOn:
0x3ebf3ab8 s String class(SequenceableCollection class)>new:streamContents:
0x3ebf3b14 s String class(SequenceableCollection class)>streamContents:
0x3ebe4318 s [] in ControlButtonMorph(Morph)>drawErrorOn:
0x3ebe42b4 s ControlButtonMorph(Morph)>valueOfProperty:ifPresentDo:
0x3ebe41e0 s ControlButtonMorph(Morph)>drawErrorOn:
0x3ebe4244 s [] in ControlButtonMorph(Morph)>fullDrawOn:
0x3ebf377c s BlockClosure>cull:
0x3ebf37d8 s Context>evaluateSignal:
0x3ebf3834 s Context>handleSignal:
0x3ebe1608 s OutOfMemory(Exception)>signal
0x3ebe1664 s OutOfMemory class(Exception class)>signal
0x3ebe158c s BalloonBuffer class(Behavior)>basicNew:
0x3ebe1830 s BalloonBuffer class(Behavior)>new:
0x3ebe1478 s BalloonEngine class>allocateOrRecycleBuffer:
0x3ebe1944 s BalloonEngine>reset
0x3ebe1530 s BalloonEngine>resetIfNeeded
0x3ebe14d4 s BalloonEngine>drawRectangle:fill:borderWidth:borderColor:transform:
0x3ebe1ab4 s BalloonCanvas>drawRectangle:color:borderWidth:borderColor:
0x3ebe1b6c s BalloonCanvas>fillRectangle:basicFillStyle:
0x3ebe1c24 s FormCanvas>balloonFillRectangle:fillStyle:
0x3ebe1cdc s FormCanvas>fillRectangle:basicFillStyle:
0x3ebe1d94 s GradientFillStyle(FillStyle)>fillRectangle:on:
0x3ebe1e4c s FormCanvas(Canvas)>fillRectangle:fillStyle:
0x3ebe1f04 s FormCanvas(Canvas)>fillRectangle:fillStyle:borderStyle:
0x3ebe1fbc s ControlButtonMorph(Morph)>drawOn:
0x3ebdf0fc s FormCanvas(Canvas)>draw:
0x3ebdf0a0 s FormCanvas(Canvas)>drawMorph:
0x3ebe212c s [] in ControlButtonMorph(Morph)>fullDrawOn:
0x3ebe21e4 s FormCanvas>roundCornersOf:in:during:
0x3ebe229c s FormCanvas(Canvas)>roundCornersOf:during:
0x3ebdf030 s [] in ControlButtonMorph(Morph)>fullDrawOn:
0x3ebe16c0 s BlockClosure>on:do:
0x3ebdefac s ControlButtonMorph(Morph)>fullDrawOn:
0x3ebe2468 s FormCanvas(Canvas)>fullDraw:
0x3ebe2520 s FormCanvas(Canvas)>fullDrawMorph:
0x3ebe25d8 s [] in SearchMorph(Morph)>drawSubmorphsOn:
0x3ebe2690 s Array(SequenceableCollection)>reverseDo:
0x3ebdef3c s [] in SearchMorph(Morph)>drawSubmorphsOn:
0x3ebe27a4 s FormCanvas>clipBy:during:
0x3ebded5c s SearchMorph(Morph)>drawSubmorphsOn:
0x3ebdedc8 s SearchMorph(DropListMorph)>drawSubmorphsOn:
0x3ebe2914 s [] in SearchMorph(Morph)>fullDrawOn:
0x3ebe29cc s FormCanvas>roundCornersOf:in:during:
0x3ebe2a84 s FormCanvas(Canvas)>roundCornersOf:during:
0x3ebdecc8 s [] in SearchMorph(Morph)>fullDrawOn:
0x3ebe2b98 s BlockClosure>on:do:
0x3ebdec44 s SearchMorph(Morph)>fullDrawOn:
0x3ebe2cac s FormCanvas(Canvas)>fullDraw:
0x3ebe2d64 s FormCanvas(Canvas)>fullDrawMorph:
0x3ebe2e1c s [] in SystemWindow(Morph)>drawSubmorphsOn:
0x3ebd976c s Array(SequenceableCollection)>reverseDo:
0x3ebd96fc s [] in SystemWindow(Morph)>drawSubmorphsOn:
0x3ebe2f8c s FormCanvas>clipBy:during:
0x3ebd9584 s SystemWindow(Morph)>drawSubmorphsOn:
0x3ebe30a0 s [] in SystemWindow(Morph)>fullDrawOn:
0x3ebe3158 s FormCanvas>roundCornersOf:in:during:
0x3ebe3210 s FormCanvas(Canvas)>roundCornersOf:during:
0x3ebd94f0 s [] in SystemWindow(Morph)>fullDrawOn:
0x3ebe3324 s BlockClosure>on:do:
0x3ebd946c s SystemWindow(Morph)>fullDrawOn:
0x3ebd9410 s FormCanvas(Canvas)>fullDraw:
0x3ebd93b4 s FormCanvas(Canvas)>fullDrawMorph:
0x3ebd9004 s [] in WorldState>drawWorld:submorphs:invalidAreasOn:
0x3ebe35ec s Rectangle>allAreasOutsideList:startingAt:do:
0x3ebe36a4 s Rectangle>allAreasOutsideList:do:
0x3ebd8e94 s [] in WorldState>drawWorld:submorphs:invalidAreasOn:
0x3ebe3858 s Array(SequenceableCollection)>do:
0x3ebd8b98 s WorldState>drawWorld:submorphs:invalidAreasOn:
0x3ebd8c94 s [] in WorldState>displayWorld:submorphs:
0x3ebe3a68 s FormCanvas>roundCornersOf:in:during:
0x3ebe3b20 s FormCanvas(Canvas)>roundCornersOf:during:
0x3ebd8aa8 s WorldState>displayWorld:submorphs:
0x3ebe3c34 s WorldMorph>displayWorld
0x3ebe3cec s [] in WorldState>displayWorldSafely:
0x3ebe3da4 s BlockClosure>on:do:
0x3ebd8a2c s BlockClosure>ifError:
0x3ebd89ac s WorldState>displayWorldSafely:
0x3ebd3df4 s WorldState>doOneCycleNowFor:
0x3ebe3f70 s WorldState>doOneCycleFor:
0x3ebe4028 s WorldMorph>doOneCycle
0x2162ad58 s [] in MorphicUIManager>spawnNewProcess
0x21629f30 s [] in BlockClosure>newProcess



_,,,^..^,,,_
best, Eliot




--

"Every thing has its own flow"