This happened after a VM crash, when I try to restart I get this in
the log. Isn't the error caused by the isEmptyOrNil primitive? Is
there anyway for me to access the image now?

On Fri, Sep 9, 2011 at 14:38, Igor Stasenko <[email protected]> wrote:
> On 9 September 2011 20:31, John Toohey <[email protected]> wrote:
>> I am experiencing a lot of random crashes with this VM on OSX 10.6. It
>> just crashed again, and this time I cannot get it to restart. It seems
>> to be crashing in a socket receive class. The stack trace is here :-
>>
>
> This is not a crash, it just quits to OS due to error at startup.
> To avoid imminent leave to OS, put an error handler around your startup code
> (i guess it is in CoreMQStompConnection somewhere?).
>
>
>
>> THERE_BE_DRAGONS_HERE
>> MessageNotUnderstood: PrimitiveFailed>>isEmptyOrNil
>> 9 September 2011 2:28:41 pm
>>
>> VM: Mac OS - intel - 1067 - Croquet Closure Cog VM [CoInterpreter
>> VMMaker-oscog-IgorStasenko.123] 21.0
>> Image: Pharo1.3 [Latest update: #13298]
>>
>> PrimitiveFailed(Object)>>doesNotUnderstand: #isEmptyOrNil
>>        Receiver: PrimitiveFailed: primitive #primSocketReceiveDataAvailable:
>> in a Socket[invalidSocketHandl...etc...
>>        Arguments and temporary variables:
>>                t1:     isEmptyOrNil
>>                t2:     MessageNotUnderstood: PrimitiveFailed>>isEmptyOrNil
>>                t3:     nil
>>        Receiver's instance variables:
>>                messageText:    'primitive #primSocketReceiveDataAvailable: 
>> in a
>> Socket[invalidSoc...etc...
>>                tag:    nil
>>                signaler:       a Socket[invalidSocketHandle]
>>                signalContext:  PrimitiveFailed(Exception)>>signal
>>                handlerContext:         BlockClosure>>on:do:
>>                outerContext:   nil
>>                selector:       #primSocketReceiveDataAvailable:
>>
>>
>> [:t1 |
>> | t2 |
>> t1 << self class name.
>>        (t2 := self messageText) isEmptyOrNil
>>                ifFalse: [t1 << ': ' << t2]] in Error(Exception)>>description
>>        Receiver: <<error during printing>>
>>        Arguments and temporary variables:
>>                t1:     a WriteStream 'Error'
>>                t2:     PrimitiveFailed: primitive 
>> #primSocketReceiveDataAvailable: in
>> a Socket[inv...etc...
>>        Receiver's instance variables:
>>                messageText:    PrimitiveFailed: primitive
>> #primSocketReceiveDataAvailable: in a S...etc...
>>                tag:    nil
>>                signaler:       a CoreMQStompConnection connectResponse: 
>> CONNECTED
>> session: ID:John-T...etc...
>>                signalContext:  Error(Exception)>>signal
>>                handlerContext:         nil
>>                outerContext:   nil
>>
>>
>> String class(SequenceableCollection class)>>new:streamContents:
>>        Receiver: String
>>        Arguments and temporary variables:
>>                t1:     100
>>                t2:     [:t1 |
>> | t2 |
>> t1 << self class name.
>>        (t2 := self messageText) isEmptyOrNi...etc...
>>                t3:     a WriteStream 'Error'
>>        Receiver's instance variables:
>>                superclass:     ArrayedCollection
>>                methodDict:     a MethodDictionary(size 303)
>>                format:         2
>>                instanceVariables:      nil
>>                organization:   ('*Compiler-Kernel' 
>> inviolateInstanceVariableNames
>> isLegalInstVar...etc...
>>                subclasses:     {ByteString. WideString. Symbol}
>>                name:   #String
>>                classPool:      a Dictionary(#AsciiOrder->#[0 1 2 3 4 5 6 7 8 
>> 9 10 11 12
>> 13 14 15 16...etc...
>>                sharedPools:    nil
>>                environment:    a SystemDictionary(lots of globals)
>>                category:       #'Collections-Strings'
>>                traitComposition:       {}
>>                localSelectors:         nil
>>
>>
>> String class(SequenceableCollection class)>>streamContents:
>>        Receiver: String
>>        Arguments and temporary variables:
>>                t1:     [:t1 |
>> | t2 |
>> t1 << self class name.
>>        (t2 := self messageText) isEmptyOrNi...etc...
>>        Receiver's instance variables:
>>                superclass:     ArrayedCollection
>>                methodDict:     a MethodDictionary(size 303)
>>                format:         2
>>                instanceVariables:      nil
>>                organization:   ('*Compiler-Kernel' 
>> inviolateInstanceVariableNames
>> isLegalInstVar...etc...
>>                subclasses:     {ByteString. WideString. Symbol}
>>                name:   #String
>>                classPool:      a Dictionary(#AsciiOrder->#[0 1 2 3 4 5 6 7 8 
>> 9 10 11 12
>> 13 14 15 16...etc...
>>                sharedPools:    nil
>>                environment:    a SystemDictionary(lots of globals)
>>                category:       #'Collections-Strings'
>>                traitComposition:       {}
>>                localSelectors:         nil
>>
>>
>> Error(Exception)>>description
>>        Receiver: <<error during printing>>
>>        Arguments and temporary variables:
>>
>>        Receiver's instance variables:
>>                messageText:    PrimitiveFailed: primitive
>> #primSocketReceiveDataAvailable: in a S...etc...
>>                tag:    nil
>>                signaler:       a CoreMQStompConnection connectResponse: 
>> CONNECTED
>> session: ID:John-T...etc...
>>                signalContext:  Error(Exception)>>signal
>>                handlerContext:         nil
>>                outerContext:   nil
>>
>>
>> StartupUIManager(NonInteractiveUIManager)>>unhandledErrorDefaultAction:
>>        Receiver: a StartupUIManager
>>        Arguments and temporary variables:
>> <<error during printing>
>>        Receiver's instance variables:
>>                uiManager:      a MorphicUIManager
>>                doNotQuitOnRestart:     false
>>
>>
>> UnhandledError>>defaultAction
>>        Receiver: UnhandledError
>>        Arguments and temporary variables:
>>
>>        Receiver's instance variables:
>>                messageText:    nil
>>                tag:    nil
>>                signaler:       <<error during printing>>
>>
>> UndefinedObject>>handleSignal:
>>        Receiver: nil
>>        Arguments and temporary variables:
>>                t1:     UnhandledError
>>        Receiver's instance variables:
>> nil
>>
>> MethodContext(ContextPart)>>handleSignal:
>>        Receiver: BlockClosure>>on:do:
>>        Arguments and temporary variables:
>>                t1:     UnhandledError
>>                t2:     nil
>>        Receiver's instance variables:
>>                sender:         [[[[self announceNextCommand]
>>                on: ConnectionTimedOut
>>                do: [:t1 | nil...etc...
>>                pc:     17
>>                stackp:         3
>>                method:         (BlockClosure>>#on:do: "a 
>> CompiledMethod(137625600)")
>>                closureOrNil:   nil
>>                receiver:       [[[self announceNextCommand]
>>                on: ConnectionTimedOut
>>                do: [:t1 | ni...etc...
>>
>>
>> MethodContext(ContextPart)>>handleSignal:
>>        Receiver: BlockClosure>>on:do:
>>        Arguments and temporary variables:
>>                t1:     UnhandledError
>>                t2:     nil
>>        Receiver's instance variables:
>>                sender:         [[[self announceNextCommand]
>>                on: ConnectionTimedOut
>>                do: [:t1 | nil]...etc...
>>                pc:     17
>>                stackp:         3
>>                method:         (BlockClosure>>#on:do: "a 
>> CompiledMethod(137625600)")
>>                closureOrNil:   nil
>>                receiver:       [self announceNextCommand]
>>
>>
>> UnhandledError(Exception)>>signal
>>        Receiver: UnhandledError
>>        Arguments and temporary variables:
>>
>>        Receiver's instance variables:
>>                messageText:    nil
>>                tag:    nil
>>                signaler:       <<error during printing>>
>>
>> UnhandledError class>>signalForException:
>>        Receiver: UnhandledError
>>        Arguments and temporary variables:
>> <<error during printing>
>>        Receiver's instance variables:
>>                superclass:     Exception
>>                methodDict:     a
>> MethodDictionary(#defaultAction->(UnhandledError>>#defaultAction
>> ...etc...
>>                format:         144
>>                instanceVariables:      #('exception')
>>                organization:   ('*UIManager' defaultAction)
>> ('as yet unclassified' exception exc...etc...
>>                subclasses:     nil
>>                name:   #UnhandledError
>>                classPool:      nil
>>                sharedPools:    nil
>>                environment:    a SystemDictionary(lots of globals)
>>                category:       #'Kernel-Exceptions'
>>                traitComposition:       nil
>>                localSelectors:         nil
>>
>>
>> Error>>defaultAction
>>        Receiver: <<error during printing>>
>>        Arguments and temporary variables:
>>
>>        Receiver's instance variables:
>>                messageText:    PrimitiveFailed: primitive
>> #primSocketReceiveDataAvailable: in a S...etc...
>>                tag:    nil
>>                signaler:       a CoreMQStompConnection connectResponse: 
>> CONNECTED
>> session: ID:John-T...etc...
>>                signalContext:  Error(Exception)>>signal
>>                handlerContext:         nil
>>                outerContext:   nil
>>
>>
>> UndefinedObject>>handleSignal:
>>        Receiver: nil
>>        Arguments and temporary variables:
>> <<error during printing>
>>        Receiver's instance variables:
>> nil
>>
>> MethodContext(ContextPart)>>handleSignal:
>>        Receiver: BlockClosure>>on:do:
>>        Arguments and temporary variables:
>> <<error during printing>
>>        Receiver's instance variables:
>>                sender:         [[[[self announceNextCommand]
>>                on: ConnectionTimedOut
>>                do: [:t1 | nil...etc...
>>                pc:     17
>>                stackp:         3
>>                method:         (BlockClosure>>#on:do: "a 
>> CompiledMethod(137625600)")
>>                closureOrNil:   nil
>>                receiver:       [[[self announceNextCommand]
>>                on: ConnectionTimedOut
>>                do: [:t1 | ni...etc...
>>
>>
>> MethodContext(ContextPart)>>handleSignal:
>>        Receiver: BlockClosure>>on:do:
>>        Arguments and temporary variables:
>> <<error during printing>
>>        Receiver's instance variables:
>>                sender:         [[[self announceNextCommand]
>>                on: ConnectionTimedOut
>>                do: [:t1 | nil]...etc...
>>                pc:     17
>>                stackp:         3
>>                method:         (BlockClosure>>#on:do: "a 
>> CompiledMethod(137625600)")
>>                closureOrNil:   nil
>>                receiver:       [self announceNextCommand]
>>
>>
>> Error(Exception)>>signal
>>        Receiver: <<error during printing>>
>>        Arguments and temporary variables:
>>
>>        Receiver's instance variables:
>>                messageText:    PrimitiveFailed: primitive
>> #primSocketReceiveDataAvailable: in a S...etc...
>>                tag:    nil
>>                signaler:       a CoreMQStompConnection connectResponse: 
>> CONNECTED
>> session: ID:John-T...etc...
>>                signalContext:  Error(Exception)>>signal
>>                handlerContext:         nil
>>                outerContext:   nil
>>
>>
>> Error(Exception)>>signal:
>>        Receiver: <<error during printing>>
>>        Arguments and temporary variables:
>>                t1:     PrimitiveFailed: primitive 
>> #primSocketReceiveDataAvailable: in
>> a Socket[inv...etc...
>>        Receiver's instance variables:
>>                messageText:    PrimitiveFailed: primitive
>> #primSocketReceiveDataAvailable: in a S...etc...
>>                tag:    nil
>>                signaler:       a CoreMQStompConnection connectResponse: 
>> CONNECTED
>> session: ID:John-T...etc...
>>                signalContext:  Error(Exception)>>signal
>>                handlerContext:         nil
>>                outerContext:   nil
>>
>>
>> CoreMQStompConnection(Object)>>error:
>>        Receiver: a CoreMQStompConnection connectResponse: CONNECTED
>> session: ID:John-Tooheys-MacBook-Pro.lo...etc...
>>        Arguments and temporary variables:
>>                t1:     PrimitiveFailed: primitive 
>> #primSocketReceiveDataAvailable: in
>> a Socket[inv...etc...
>>        Receiver's instance variables:
>>                stream:         SocketStream[inbuf:4kb/outbuf:4kb]
>>                connectResponse:        CONNECTED
>> session: ID:John-Tooheys-MacBook-Pro.local-56368-131...etc...
>>                subscriptions:  an 
>> OrderedCollection('/topic/parspro-core.juliet-core-events')
>>                commandDestination:     
>> '/topic/parspro-core.juliet-core-events'
>>                process:        a Process in nil
>>                logger:         a JulietLogger
>>
>>
>> [:t1 |
>> self logger error: 'Error in startAnnouncing e --> ' , t1 greaseString.
>>        self error: t1.
>>        t1 return] in [[[[self announceNextCommand]
>>                on: ConnectionTimedOut
>>                do: [:t1 | nil]] repeat.
>>        nil]
>>                on: Error
>>                do: [:t1 |
>>                        self logger error: 'Error in startAnnouncing e --> ' 
>> , t1 greaseString.
>>                        self error: t1.
>>                        t1 return]] in CoreMQStompConnection>>startAnnouncing
>>        Receiver: a CoreMQStompConnection connectResponse: CONNECTED
>> session: ID:John-Tooheys-MacBook-Pro.lo...etc...
>>        Arguments and temporary variables:
>>                t1:     PrimitiveFailed: primitive 
>> #primSocketReceiveDataAvailable: in
>> a Socket[inv...etc...
>>        Receiver's instance variables:
>>                stream:         SocketStream[inbuf:4kb/outbuf:4kb]
>>                connectResponse:        CONNECTED
>> session: ID:John-Tooheys-MacBook-Pro.local-56368-131...etc...
>>                subscriptions:  an 
>> OrderedCollection('/topic/parspro-core.juliet-core-events')
>>                commandDestination:     
>> '/topic/parspro-core.juliet-core-events'
>>                process:        a Process in nil
>>                logger:         a JulietLogger
>>
>>
>> BlockClosure>>cull:
>>        Receiver: [:t1 |
>> self logger error: 'Error in startAnnouncing e --> ' , t1 greaseString.
>>        self erro...etc...
>>        Arguments and temporary variables:
>>                t1:     PrimitiveFailed: primitive 
>> #primSocketReceiveDataAvailable: in
>> a Socket[inv...etc...
>>        Receiver's instance variables:
>>                outerContext:   [[[[self announceNextCommand]
>>                on: ConnectionTimedOut
>>                do: [:t1...etc...
>>                startpc:        118
>>                numArgs:        1
>>
>>
>> [(self tempAt: 2)
>>                cull: t1] in MethodContext(ContextPart)>>handleSignal:
>>        Receiver: BlockClosure>>on:do:
>>        Arguments and temporary variables:
>>                t1:     PrimitiveFailed: primitive 
>> #primSocketReceiveDataAvailable: in
>> a Socket[inv...etc...
>>        Receiver's instance variables:
>>                sender:         [[[[self announceNextCommand]
>>                on: ConnectionTimedOut
>>                do: [:t1 | nil...etc...
>>                pc:     17
>>                stackp:         3
>>                method:         (BlockClosure>>#on:do: "a 
>> CompiledMethod(137625600)")
>>                closureOrNil:   nil
>>                receiver:       [[[self announceNextCommand]
>>                on: ConnectionTimedOut
>>                do: [:t1 | ni...etc...
>>
>>
>> BlockClosure>>ensure:
>>        Receiver: [(self tempAt: 2)
>>                cull: t1]
>>        Arguments and temporary variables:
>>                aBlock:         [self tempAt: 3 put: true]
>>                complete:       nil
>>                returnValue:    nil
>>        Receiver's instance variables:
>>                outerContext:   MethodContext(ContextPart)>>handleSignal:
>>                startpc:        98
>>                numArgs:        0
>>
>>
>> MethodContext(ContextPart)>>handleSignal:
>>        Receiver: BlockClosure>>on:do:
>>        Arguments and temporary variables:
>>                t1:     PrimitiveFailed: primitive 
>> #primSocketReceiveDataAvailable: in
>> a Socket[inv...etc...
>>                t2:     nil
>>        Receiver's instance variables:
>>                sender:         [[[[self announceNextCommand]
>>                on: ConnectionTimedOut
>>                do: [:t1 | nil...etc...
>>                pc:     17
>>                stackp:         3
>>                method:         (BlockClosure>>#on:do: "a 
>> CompiledMethod(137625600)")
>>                closureOrNil:   nil
>>                receiver:       [[[self announceNextCommand]
>>                on: ConnectionTimedOut
>>                do: [:t1 | ni...etc...
>>
>>
>> MethodContext(ContextPart)>>handleSignal:
>>        Receiver: BlockClosure>>on:do:
>>        Arguments and temporary variables:
>>                t1:     PrimitiveFailed: primitive 
>> #primSocketReceiveDataAvailable: in
>> a Socket[inv...etc...
>>                t2:     nil
>>        Receiver's instance variables:
>>                sender:         [[[self announceNextCommand]
>>                on: ConnectionTimedOut
>>                do: [:t1 | nil]...etc...
>>                pc:     17
>>                stackp:         3
>>                method:         (BlockClosure>>#on:do: "a 
>> CompiledMethod(137625600)")
>>                closureOrNil:   nil
>>                receiver:       [self announceNextCommand]
>>
>>
>> PrimitiveFailed(Exception)>>signal
>>        Receiver: PrimitiveFailed: primitive #primSocketReceiveDataAvailable:
>> in a Socket[invalidSocketHandl...etc...
>>        Arguments and temporary variables:
>>
>>        Receiver's instance variables:
>>                messageText:    'primitive #primSocketReceiveDataAvailable: 
>> in a
>> Socket[invalidSoc...etc...
>>                tag:    nil
>>                signaler:       a Socket[invalidSocketHandle]
>>                signalContext:  PrimitiveFailed(Exception)>>signal
>>                handlerContext:         BlockClosure>>on:do:
>>                outerContext:   nil
>>                selector:       #primSocketReceiveDataAvailable:
>>
>>
>> PrimitiveFailed class(SelectorException class)>>signalFor:
>>        Receiver: PrimitiveFailed
>>        Arguments and temporary variables:
>>                t1:     #primSocketReceiveDataAvailable:
>>        Receiver's instance variables:
>>                superclass:     SelectorException
>>                methodDict:     a
>> MethodDictionary(#standardMessageText->(PrimitiveFailed>>#standar...etc...
>>                format:         144
>>                instanceVariables:      nil
>>                organization:   ('printing' standardMessageText)
>>
>>                subclasses:     nil
>>                name:   #PrimitiveFailed
>>                classPool:      nil
>>                sharedPools:    nil
>>                environment:    a SystemDictionary(lots of globals)
>>                category:       #'Kernel-Exceptions'
>>                traitComposition:       {}
>>                localSelectors:         nil
>>
>>
>> Socket(Object)>>primitiveFailed:
>>        Receiver: a Socket[invalidSocketHandle]
>>        Arguments and temporary variables:
>>                t1:     #primSocketReceiveDataAvailable:
>>        Receiver's instance variables:
>>                semaphore:      a Semaphore()
>>                socketHandle:   #[162 57 106 78 0 0 0 0 128 42 86 0]
>>                readSemaphore:  a Semaphore()
>>                writeSemaphore:         a Semaphore()
>>
>>
>> Socket(Object)>>primitiveFailed
>>        Receiver: a Socket[invalidSocketHandle]
>>        Arguments and temporary variables:
>>
>>        Receiver's instance variables:
>>                semaphore:      a Semaphore()
>>                socketHandle:   #[162 57 106 78 0 0 0 0 128 42 86 0]
>>                readSemaphore:  a Semaphore()
>>                writeSemaphore:         a Semaphore()
>>
>>
>> Socket>>primSocketReceiveDataAvailable:
>>        Receiver: a Socket[invalidSocketHandle]
>>        Arguments and temporary variables:
>>                t1:     #[162 57 106 78 0 0 0 0 128 42 86 0]
>>        Receiver's instance variables:
>>                semaphore:      a Semaphore()
>>                socketHandle:   #[162 57 106 78 0 0 0 0 128 42 86 0]
>>                readSemaphore:  a Semaphore()
>>                writeSemaphore:         a Semaphore()
>>
>>
>> Socket>>waitForDataFor:ifClosed:ifTimedOut:
>>        Receiver: a Socket[invalidSocketHandle]
>>        Arguments and temporary variables:
>>                t1:     45
>>                t2:     [ConnectionClosed signal: 'Connection closed while 
>> waiting for data.']
>>                t3:     [ConnectionTimedOut signal: 'Data receive timed out.']
>>                t4:     2210099
>>                t5:     45000
>>        Receiver's instance variables:
>>                semaphore:      a Semaphore()
>>                socketHandle:   #[162 57 106 78 0 0 0 0 128 42 86 0]
>>                readSemaphore:  a Semaphore()
>>                writeSemaphore:         a Semaphore()
>>
>>
>> Socket>>waitForDataFor:
>>        Receiver: a Socket[invalidSocketHandle]
>>        Arguments and temporary variables:
>>                t1:     45
>>        Receiver's instance variables:
>>                semaphore:      a Semaphore()
>>                socketHandle:   #[162 57 106 78 0 0 0 0 128 42 86 0]
>>                readSemaphore:  a Semaphore()
>>                writeSemaphore:         a Semaphore()
>>
>>
>> Socket>>receiveDataSignallingTimeout:into:startingAt:
>>        Receiver: a Socket[invalidSocketHandle]
>>        Arguments and temporary variables:
>>                t1:     45
>>                t2:     'CONNECTED
>> session:ID:John-Tooheys-MacBook-Pro.local-56368-1315585750288-4:...etc...
>>                t3:     796
>>        Receiver's instance variables:
>>                semaphore:      a Semaphore()
>>                socketHandle:   #[162 57 106 78 0 0 0 0 128 42 86 0]
>>                readSemaphore:  a Semaphore()
>>                writeSemaphore:         a Semaphore()
>>
>>
>> SocketStream>>receiveData
>>        Receiver: SocketStream[inbuf:4kb/outbuf:4kb]
>>        Arguments and temporary variables:
>>
>>        Receiver's instance variables:
>>                recentlyRead:   716
>>                socket:         a Socket[invalidSocketHandle]
>>                inBuffer:       'CONNECTED
>> session:ID:John-Tooheys-MacBook-Pro.local-56368-1315585750...etc...
>>                outBuffer:      'SUBSCRIBE
>> destination: /topic/parspro-core.juliet-core-events
>>
>>
>>
>> On Thu, Sep 8, 2011 at 10:05, Marcus Denker <[email protected]> wrote:
>>>
>>> On Sep 8, 2011, at 3:59 PM, John Toohey wrote:
>>>
>>>> Hi,
>>>> Is there a 1.3 OneClick build available with the Cog VM, or should I
>>>> just down load the linux and OSX Cog builds from the Jenkins server?
>>>
>>> The script on the hudson is old... we need to update it. And move everything
>>> from hudson to jenkins. And, and...
>>>
>>> So for now:
>>>
>>>        https://gforge.inria.fr/frs/download.php/28922/Pharo-1.3-OneClick.zip
>>>
>>> hand-build one-click with Cog as build from 
>>> https://ci.lille.inria.fr/pharo/view/Cog/
>>>
>>>> often run into problems with having different VMs/Plugin on different
>>>> servers, and like the idea of having both Liux and OSX supported in
>>>> one package, where I can just update the image.
>>>
>>>
>>>
>>>
>>>
>>> --
>>> Marcus Denker -- http://marcusdenker.de
>>>
>>>
>>>
>>
>>
>>
>> --
>> ~JT
>>
>>
>
>
>
> --
> Best regards,
> Igor Stasenko AKA sig.
>



-- 
~JT

Reply via email to