Ciao Eliot,

> Hi Dario,
> 
>     if you look at the end of the PharoDebug.log you will see:
> 
> Most recent primitives
> doesNotUnderstand:
> doesNotUnderstand:
> doesNotUnderstand:
> doesNotUnderstand:
> doesNotUnderstand:
> doesNotUnderstand:
> doesNotUnderstand:
> doesNotUnderstand:
> doesNotUnderstand:
> .......
> ......
> doesNotUnderstand:
> doesNotUnderstand:
> doesNotUnderstand:
> doesNotUnderstand:
> doesNotUnderstand:
> doesNotUnderstand:
> doesNotUnderstand:
> doesNotUnderstand:
> doesNotUnderstand:
> doesNotUnderstand:
> doesNotUnderstand:
> 
> So you have a recursive doesNotUnderstand: error and the system is running 
> out of memory.  The questions are where and why?  You can try and debug this 
> further by running the VM with --trace=259, e.g.
> 
> pharo-vm/pharo --trace=259 my image.image
> 
> This will produce lots of output, eventually ending in an endless stream of 
> doesNotUnderstand:'s.  So capture the first few megabytes of output (see e.g. 
> head(1) ($ man head))
> 
> FYI
>       "traceFlags is a set of flags.
>        1 => print trace (if something below is selected)
>        2 => trace sends
>        4 => trace block activations
>        8 => trace interpreter primitives
>        16 => trace events (context switches, GCs, etc)
>        32 => trace stack overflow
>        64 => send breakpoint on implicit receiver (Newspeak VM only)
>       128 => check stack depth on send (simulation only)
>       256 => trace linked sends "
> 
> Alternatively you could use a debugger such as gdb and I can tell you how to 
> put a breakpoint on doesNotUnderstand:

I do this command:

party@party001:/opt/pharolauncher/pharo-vm$ ./pharo --trace=259 
/home/party/Pharo/images/Pharo7.0-64DTRDevErr/Pharo7.0-64DTRDevErr.image

This is the output:

pthread_setschedparam failed: Operation not permitted
This VM uses a separate heartbeat thread to update its internal clock
and handle events.  For best operation, this thread should run at a
higher priority, however the VM was unable to change the priority.  The
effect is that heavily loaded systems may experience some latency
issues.  If this occurs, please create the appropriate configuration
file in /etc/security/limits.d/ as shown below:

cat <<END | sudo tee /etc/security/limits.d/pharo.conf
*      hard    rtprio  2
*      soft    rtprio  2
END

and report to the pharo mailing list whether this improves behaviour.

You will need to log out and log back in for the limits to take effect.
For more information please see
https://github.com/OpenSmalltalk/opensmalltalk-vm/releases/tag/r3732#linux
SessionManager>installNewSession
SessionManager>newSession
WorkingSession class(Behavior)>new
WorkingSession class(Behavior)>basicNew
WorkingSession>initialize
Object(ProtoObject)>initialize
OrderedCollection class>new
OrderedCollection class>new:
OrderedCollection class(Behavior)>basicNew
OrderedCollection class>arrayType
Array class>new:
OrderedCollection>setCollection:
OrderedCollection>reset
OrderedCollection>resetTo:
DateAndTime class>now
DateAndTime class>clock
Time class>microsecondClockValue
Time class>primUTCMicrosecondsClock
SmallInteger>*
Integer>*
SmallInteger(Integer)>isInteger
SmallInteger(Number)>negative
SmallInteger(Number)>negative
SmallInteger(Integer)>digitMultiply:neg:
DateAndTime class(Behavior)>basicNew
DateAndTime class>localOffset
DateAndTime class>localTimeZone
LocalTimeZone>offset
LocalTimeZone>primOffset
SmallInteger(Number)>minutes
Duration class>minutes:
Duration class>seconds:nanoSeconds:
Duration class(Behavior)>basicNew
SmallInteger(Integer)>truncated
SmallInteger(Number)>fractionPart
SmallInteger(Number)>integerPart
SmallInteger(Integer)>truncated
Duration>seconds:nanoSeconds:
SmallInteger(Integer)>rounded
DateAndTime>setJdn:seconds:nano:offset:
DateAndTime>normalizeSecondsAndNanos
SmallInteger><=
Integer><=
LargePositiveInteger(Integer)>isInteger
SmallInteger(Number)>negative
LargePositiveInteger>negative
SmallInteger(Number)>negative
SmallInteger><
SmallInteger(Integer)>digitCompare:
LargePositiveInteger(LargeInteger)>//
LargePositiveInteger(LargeInteger)>\\
WorkingSession>manager:
SessionManager>installSession:
SessionManager>currentSession
WorkingSession>start:
SmalltalkImage>vm
VirtualMachine>setGCParameters
VirtualMachine>edenSpaceSize
VirtualMachine>parameterAt:
VirtualMachine>wordSize
SmallFloat64(Float)>rounded
SmallFloat64>fractionPart
SmallFloat64(Float)>abs
SmallFloat64>truncated
VirtualMachine>tenuringThreshold:
VirtualMachine>parameterAt:put:
SmalltalkImage>clearExternalObjects
ExternalSemaphoreTable class>clearExternalObjects
Semaphore>critical:
BlockClosure>ensure:
BlockClosure>valueNoContextSwitch
Semaphore>wait
Array class(ArrayedCollection class)>new
Array class>new:
ExternalSemaphoreTable class>unprotectedExternalObjects:
SmalltalkImage>specialObjectsArray
Array(Object)>at:put:

