Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Z
ZODB
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
nexedi
ZODB
Commits
67669d70
Commit
67669d70
authored
Jun 25, 2007
by
Jim Fulton
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Updated for 3.8.
parent
9a78392b
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
13 additions
and
48 deletions
+13
-48
README.txt
README.txt
+13
-48
No files found.
README.txt
View file @
67669d70
ZODB 3.
7
ZODB 3.
8
========
========
Introduction
Introduction
------------
------------
The ZODB package provides a set of tools for using the Zope Object
The ZODB package provides a set of tools for using the Zope Object
Database (ZODB) in Python programs separately from Zope. The tools
Database (ZODB). The components you get with the ZODB release are as
you get are identical to the ones provided in Zope, because they come
follows:
from the same source repository. They have been packaged for use in
non-Zope stand-alone Python applications.
The components you get with the ZODB release are as follows:
- Core ZODB, including the persistence machinery
- Core ZODB, including the persistence machinery
- Standard storages such as FileStorage
- Standard storages such as FileStorage
- The persistent BTrees modules
- The persistent BTrees modules
- ZEO
- ZEO
- documentation
- documentation
(poor)
Our primary development platforms are Linux
and Windows 2000. The
Our primary development platforms are Linux
, Mac OS X, and Windows
test suite should pass without error on all of these platforms,
XP. The test suite should pass without error on all of these
although it can take a long time on Windows -- longer if you use
platforms, although it can take a long time on Windows -- longer if
ZoneAlarm. Many particularly slow tests are skipped unless you pa
ss
you use ZoneAlarm. Many particularly slow tests are skipped unle
ss
--all as an argument to test.py.
you pass
--all as an argument to test.py.
Compatibility
Compatibility
-------------
-------------
ZODB 3.7 requires Python 2.4.2 or later. The BTree code may be
ZODB 3.8 requires Python 2.4.2 or later.
compiled with support for 64-bit keys and values for the "I" flavors;
older versions of the BTrees package will not be able to load
persistent BTrees that use 64-bit data (an exception will be raised on
load).
The Zope 2.10 release, and Zope 3.3 releases, should be compatible with this
version of ZODB. Note that Zope 2.7 and higher includes ZEO, so this package
should only be needed to run a ZEO server.
ZEO servers and clients are wholly compatible among 3.3, 3.4, 3.5, 3.6 and
ZEO servers and clients are wholly compatible among 3.3, 3.4, 3.5, 3.6 and
3.7; a ZEO client from any of those versions can talk with a ZEO server from
3.7; a ZEO client from any of those versions can talk with a ZEO server from
any.
any. ZODB 3.8 ZEO clients require ZODB 3.8 servers and later. ZODB
3.8 ZEO Servers will work with ZODB 3.2 clients and later.
Trying to mix ZEO clients and servers from 3.3 or later from ZODB releases
before 3.3 is much harder. ZODB 3.3 introduced multiversion concurrency
control (MVCC), and earlier ZEO servers do not support MVCC: a 3.3+ ZEO
client cannot talk with an older ZEO server as a result.
In the other direction, a 3.3+ ZEO server can talk with older ZEO clients,
but because the names of some basic classes have changed, if any 3.3+ clients
commit modifications to the database it's likely that the database will
contain instances of classes that don't exist in (can't be loaded by) older
ZEO clients. For example, the database root object was an instance of
``ZODB.PersistentMapping.PersistentMapping`` before ZODB 3.3, but is an
instance of ``persistent.mapping.PersistentMapping`` in ZODB 3.3. A 3.3.1+
client can still load a ``ZODB.PersistentMapping.PersistentMapping`` object,
but this is just an alias for ``persistent.mapping.PersistentMapping``, and
an object of the latter type will be stored if a 3.3 client commits a change
to the root object. An older ZEO client cannot load the root object so
changed.
This limits migration possibilities: a 3.3+ ZEO server can be used with
older (pre-3.3) ZEO clients and serve an older database, so long as no 3.3+
ZEO clients commit changes to the database. The most practical upgrade path
is to bring up both servers and clients using 3.3+, not trying to mix pre-3.3
and post-3.3 ZEO clients and servers.
Prerequisites
Prerequisites
-------------
-------------
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment