[Zope] Re: Questions about demostorage

Tres Seaver tseaver at palladion.com
Fri Dec 15 10:07:02 EST 2006


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Duncan Booth wrote:
> Can someone explain to me what is and is not safe to do with demostorage?
> 
> Say I have a zope setup involving a zeo server and clients, and I create 
> another zope instance with <demostorage> wrapped around both <zeoclient> 
> mounts (the catalogs are mounted separately from the rest of the content).
> The main zope setup remains active while I'm using the demostorage setup, 
> so content will be added/edited or deleted in the zeo zodb.
> 
> A bit of experimenting seems to indicate if I edit an object in the main 
> system, the demostorage version picks up the changes until such time as I 
> edit the same object in the demostorage instance. (So in other words, the 
> connection from the demostorage front-end to the zeo-client isn't frozen at 
> the point when the storage is opened which might have been a plausible 
> alternative).

THat is correct.  DemoStorage itself won't write to the "backing" layer,
but other clients (your main appservers, for instance) might.  If you
want to "freeze" the backing layer, then you need to use the 'stop'
parameter when creating the FileStorage.  Unfortunately, it doesn't seem
to be exposed at the ZConfig level.  More unfortunately for your case,
it is not available at all for ZEO.ClientStorage.

> What I'm a little worried about is the catalog. I'd guess that there is no 
> guarantee that the demostorage instance gets a catalog which is consistent 
> with the rest of the data (so I could easily get site errors in the 
> demostorage instance), but there should be no danger that any changes I 
> make can affect the live site and restarting the demo instance would get it 
> back into a consistent state, at least for a while. Is that a reasonable 
> interpretation?

If both storages are wrapped as DemoStorages, yes.

> What I'm hoping to achieve is a way of testing upgrades on our live system 
> in an environment as close as possible to the real live environment, but 
> without actually affecting the live system in any way. Demostorage seems to 
> offer that as an option.

I would just bite the bullet and use repozo to replicate your database
to the "dev" system.



Tres.
- --
===================================================================
Tres Seaver          +1 540-429-0999          tseaver at palladion.com
Palladion Software   "Excellence by Design"    http://palladion.com
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.2.2 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iD8DBQFFgroV+gerLs4ltQ4RAj+TAJ0SrqNuehRvQoNH7tEPDdqY54LDowCffVgx
ormTTUilfWeGDY42tlktFKo=
=F87X
-----END PGP SIGNATURE-----



More information about the Zope mailing list