[ZODB-Dev] Gadfly with ZEO clients - anyone trying this?

Ken Wasetis kwasetis at sprinc.com
Wed Feb 25 12:45:22 EST 2004


Hi,
I've built a prototype using Gadfly as storage for some contest data 
acquired via Formulator forms via ZPT.  I developed this on a test 
server running a ZEO client and ZEO server.  Everything works fine with 
just one ZEO client.

The problems comes when I try to run multiple ZEO clients (which my 
production environment has), due to the fact that when we add a 
ZGadflyDA connection, it creates its storage files within 
$CLIENT_HOME/var/mydatabase.

Since it creates the database within the filesystem of a ZEO client 
(client home) rather than the /var folder on the ZEO server, in 
production, where the ZEO server is on a different machine than the 
multiple ZEO clients (on multiple different servers), only the ZEO 
client where the Gadfly database is stored can connect to it and execute 
queries.

Has anyone modified the Gadfly DA.py or db.py files to specify a remote 
storage (ZEO Server) location/var rather than the location zeo client 
/var folder for storing Gadfly databases?  Or possibly modified 
App.config to add a SERVER_HOME or modified one of the other _HOME 
environment variables?

I'm sort of surprised that I couldn't find any information on people 
using Gadfly in a ZEO client/server (specifically, with multiple 
machines) situation.  If you know of a reference, please help me out.

If I were to continue to use Gadfly, the most likely scenario would 
involve me creating a ZEO Client instance on the machine running the ZEO 
Server/ZODB and this instance would have the Gadfly connection defined. 
  Then, I'd somehow use ODBC to connect to that database from all the 
ZEO Clients on the other machines.

If I must go through the process of hacking to create a centralized 
Gadfly, I will look more strongly at using MySQL or some other database 
as the centralized database, I think.

Any help is appreciated,

-Ken





More information about the ZODB-Dev mailing list