[ZODB-Dev] RFC: compatibility of ZEO clients and servers running different Python versions

2010-04-20 Thread Jim Fulton
Starting with Python 2.5, Python exception classes became new-style
types, which led to changes in the way Exception pickles were
constructed.  This primarily affects the ZEO protocol. Changes were
made in ZODB 3.8 and later to accomidate this change.

I realized recently that, while the changes made to ZODB cause ZEO to
work with newer Python versions when clients and servers run the same
version, there's still a problem when clients and servers run
different Python versions.  A Python 2.4 client doesn't work properly
with Python 2.5 or 2.6 servers. Also, if a server is running on Python
2.5 or 2.6, it won't work with clients older that ZODB 3.8, regardless
of which Python version they use.

Fortunately, clients running Python 2.5 or 2.6 will work with servers
running 2.4, so there is a way to upgrade clients and servers without
taking them all down at once.

I've been pretty proud of the fact that modern ZEO servers work with
ZEO clients as old as ZODB 3.2.  (We've had clients that old in
production here at ZC until very recently.)  I'm a bit disappointed
that will lose compatibility with older clients.

Yesterday, I worked out an alternate exception pickling strategy that
would support ZEO clients as old as 3.3:

  http://svn.zope.org/?rev=49view=rev

It does this at the cost of making pickling a little more brittle
because different exception classes would have slightly different
__reduce__ methods.

Because of the complexity of the solution, I'm, sadly, inclined to
leave things as they are:

- Can't use Python 2.4 clients with Python 2.5 or 2.6 servers
- Can use Python 2.6 clients with 2.4 servers.
- Can't use Python 2.5 or 2.6 servers with clients running ZODB 3.7 or
  earlier.

I wonder what other people think.

Jim

-- 
Jim Fulton
___
For more information about ZODB, see the ZODB Wiki:
http://www.zope.org/Wikis/ZODB/

ZODB-Dev mailing list  -  ZODB-Dev@zope.org
https://mail.zope.org/mailman/listinfo/zodb-dev


Re: [ZODB-Dev] RFC: compatibility of ZEO clients and servers running different Python versions

2010-04-20 Thread Chris Withers
Jim Fulton wrote:
 Because of the complexity of the solution, I'm, sadly, inclined to
 leave things as they are:
 
 - Can't use Python 2.4 clients with Python 2.5 or 2.6 servers
 - Can use Python 2.6 clients with 2.4 servers.
 - Can't use Python 2.5 or 2.6 servers with clients running ZODB 3.7 or
   earlier.
 
 I wonder what other people think.

Personally, I'm certainly okay with this.
It'd be great to have it advertised somewhere prominent though...

Chris

-- 
Simplistix - Content Management, Batch Processing  Python Consulting
- http://www.simplistix.co.uk
___
For more information about ZODB, see the ZODB Wiki:
http://www.zope.org/Wikis/ZODB/

ZODB-Dev mailing list  -  ZODB-Dev@zope.org
https://mail.zope.org/mailman/listinfo/zodb-dev


Re: [ZODB-Dev] RFC: compatibility of ZEO clients and servers running different Python versions

2010-04-20 Thread Jim Fulton
On Tue, Apr 20, 2010 at 12:17 PM, Christian Theune c...@gocept.com wrote:
...
 Thanks for the effort, sounds like a rabbit hole. :)

 I basically aim running ZEO servers and clients at the same Python
 version. For upgrading purposes it would be nice to have your conclusion
 available to developers/admins so they can figure out (or we can tell
 them) a reasonable upgrade path.

I added some text to the README.txt on the trunk and 3.9 branch, so this
will be documented in upcoming 3.9 and 3.10 releases.

Jim

-- 
Jim Fulton
___
For more information about ZODB, see the ZODB Wiki:
http://www.zope.org/Wikis/ZODB/

ZODB-Dev mailing list  -  ZODB-Dev@zope.org
https://mail.zope.org/mailman/listinfo/zodb-dev


[ZODB-Dev] ZODB 3.9.5 (was Re: cache-size-bytes problem)

2010-04-20 Thread Jim Fulton
On Fri, Mar 26, 2010 at 4:06 PM, Alan Runyan runy...@gmail.com wrote:
 Hello,

 
  So far I know Hanno fixed that.
  Any chance to get it released as 3.9.5?

 Absolutely, it will be released in 3.9.5.

 This will likely happen in 2 or 3 weeks.

ish :)


 Good to hear.

 There are a few issues that seem to have patches, will those make it?
   - https://bugs.launchpad.net/zodb/+bug/544305

This will be in. Are there others?


 I think we can close this:
   - https://bugs.launchpad.net/zodb/+bug/114814

Yup.

 There are other low hanging fixes.
 Should someone create a patch?
 e.g. https://bugs.launchpad.net/zodb/+bug/239086

This isn't a ZODB bug. :)

Do you have any other requests for ZODB 3.9?

Jim

-- 
Jim Fulton
___
For more information about ZODB, see the ZODB Wiki:
http://www.zope.org/Wikis/ZODB/

ZODB-Dev mailing list  -  ZODB-Dev@zope.org
https://mail.zope.org/mailman/listinfo/zodb-dev