Unable to realize Orphaned MagmaMutatingProxy

Chris Muller asqueaker at gmail.com
Sat Nov 29 02:12:25 UTC 2008


Hi Phil, you should not see that message under normal circumstances.

It is produced when there is a problem materializing a proxy, but
because it is difficult to debug proxies in the debugger, Magma
becomes the proxy to the String:

  'Unable to realize Orphaned MagmaMutatingProxy'

which mostly likely quickly results in an application problem.

The key is to find out what is in the "err" variable in
MaMutatingProxy>>#doesNotUnderstand:.

Change that method to:

doesNotUnderstand: aMessage
	"Trying this retry approach to satisfy the case where a Symbol is
materialized and immediately used as the argument to perform:.  I
discovered this was happening on Morphic objects but I had to set
their read depth to 99999 anyway."
	| didRetry receiver |
	didRetry _ false.
	receiver _
	[ self maIsMutatingProxy
		ifTrue: [ self mutant ]
		ifFalse: [ self ] ]
		on: MessageNotUnderstood
		do:
			[ : err |
			didRetry
				ifFalse:
					[ didRetry _ true.
X add: err->thisContext longStack.
					err retry ]
				ifTrue:
					[ self
						becomeForward: 'Unable to realize Orphaned MagmaMutatingProxy'
						copyHash: false ] ].
	^ receiver
		perform: aMessage selector
		withArguments: aMessage arguments

Set X to a new OrderedCollection.

  X := OrderedCollection new

and tell SQueak to make it a global.

Then reproduce the error and look at the contents of X.

If you can't figure out the problem from there, paste it here so we
can all take a guess.

 - Chris


On Thu, Nov 27, 2008 at 8:17 AM, Göran Krampe <goran at krampe.se> wrote:
> Hi!
>
> Phil at Work wrote:
>>
>> Hi All,
>>
>> I occasionally get this message:
>>
>> Unable to realize Orphaned MagmaMutatingProxy
>>
>> What causes this? I believe i'm referring to a legitimate committed
>> object.
>>
>> Thanks,
>>
>> Phil
>
> Seen it too from time to time. IIRC it is a proxy that actually belongs to
> another session, right? "orphaned" implies a session that does not exist
> anymore I think.
>
> Which would imply that we have messed up somewhere. :)
>
> regards, Göran
>
> _______________________________________________
> Magma mailing list
> Magma at lists.squeakfoundation.org
> http://lists.squeakfoundation.org/mailman/listinfo/magma
>


More information about the Magma mailing list