Again Magma and 3.9

Chris Muller chris at funkyobjects.org
Tue Jan 16 05:07:00 UTC 2007


> A TSTree is a tree structure for GOODS, which allows a bag of objects
> to be
> loaded from the database one at a time. They can be accessed via a
> string.
> However, as we only want to have a collection of objects index with a
> string (possibly having no problems with concurrency), we chose the
> MagmaCollection.

Ah, ok.  Yes, a MagmaCollection permits concurrent adds and removes.

> > You could also runLocalBaseline: as it would not be appreciably
> slower
> > with regard to adding to MagmaCollections than the
> runRemoteBaseline.
> Yes, this one works. Our insert seems to be that slow, because we use
> a
> string index (MaSearchStringIndex). It took 15 Minutes for our 14,000
> objects. We already sent the message tally for the first 1000 ones.

Wow, 15 minutes?!  Depending on what the issue is (hard to know without
script and MessageTally) it may be 

> Got this one. We had a link to the database session somewhere in our
> data structure. Obviously, without trying to serialize this one, too,
> it
> works...

Ok, you are not the first to try this.  So I have made an enhancement
where any reference to a MagmaSession will resolve, upon
materialization, to whatever session is doing the materialization. 
It'll be regarded as an "immutable" object in terms of
change-detection, and all references to any MagmaSession will reconcile
to the same oid (per repository).

I'll test and include this fix with the next release which will
(hopefully) also include these asynchronous index updates.

 - Chris


More information about the Magma mailing list