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 <[email protected]> wrote: > Hi Nicolai, > > On Oct 18, 2015, at 3:16 AM, Nicolai Hess <[email protected]> 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 <[email protected]>: > >> 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 >> > > -- www.tudorgirba.com "Every thing has its own flow"
