Updating a 'live' environment

Amir Ansari fractallyte at csi.com
Wed Nov 17 19:55:20 UTC 2010


Thanks, that's exactly what I was looking for!  I'm not in that situation, but it's good to know that solutions exist.

Amir


On Wed, 17 Nov 2010 09:48:06 -0600
Chris Muller <asqueaker at gmail.com> wrote:

> Hi Amir, for inst-vars of a class persisted in Magma, it just works
> like standard Smalltalk, please see:
> 
>   http://wiki.squeak.org/squeak/5602
> 
> Indexes on MagmaCollections may be removed with the #removeIndex
> message (within a commit, of course).
> 
> Does this answer your question?
> 
> If, by "live" you mean a production environment, then you will want to
> practice first on a production copy (you may use #fullBackup to make a
> copy of production while it is live without disruption of service).
> Adding new indexes to a large collection can take some time, of
> course, and the collection cannot be updated while that takes place,
> so you may want to build an entirely new MagmaCollection "off to the
> side" (but still in the same db) so that, once built, you can "switch
> over" to it in a single commit by simply replacing your pointer to the
> old with the new..  However, that would require that you keep track of
> any updates that came in to the collection being replaced *during* the
> index rebuild...
> 
>  - Chris


More information about the Magma mailing list