This is my code :-
startAnnouncing
process notNil ifTrue: [ ^ self ].
process := [
[ [ [ self announceNextCommand ]
on: ConnectionTimedOut
do: [ :e | ] ] repeat ]
on: Error
do: [ :e | self logger error: 'Error in
startAnnouncing e --> ', e
greaseString.
self error: e.
e return
].
] forkAt: Processor highIOPriority named: 'Juliet Stomp
Announcer'
How can I make this safer, or make it in such a way that the image
doesn't crash?
Also is the image destroyed now? Is there a way to start it and bypass
this code? Thanks for looking into this.
On Fri, Sep 9, 2011 at 14:55, Igor Stasenko <[email protected]> wrote:
> On 9 September 2011 20:43, John Toohey <[email protected]> wrote:
>> 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?
>>
>
> an error caused by a primitive failure with invalid socket:
>
> 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
>
>
> looks like your image was saved with socket being open and upon
> restart it tries to read data from it.
> This , of course , causing failure and leads to error signaled.
>
> If you want to track down the error, there is an option in system settings:
> 'Make a snapshot of new version before quit
> On unhandled exception, save a new version of image before quit'
> in 'Headless mode' group.
>
>> 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
>>
>
>
>
> --
> Best regards,
> Igor Stasenko AKA sig.
>
--
~JT