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.

Reply via email to