no room in eden for allocateSmallNewSpaceSlots:format:classIndex:

/opt/pharolauncher/pharo-vm/lib/pharo/5.0-201805090836/pharo
Pharo VM version: 5.0-201805090836  Wed May  9 08:54:40 UTC 2018 gcc 4.8 
[Production Spur 64-bit VM]
Built from: CoInterpreter VMMaker.oscog-eem.2380 uuid: 
c76d37e1-445c-4e34-9796-fc836dfd50c9 May  9 2018
With: StackToRegisterMappingCogit VMMaker.oscog-eem.2380 uuid: 
c76d37e1-445c-4e34-9796-fc836dfd50c9 May  9 2018
Revision: VM: 201805090836 https://github.com/OpenSmalltalk/opensmalltalk-vm.git
Date: Wed May 9 10:36:12 2018 CommitHash: 334be97
Plugins: 201805090836 https://github.com/OpenSmalltalk/opensmalltalk-vm.git
Build host: Linux travis-job-5ab63a26-b2a8-4841-93ff-7aa5dc4e571e 
4.4.0-101-generic #124~14.04.1-Ubuntu SMP Fri Nov 10 19:05:36 UTC 2017 x86_64 
x86_64 x86_64 GNU/Linux
plugin path: ./lib/pharo/5.0-201805090836 [default: 
/opt/pharolauncher/pharo-vm/lib/pharo/5.0-201805090836/]


