[ZODB-Dev] ZEO features

Jeremy Hylton jeremy@digicool.com
Fri, 13 Jul 2001 15:59:03 -0400 (EDT)


>>>>> "EL" == Elliot Lee <sopwith@redhat.com> writes:

  EL> On Fri, 13 Jul 2001, Jeremy Hylton wrote:
  >> ZEO supports a fairly specific interface for updating data as
  >> part of a two-phase commit.  I don't think it would make sense to
  >> extend it to support remote method invocation.  Instead, I would
  >> develop another service that support remote method invocation and
  >> is itself a ZEO client.  This service could well be a CORBA ORB.

  EL> Well, CORBA definitely won't work for the task for plenty of
  EL> reasons. 

CORBA is one possibility, but not the only one.

  EL>           The reason I wanted to add remote methods to ZEO is
  EL> because it would allow full transparent access to the objects,
  EL> being able to invoke methods and change data on the same object
  EL> and have it all work correctly. I see that as being very
  EL> valuable.

ZEO doesn't allow full transparent access to the objects.  It is a
remote ZODB storage service.  It allows access to objects pickles
so that ZODB can provide transparent access to objects.

  EL> So, I'm not asking you to like my design (nor accept all
  EL> patches) as much as I'm asking what the implementation problems
  EL> might be.

I'm not sure what distinction you're trying to make.  You haven't
offered a design, just the idea that ZEO could also invoke methods on
objects.  I'm saying that ZEO is the wrong place to introduce remote
method invocation.  ZEO doesn't know anything about objects.  It just
serves pickles to a ZODB process that knows how to handle them.

I can't say anthing about your implementation problems without knowing
what your design is.  The basic idea sounds like it's trying to solve
the problem in the wrong place.  A design based on asyncore (perhaps
using the zrpc module from ZEO) that was completely separate from the
ZEO service makes more sense to me.

Jeremy