Magma counseling
Ramiro Diaz Trepat
ramiro at novamens.com
Fri Jul 2 03:46:18 UTC 2004
Hello... where is the usual crowd of this list?
I am attaching the "primitive failed" bug that I get, just in case it
rings a bell to anyone.
bye bye
r.
Ramiro Diaz Trepat wrote:
> Thank you very much guys.
> Marco, I know GOODS is an excellent oodb, it's been used in my company
> with great success (in a C++ comertial project).
> Since I am coding squeak mostly for fun, I wanted to try the *pure*
> squeak way, and hence I wanted to give Magma a fair chance. Besides,
> I have an "irrational" belief in it (by now at least), and respect for
> the impressive undertaking that Chris Müller faced. So before I give
> up on it, I want to test it more thoroughly and hear more oppinons of
> people using it, there must be more out there...
>
> So... another important question:
> Does Magma support bidirectional relations?
> I have a very simple situation where it all hangs. Is a very simple
> line, that commits a class which holds a collection of elements that
> also have a reference to the main class. Its so simple that I can't
> find any other explanation.
> Thanks again.
>
>
> r.
-------------- next part --------------
Error: a primitive has failed
2 July 2004 12:41:19 am
VM: Win32 - a SmalltalkImage
Image: Squeak3.7beta [latest update: #5967]
SecurityManager state:
Restricted: false
FileAccess: true
SocketAccess: true
Working Dir D:\Squeak\3.6
Trusted Dir D:\Squeak\3.6\Ramiro Diaz Trepat
Untrusted Dir C:\My Squeak\Ramiro Diaz Trepat
Array(Object)>>error:
Receiver: <<error during printing>>
Arguments and temporary variables:
aString: 'a primitive has failed'
Receiver's instance variables:
<<error during printing>>
Array(Object)>>primitiveFailed
Receiver: <<error during printing>>
Arguments and temporary variables:
Receiver's instance variables:
<<error during printing>>
Array>>elementsForwardIdentityTo:copyHash:
Receiver: <<error during printing>>
Arguments and temporary variables:
otherArray: #(an OrderedCollection(2066649))
copyHash: false
Receiver's instance variables:
<<error during printing>>
MaOdbmsProxy(MaMutatingProxy)>>becomeForward:copyHash:
Receiver: <<error during printing>>
Arguments and temporary variables:
otherObject: an OrderedCollection(2066649)
copyHash: false
Receiver's instance variables:
<<error during printing>>
--- The full stack ---
Array(Object)>>error:
Array(Object)>>primitiveFailed
Array>>elementsForwardIdentityTo:copyHash:
MaOdbmsProxy(MaMutatingProxy)>>becomeForward:copyHash:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
MaObjectSerializer>>newSkeletonFor:fromProxy:
[] in MaObjectSerializer>>materializeGraphDo: {[:foundObj | foundObj maIsBufferedObjectProxy ifTrue: [skeletons add:...]}
[] in MagmaOidManager>>objectWithOid:ifFound:ifAbsent: {[:obj | obj ifNil: [aBlock value] ifNotNil: [oneArgBlock value: obj]]}
MaWeakValueDictionary(MaDictionary)>>maAt:ifPresent:ifAbsent:
[] in MagmaOidManager>>objectWithOid:ifFound:ifAbsent: {[(MaOidCalculator isOidForNewObject: anInteger) ifTrue: [newObjects ma...]}
MaOidCalculator class>>objectWithOid:ifNone:
MagmaOidManager>>objectWithOid:ifFound:ifAbsent:
MaObjectSerializer>>objectWithOid:ifFound:ifAbsent:
[] in MaObjectSerializer>>materializeGraphDo: {[:each | object := self objectWithOid: each oid ifFound: [:foundObj...]}
[] in MaSerializedGraphBuffer>>buffersDo: {[:eachPosition | buffer := preMadeBuffers at: (self bufferTypeAt: eachP...]}
MaSerializedGraphBuffer>>bufferPositionsDo:
MaSerializedGraphBuffer>>buffersDo:
MaObjectSerializer>>materializeGraphDo:
MaObjectSerializer>>materializeGraph:do:
MagmaSession>>materializeObject:
MagmaSession>>realObjectFor:
MaOdbmsProxy>>mutant
MaOdbmsProxy(MaMutatingProxy)>>mutateAndSend:
MaOdbmsProxy(MaMutatingProxy)>>doesNotUnderstand: #size
[] in MagmaClassIdManager>>materializeAllClassDefinitions {[:each | each size]}
[] in Dictionary>>do: {[:assoc | aBlock value: assoc value]}
Dictionary(Set)>>do:
Dictionary>>do:
MagmaClassIdManager>>materializeAllClassDefinitions
MaObjectSerializer>>materializeAllClassDefinitions
MagmaSession>>refreshViewUsing:
MagmaSession>>refresh
MagmaSession>>abort
MagmaRepositoryController>>refreshView
MaObjectRepository>>submitAll:for:beginAnother:
MagmaRepositoryController>>submitAll:for:beginAnother:
MaWriteRequest>>process
[] in MagmaRepositoryController>>processRequest: {[aMaRepositoryRequest process]}
[] in Semaphore>>critical: {[blockValue := mutuallyExcludedBlock value]}
BlockContext>>ensure:
Semaphore>>critical:
MagmaRepositoryController>>requestCritical:
[] in MagmaRepositoryController>>processRequest: {[aMaRepositoryRequest sessionId = self sessionId ifTrue: [aMaRepositoryReq...]}
BlockContext>>on:do:
MagmaRepositoryController>>processRequest:
[] in MagmaSession class>>repositoryController: {[:eachRequest | aMaRepositoryController processRequest: eachRequest]}
[] in MaLocalRequestServer(MaRequestServer)>>processRequest: {[processBlock value: aMaServerRequest]}
BlockContext>>on:do:
MaLocalRequestServer(MaRequestServer)>>processRequest:
MaLocalServerLink>>submit:
MaRepositoryControllerFacade>>submit:
MaRepositoryControllerFacade>>submitAll:andBegin:
[] in MagmaSession>>commitAndBegin: {[anchor := nil. facade submitAll: commitPackage andBegin: aBoolean]}
BlockContext>>on:do:
MagmaSession>>commitAndBegin:
MagmaSession>>commit
[] in MagmaSession>>commit: {[result := aBlock value. self commit]}
BlockContext>>ensure:
MagmaSession>>commit:
...etc...
More information about the Squeak-dev
mailing list
|