C stack backtrace & registers:
*./lib/pharo/5.0-201805090836/pharo[0x41b0c5]
./lib/pharo/5.0-201805090836/pharo(error+0xf)[0x41c7af]
./lib/pharo/5.0-201805090836/pharo[0x432afc]
./lib/pharo/5.0-201805090836/pharo[0x43f6b3]
./lib/pharo/5.0-201805090836/pharo[0x4485bf]
./lib/pharo/5.0-201805090836/pharo[0x45aee1]
./lib/pharo/5.0-201805090836/pharo[0x45a217]
./lib/pharo/5.0-201805090836/pharo[0x45aee6]
./lib/pharo/5.0-201805090836/pharo[0x45a217]
./lib/pharo/5.0-201805090836/pharo[0x45aee6]
./lib/pharo/5.0-201805090836/pharo[0x45a217]
./lib/pharo/5.0-201805090836/pharo[0x45aee6]
./lib/pharo/5.0-201805090836/pharo[0x45a217]
./lib/pharo/5.0-201805090836/pharo[0x45aee6]
./lib/pharo/5.0-201805090836/pharo[0x45a217]
./lib/pharo/5.0-201805090836/pharo[0x45aee6]
./lib/pharo/5.0-201805090836/pharo[0x45a217]
./lib/pharo/5.0-201805090836/pharo[0x45aee6]
./lib/pharo/5.0-201805090836/pharo[0x45a217]
./lib/pharo/5.0-201805090836/pharo[0x45aee6]
./lib/pharo/5.0-201805090836/pharo[0x45a217]
./lib/pharo/5.0-201805090836/pharo[0x45aee6]
./lib/pharo/5.0-201805090836/pharo[0x45a217]
./lib/pharo/5.0-201805090836/pharo[0x45aee6]
./lib/pharo/5.0-201805090836/pharo[0x45a217]
./lib/pharo/5.0-201805090836/pharo[0x45aee6]
./lib/pharo/5.0-201805090836/pharo[0x45a217]
./lib/pharo/5.0-201805090836/pharo[0x45aee6]
./lib/pharo/5.0-201805090836/pharo[0x45a217]
./lib/pharo/5.0-201805090836/pharo[0x45aee6]
./lib/pharo/5.0-201805090836/pharo[0x45a217]
./lib/pharo/5.0-201805090836/pharo[0x45aee6]
./lib/pharo/5.0-201805090836/pharo[0x45a217]
./lib/pharo/5.0-201805090836/pharo[0x45aee6]
./lib/pharo/5.0-201805090836/pharo[0x45a217]
./lib/pharo/5.0-201805090836/pharo[0x45aee6]
./lib/pharo/5.0-201805090836/pharo[0x45a217]
./lib/pharo/5.0-201805090836/pharo[0x45aee6]
./lib/pharo/5.0-201805090836/pharo[0x45a217]
./lib/pharo/5.0-201805090836/pharo[0x45aee6]
./lib/pharo/5.0-201805090836/pharo[0x45a217]
./lib/pharo/5.0-201805090836/pharo[0x45aee6]
./lib/pharo/5.0-201805090836/pharo[0x45a217]
./lib/pharo/5.0-201805090836/pharo[0x45aee6]
./lib/pharo/5.0-201805090836/pharo[0x45a217]
./lib/pharo/5.0-201805090836/pharo[0x45aee6]
./lib/pharo/5.0-201805090836/pharo[0x45a217]
./lib/pharo/5.0-201805090836/pharo[0x45aee6]
./lib/pharo/5.0-201805090836/pharo[0x45a217]
./lib/pharo/5.0-201805090836/pharo[0x45aee6]
./lib/pharo/5.0-201805090836/pharo[0x45a217]
./lib/pharo/5.0-201805090836/pharo[0x45aee6]
./lib/pharo/5.0-201805090836/pharo[0x45a217]
./lib/pharo/5.0-201805090836/pharo[0x45aee6]
./lib/pharo/5.0-201805090836/pharo[0x45a217]
./lib/pharo/5.0-201805090836/pharo[0x45aee6]
./lib/pharo/5.0-201805090836/pharo[0x45a217]
./lib/pharo/5.0-201805090836/pharo[0x45aee6]
./lib/pharo/5.0-201805090836/pharo[0x45a217]
./lib/pharo/5.0-201805090836/pharo[0x45aee6]
./lib/pharo/5.0-201805090836/pharo[0x45a217]
./lib/pharo/5.0-201805090836/pharo[0x45aee6]
./lib/pharo/5.0-201805090836/pharo[0x45a217]
./lib/pharo/5.0-201805090836/pharo[0x45aee6]
[0x21e78c0]


Smalltalk stack dump:
    0x7ffdf8a345f8 I ExternalSemaphoreTable class>unprotectedExternalObjects: 
0x22044b0: a(n) ExternalSemaphoreTable class
    0x7ffdf8a34640 I [] in ExternalSemaphoreTable class>clearExternalObjects 
0x22044b0: a(n) ExternalSemaphoreTable class
    0x7ffdf8a34690 I [] in Semaphore>critical: 0x261ec80: a(n) Semaphore
    0x7ffdf8a346e0 I BlockClosure>ensure: 0x1b5e2d0: a(n) BlockClosure
    0x7ffdf8a34730 I Semaphore>critical: 0x261ec80: a(n) Semaphore
    0x7ffdf8a34778 I ExternalSemaphoreTable class>clearExternalObjects 
0x22044b0: a(n) ExternalSemaphoreTable class
    0x7ffdf8a347b8 I SmalltalkImage>clearExternalObjects 0x220a920: a(n) 
