Hi Hernán, yes, this is a known problem. I believe all that needs to be done is commit a Node object to the RepositoryDefinition:
session := MagmaSession openLocal: '/a/backup/of/your/repository'. session connectAs: 'upgrader'. session commit: [ session magmaId node: MagmaNode new ] session disconnectAndClose
And now you should be able to open a console on it..
- Chris
On Mon, Apr 6, 2009 at 1:19 AM, Hernán Morales Durand hernan.morales@gmail.com wrote:
Hello, I'm updating to release 42 beta 3 but after trying to connect with this script I get a DNU.
| path | path := String streamContents: [: s | s nextPutAll: FileDirectory default pathName; nextPutAll: FileDirectory slash; nextPutAll: 'Magma' ]. MagmaServerConsole new open: path; processOn: 51969.
It worked fine with a previous release. I don't know what is that pervious release number because I didn't found a way to get the release version from Magma, I suppose my previous release is r42b1 or r41b3....
this is the bug report, any hint would be appreciated.
7 April 2009 3:09:56 am VM: Win32 - a SmalltalkImage Image: Squeak3.10.2 [latest update: #7179]
SecurityManager state: Restricted: false FileAccess: true SocketAccess: true
UndefinedObject(Object)>>doesNotUnderstand: #secondaryLocationsDo: Receiver: nil Arguments and temporary variables: aMessage: secondaryLocationsDo: [] in MagmaServerConsole>>checkIfAmPrimaryOvert...etc... Receiver's instance variables: nil
MagmaServerConsole>>checkIfAmPrimaryOvertaken: Receiver: a MagmaServerConsole Arguments and temporary variables: portInteger: 51969 thisLocation: 52246990800e4fa:51969 each: nil sess: nil err: nil Receiver's instance variables: statistics: a MagmaServerStatistics lastRequestStart: nil lastRequestFinish: nil server: a MaNetworkRequestServer controller: a MagmaRepositoryController
[] in MagmaServerConsole>>preIgnitionSequence: {[self checkIfAmPrimaryOvertaken: portInteger]} Arguments and temporary variables: portInteger: 51969 nodeUpdates: an OrderedCollection() update: nil each: nil
BlockContext>>on:do: Receiver: [] in MagmaServerConsole>>preIgnitionSequence: {[self checkIfAmPrimaryOvertaken: portInteg...etc... Arguments and temporary variables: exception: MagmaNodeUpdate handlerAction: [] in MagmaServerConsole>>preIgnitionSequence: {[:update | node...etc... handlerActive: true Receiver's instance variables: sender: BlockContext>>on:do: pc: 80 stackp: 0 nargs: 0 startpc: 77 home: MagmaServerConsole>>preIgnitionSequence:
--- The full stack --- UndefinedObject(Object)>>doesNotUnderstand: #secondaryLocationsDo: MagmaServerConsole>>checkIfAmPrimaryOvertaken: [] in MagmaServerConsole>>preIgnitionSequence: {[self checkIfAmPrimaryOvertaken: portInteger]} BlockContext>>on:do: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - MagmaServerConsole>>preIgnitionSequence: MagmaServerConsole>>noteAboutToStart MaNetworkRequestServer(MaServer)>>noteAboutToStart MaServerSocket>>listen MaServerSocket>>processOn: MaNetworkRequestServer>>processOn: MaNetworkRequestServer>>processOn:using: MagmaServerConsole>>processOn: UndefinedObject>>DoIt Compiler>>evaluate:in:to:notifying:ifFail:logged: [] in TextMorphEditor(ParagraphEditor)>>evaluateSelection {[rcvr class evaluatorClass new evaluate: self selectionAsStream in: ctxt...]} BlockContext>>on:do: TextMorphEditor(ParagraphEditor)>>evaluateSelection TextMorphEditor(ParagraphEditor)>>inspectIt TextMorphEditor>>inspectIt: TextMorphEditor(ParagraphEditor)>>dispatchOnCharacter:with: TextMorphEditor>>dispatchOnCharacter:with: TextMorphEditor(ParagraphEditor)>>readKeyboard TextMorphEditor>>readKeyboard [] in TextMorphForEditView(TextMorph)>>keyStroke: {[editor readKeyboard]} TextMorphForEditView(TextMorph)>>handleInteraction:fromEvent: TextMorphForEditView>>handleInteraction:fromEvent: TextMorphForEditView(TextMorph)>>keyStroke: TextMorphForEditView>>keyStroke: TextMorphForEditView(TextMorph)>>handleKeystroke: KeyboardEvent>>sentTo: TextMorphForEditView(Morph)>>handleEvent: TextMorphForEditView(Morph)>>handleFocusEvent: [] in HandMorph>>sendFocusEvent:to:clear: {[ActiveHand := self. ActiveEvent := anEvent. result := focusHolder han...]} [] in PasteUpMorph>>becomeActiveDuring: {[aBlock value]} BlockContext>>on:do: PasteUpMorph>>becomeActiveDuring: HandMorph>>sendFocusEvent:to:clear: HandMorph>>sendEvent:focus:clear: HandMorph>>sendKeyboardEvent: HandMorph>>handleEvent: HandMorph>>processEvents [] in WorldState>>doOneCycleNowFor: {[:h | ActiveHand := h. h processEvents. capturingGesture := capturingGest...]} Array(SequenceableCollection)>>do: WorldState>>handsDo: WorldState>>doOneCycleNowFor: WorldState>>doOneCycleFor: PasteUpMorph>>doOneCycle [] in Project class>>spawnNewProcess {[[World doOneCycle. Processor yield. false] whileFalse. nil]} [] in BlockContext>>newProcess {[self value. Processor terminateActive]} _______________________________________________ Magma mailing list Magma@lists.squeakfoundation.org http://lists.squeakfoundation.org/mailman/listinfo/magma