[BUG]UndefinedObject(Object)>>doesNotUnderstand:
#secondaryLocationsDo:
Hernán Morales Durand
hernan.morales at gmail.com
Tue Apr 7 19:50:55 UTC 2009
Hi Chris, I think some additional configuration is missing. I did the
backup this way:
currentDir := MagmaLocalLocation path: 'C:\Squeak3.9\Magma'.
backupDir := FileDirectory on: 'C:\Squeak3.9\MagmaBackup'.
rc := MagmaRepositoryController
open: currentDir.
rc fullBackupTo: backupDir.
and then ran your script but returned an exception:
MagmaUserError: Transactions are prohibited because this repository is
in restore mode.
I'd like to test the latest magma improvements here. Any idea what's wrong?.
Below is the log:
MagmaSession>>signalExceptionLike:
Receiver: a MagmaSession C:\Squeak3.9\MagmaBackup
Arguments and temporary variables:
anException: MagmaUserError: Transactions are prohibited because
this repositor...etc...
signalableError: MagmaUserError: Transactions are prohibited
because this repos...etc...
Receiver's instance variables:
id: an UUID('9d6356ac-a46a-f741-a1cb-bf964365633a')
user: a MagmaUser
id = upgrader
serializer: a MaObjectSerializer
transaction: a MaTransaction
readStrategy: nil
definition: a MagmaRepositoryDefinition
preferences: a MagmaPreferences
anchor: nil
transactionLevel: 0
strongReferences: an OrderedCollection()
cache: a Dictionary()
guard: a Mutex
statistics: a MagmaSessionStatistics
primaryLink: a MaLocalServerLink
secondaryLink: a MaLocalServerLink
allowFailover: true
oidCount: 0
lastClean: 5568302
requiredProgress: 0
[] in MagmaSession>>submit:to: {[aMagmaRepositoryRequest
requiresConnection ifTrue: [self ensureConnected]...]}
Arguments and temporary variables:
aMagmaRepositoryRequest: a MaTransactionRequest
aMaServerLink: a MaLocalServerLink
didTry: false
link: a MaLocalServerLink
result: MagmaUserError: Transactions are prohibited because this
repository is ...etc...
err: nil
node: nil
[] in BlockContext>>maOn:do:on:do: {[self value]}
Arguments and temporary variables:
exc1: MagmaSessionLost
block1: [] in MagmaSession>>submit:to: {[:err | MagmaNotification
signal: 'Mag...etc...
exc2: NetworkError
block2: [] in MagmaSession>>submit:to: {[:err |
aMagmaRepositoryRequest isConn...etc...
BlockContext>>on:do:
Receiver: [] in BlockContext>>maOn:do:on:do: {[self value]}
Arguments and temporary variables:
exception: MagmaSessionLost
handlerAction: [] in MagmaSession>>submit:to: {[:err |
MagmaNotification signa...etc...
handlerActive: true
Receiver's instance variables:
sender: BlockContext>>on:do:
pc: 29
stackp: 0
nargs: 0
startpc: 27
home: BlockContext>>maOn:do:on:do:
2009/4/6 Chris Muller <asqueaker at gmail.com>:
> 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 at 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 at lists.squeakfoundation.org
>> http://lists.squeakfoundation.org/mailman/listinfo/magma
>>
>
More information about the Magma
mailing list