You are not logged in Log in Join
You are here: Home » Members » jim » ZODB » MountTab » wikipage_view

Log in


FrontPage » MountedDatabases »


I'd very much like to see a page in the Control Panel that lists what ZODB mounts are in the current Zope instance. It seems to me that the ability to mix and match various backend storages will be incredibly powerful - imagine a storage that is actually implemented as xmlrpc calls to a different Zope. But there's a couple of issues...

Lack of mountpoint data

In ZODB.Mount.dbs, there's a dictionary of the mounted databases in the system, and each of these contain a dictionary of mountpoint_ids. Unfortunately, there doesn't seem to be a way to get from ZODB.Mount.dbs to the actual mountpoints in the system. This is going to be needed for any sane management of the interface.

Listing the root ZODB

For completeness, it would be nice to list the default (root) ZODB and where it came from in the MountTab. This is currently going to have to be handled seperately - should it make entries into the Mount.dbs dictionary?


ZODB.Mount.dbs is a bad place from which to get a list of the registry of databases. dbs is created on the fly; if nobody ever traverses a given mount point during the life of the Zope process then it will never be found in dbs.

If we're going to create a mount point registry, it needs to commit that data to the root ZODB. We could create an object that can be found through the Application object (the root folder).

Although it seems more logical to make the root ZODB into just another mount point, I don't think we should attempt that right now. We would have to mess with too many things that aren't broken.