[Zope] Re: [Zope-ZEO] Zope 2.2.4 ZEO 0.4.1 (latest
anyway)doesn'twant to add Products
Shane Hathaway
shane@digicool.com
Thu, 07 Dec 2000 11:05:52 -0500
Bill Anderson wrote:
>
> Shane Hathaway wrote:
> >
> > On Tue, 5 Dec 2000, Bill Anderson wrote:
> > > So, what would you suggest for the following scenario?
> > >
> > > o Site distirbuted via ZEO
> > > o Using SiteAccess2 for virtual hosting sites under
> > > /vhosts/thissite /vhosts/thatsite
> > > o each site is actually it's own full Data.fs
> > >
> > > Under non-zeo, it's simple, use a mounted filestorage, and it works
> > > quite well. Unfortunately, it doesn't work under zeo, for obvious
> > > reasons. If I had time, I'd do a mountedZEOstorage, but time is too much
> > > a precious commodity for the next few weeks/months. :/
> >
> > What do you mean it doesn't work under ZEO? Set it up just like zope.org.
>
> Simple: I have a site running on it's own right now. It is based right
> of of the root of the data.fs, not under a folder (like a wiki is). If I
> try the externalmount you tarred up for us (thank you, btw), it insist
> on having a path inside said data.fs. If I give it a folder in said
> data.fs it works for that folder, as expected.
MountedFileStorage lets you mount the root of the database through a
very "iffy" scheme that I don't think could be made reliable. I'm sure
there's a right way to do it, but I think for now your best option is to
create a folder in the database you intend to mount, then move all
content into that folder. That's how Wikis.fs is mounted.
> > Either create two storage servers or one that provides access to both
> > FileStorages. Then write an external method for each storage, each of
> > which creates a ClientStorage and wraps a DB around it.
>
> How do I do this part? I made one for FileStorage (the example given),
> which works fine. Substituting ClientStorage for FileStorage didn;t
> work. ;)
Here's our external method:
------- 8-< ---------
# Define the Wiki database mounted database
import ZServer, ZODB, ZEO.ClientStorage
def wikidb():
Storage=ZEO.ClientStorage.ClientStorage(
('10.0.11.1',2222),
cache_size=50*1000*1000,
max_disconnect_poll=40,
min_disconnect_poll=1,
storage='Wikis',
)
return ZODB.DB(Storage)
------- 8-< ---------
> ...mebbe I've just been too deep in scsi code lately to think properly
> ... ugh.
Been hacking kernels lately? There's no hacking like kernel hacking.
Bare metal. Oh yeah. :-)
Shane