Re: [Zope] Can multiple processes access a ZODB3 file?

2000-07-30 Thread Kapil Thangavelu


As Chris already stated (many times 4 effects:)

ZODB is process locked.

The question than becomes what kind of process interaction do you want
with the zodb. most everything can be done by having hooks into zope and
interacting with those hooks from your external python process. examples
are a cronned mail script that checks emails and sends them into zope,
an external document retrieval system that grabs new docs and sits them
on a file system or inserts into ZODB via hooks, a python zope product
that gives a corba interface to selected zope objects... basically
anything python can touch. if you're python process needs to be more
intimate with the zodb than it might require a bit more planning. what
were you trying to do?

generally for external interactions i use xml-rpc (if the data sets
aren't huge), but you could also script a monitor session.

Kapil

Ross Boylan wrote:
 
 If I have Zope running, using ZODB3 on Data.fs, can a separate
 process also use ZODB3 to access Data.fs?  I have my suspicions, but
 I'm not sure.
 
 I'm interested in this because I'm in the middle of a balloting
 period.  People email me their ballots.  I will need to check them
 for validity, send out confirmation or error messages, and eventually
 tally the results.
 
 I definitely want a persistent store, so ZODB seems good.  Also, I
 eventually would like this to be a Zope product, with people able to
 access the results on the web (and, in the future, vote on the web).
 But getting it Zoped may be too much work in the short run.
 
 So, I'll have a Zope server running on my Debian system, and another
 process will be going through the mail.  It would be more
 straightforwad if that other process worked directly with the
 database, rather than going through Zope via http or xml-rpc or
 something similar.  So I'm wondering if that's possible.  I can
 always take the indirect route if, as I suspect, that's necessary.
 
 I'm cribbing from parts of the Poll product as appropriate.  The
 polling machinery is considerably more complex though: a restricted
 list of voters, various muckings around to get the info out of the
 email, and preference voting (1 for first choice, 2 for second, etc
 with an instant run off).
 
 I know Zeo is more in the multi-process space, but I don't want to
 use it for this project because I don't have time to learn it; it's
 alpha; and it seems like overkill for my problem.
 
 ___
 Zope maillist  -  [EMAIL PROTECTED]
 http://lists.zope.org/mailman/listinfo/zope
 **   No cross posts or HTML encoding!  **
 (Related lists -
  http://lists.zope.org/mailman/listinfo/zope-announce
  http://lists.zope.org/mailman/listinfo/zope-dev )

___
Zope maillist  -  [EMAIL PROTECTED]
http://lists.zope.org/mailman/listinfo/zope
**   No cross posts or HTML encoding!  **
(Related lists - 
 http://lists.zope.org/mailman/listinfo/zope-announce
 http://lists.zope.org/mailman/listinfo/zope-dev )




Re: [Zope] Can multiple processes access a ZODB3 file?

2000-07-28 Thread Bill Anderson

Ross Boylan wrote:
 
 If I have Zope running, using ZODB3 on Data.fs, can a separate
 process also use ZODB3 to access Data.fs?  I have my suspicions, but
 I'm not sure.
 
 I'm interested in this because I'm in the middle of a balloting
 period.  People email me their ballots.  I will need to check them
 for validity, send out confirmation or error messages, and eventually
 tally the results.

[...]

 I know Zeo is more in the multi-process space, but I don't want to
 use it for this project because I don't have time to learn it; it's
 alpha; and it seems like overkill for my problem.

Actually, AFAIK, ZEO is the only way to have multiple processes accessing a ZODb
concurrently. There really isn't much to 'learning ZEO'.

AMK has a good intro to using the ZODB, which has a ZEO section. I don't have the URL
handy though ... wait, yes I do...

http://starship.python.net/crew/amk/python/writing/zodb-zeo.html

IMO, going the ZEO route would be easier than the xml-rpc route.
YMMZ



--
Do not meddle in the affairs of sysadmins, for they are easy to annoy,
and have the root password.

___
Zope maillist  -  [EMAIL PROTECTED]
http://lists.zope.org/mailman/listinfo/zope
**   No cross posts or HTML encoding!  **
(Related lists - 
 http://lists.zope.org/mailman/listinfo/zope-announce
 http://lists.zope.org/mailman/listinfo/zope-dev )




RE: [Zope] Can multiple processes access a ZODB3 file?

2000-07-28 Thread Chris McDonough

The ZODB is generally process-locked.  It's not possible, to my
knowledge, to access it from different python processes simultaneously.
To solve this, I'd highly encourage you to use ZEO, despite your desire
not to use it.  There's very little to learn with ZEO, and its proven
very stable over the last few months.  It works just like FileStorage,
you just need to install it, edit a couple files, create a
custom_zodb.py file in your software home and go.  (all hail jim
fulton!!)

 -Original Message-
 From: Ross Boylan [mailto:[EMAIL PROTECTED]]
 Sent: Friday, July 28, 2000 8:55 PM
 To: [EMAIL PROTECTED]
 Subject: [Zope] Can multiple processes access a ZODB3 file?
 
 
 If I have Zope running, using ZODB3 on Data.fs, can a separate 
 process also use ZODB3 to access Data.fs?  I have my suspicions, but 
 I'm not sure.
 
 I'm interested in this because I'm in the middle of a balloting 
 period.  People email me their ballots.  I will need to check them 
 for validity, send out confirmation or error messages, and eventually 
 tally the results.
 
 I definitely want a persistent store, so ZODB seems good.  Also, I 
 eventually would like this to be a Zope product, with people able to 
 access the results on the web (and, in the future, vote on the web).  
 But getting it Zoped may be too much work in the short run.
 
 So, I'll have a Zope server running on my Debian system, and another 
 process will be going through the mail.  It would be more 
 straightforwad if that other process worked directly with the 
 database, rather than going through Zope via http or xml-rpc or 
 something similar.  So I'm wondering if that's possible.  I can 
 always take the indirect route if, as I suspect, that's necessary.
  
 I'm cribbing from parts of the Poll product as appropriate.  The 
 polling machinery is considerably more complex though: a restricted 
 list of voters, various muckings around to get the info out of the 
 email, and preference voting (1 for first choice, 2 for second, etc 
 with an instant run off).
 
 I know Zeo is more in the multi-process space, but I don't want to 
 use it for this project because I don't have time to learn it; it's 
 alpha; and it seems like overkill for my problem.
 
 
 
 
 ___
 Zope maillist  -  [EMAIL PROTECTED]
 http://lists.zope.org/mailman/listinfo/zope
 **   No cross posts or HTML encoding!  **
 (Related lists - 
  http://lists.zope.org/mailman/listinfo/zope-announce
  http://lists.zope.org/mailman/listinfo/zope-dev )
 

___
Zope maillist  -  [EMAIL PROTECTED]
http://lists.zope.org/mailman/listinfo/zope
**   No cross posts or HTML encoding!  **
(Related lists - 
 http://lists.zope.org/mailman/listinfo/zope-announce
 http://lists.zope.org/mailman/listinfo/zope-dev )