SmalltalkImage
    0x7ffdf8a347f8 I WorkingSession>start: 0x1b5e000: a(n) WorkingSession
    0x7ffdf8a34850 I SessionManager>launchSnapshot:andQuit: 0x2270a10: a(n) 
SessionManager
         0xc4f6c50 s SessionManager>snapshot:andQuit:
         0xc506a18 s [] in SmalltalkImage>snapshot:andQuit:
         0xc515188 s CurrentExecutionEnvironment class>activate:for:
         0xc51b590 s 
DefaultExecutionEnvironment(ExecutionEnvironment)>beActiveDuring:
         0xc5322e0 s DefaultExecutionEnvironment class>beActiveDuring:
         0xc51b648 s SmalltalkImage>snapshot:andQuit:
         0xc532398 s [] in WorldState class>saveSession
         0xc53a310 s BlockClosure>ensure:
         0xc552b18 s CursorWithMask(Cursor)>showWhile:
         0xc552bf8 s WorldState class>saveSession
         0xc55a110 s [] in ToggleMenuItemMorph(MenuItemMorph)>invokeWithEvent:
         0xc571550 s BlockClosure>ensure:
         0xc571ee8 s CursorWithMask(Cursor)>showWhile:
         0xc571fc8 s ToggleMenuItemMorph(MenuItemMorph)>invokeWithEvent:
         0xc572420 s ToggleMenuItemMorph(MenuItemMorph)>mouseUp:
         0xc572590 s ToggleMenuItemMorph(MenuItemMorph)>handleMouseUp:
         0xc572648 s MouseButtonEvent>sentTo:
         0xc572700 s ToggleMenuItemMorph(Morph)>handleEvent:
         0xc5727b8 s MorphicEventDispatcher>dispatchDefault:with:
         0xc572870 s MorphicEventDispatcher>handleMouseUp:
         0xc572928 s MouseButtonEvent>sentTo:
         0xc5729e0 s [] in MorphicEventDispatcher>dispatchEvent:with:
         0xc572a98 s BlockClosure>ensure:
         0xc572b78 s MorphicEventDispatcher>dispatchEvent:with:
         0xc572c50 s ToggleMenuItemMorph(Morph)>processEvent:using:
         0xc572d08 s MorphicEventDispatcher>dispatchDefault:with:
         0xc572dc0 s MorphicEventDispatcher>handleMouseUp:
         0xc572ec8 s MouseButtonEvent>sentTo:
         0xc572f80 s [] in MorphicEventDispatcher>dispatchEvent:with:
         0xc573038 s BlockClosure>ensure:
         0xc573118 s MorphicEventDispatcher>dispatchEvent:with:
         0xc5731f0 s MenuMorph(Morph)>processEvent:using:
         0xc5732a8 s MenuMorph(Morph)>processEvent:
         0xc573360 s MenuMorph>handleFocusEvent:
         0xc573418 s [] in HandMorph>sendFocusEvent:to:clear:
         0xc5734d0 s BlockClosure>on:do:
         0xc5735d0 s WorldMorph(PasteUpMorph)>becomeActiveDuring:
         0xc5736c0 s HandMorph>sendFocusEvent:to:clear:
         0xc5737c0 s HandMorph>sendEvent:focus:clear:
         0xc5738b0 s HandMorph>sendMouseEvent:
         0xc573968 s HandMorph>handleEvent:
         0xc573a20 s HandMorph>processEventsFromQueue:
         0xc573ad8 s HandMorph>processEvents
         0xc573b90 s [] in WorldState>doOneCycleNowFor:
         0xc573c48 s Array(SequenceableCollection)>do:
         0xc573d20 s WorldState>handsDo:
         0xc573dd8 s WorldState>doOneCycleNowFor:
         0xc573e90 s WorldState>doOneCycleFor:
         0xc573f48 s WorldMorph>doOneCycle
         0xc574000 s WorldMorph class>doOneCycle
         0xc040f88 s [] in MorphicUIManager>spawnNewProcess
         0xc040d40 s [] in BlockClosure>newProcess

Most recent primitives

stack page bytes 8192 available headroom 5576 minimum unused headroom 7200

        
(no room in eden for allocateSmallNewSpaceSlots:format:classIndex:)
Annullato (core dump creato)

Are the data you expected?

Thanks,
        Dario

Reply via email to