Am 14.06.2012 10:58, schrieb Alexandre Garel:
Le 14/06/2012 10:06, Ralf Hauenschild a écrit :
Am 14.06.2012 09:18, schrieb Marius Gedminas:
On Wed, Jun 13, 2012 at 10:58:01PM +0200, Ralf Hauenschild wrote:
Am 13.06.2012 19:36, schrieb Alexandre Garel:
Le 13/06/2012 18:57, Ralf Hauenschild a écrit :
Hello guys,

i've been desperately trying to install ZODB3 via the following ways:
- easy_install ZODB3
- installation of Zope2
- manual installation of ZODB3, preceeded by installation of the
requested packages from pypi

I'm using Ubuntu and Python 2.6.

Whe trying to import ZODB, I'm still getting the following error:

Python 2.6.5 (r265:79063, Apr 16 2010, 13:57:41)
[GCC 4.4.3] on linux2
Type "help", "copyright", "credits" or "license" for more information.
import ZODB
Traceback (most recent call last):
  File "<stdin>", line 1, in<module>
line 28, in<module>
    from DB import DB, connection
line 28, in<module>
    from ZODB.Connection import Connection
line 33, in<module>
    from ZODB.blob import Blob, rename_or_copy_blob,
line 35, in<module>
    from ZODB.POSException import POSKeyError
line 71, in<module>
    class ConflictError(POSError,
AttributeError: 'module' object has no attribute 'TransientError'
You need a newer version of the 'transaction' package.  Unfortunately
the changelog at  doesn't say
which version added TransientError, but why not get the latest one?

Can anybody help me, please?
The problem may be  with a system wide installed version of transaction.

I would say, try in a virtualenv with no site packages :

$ virtualenv -p /usr/bin/python2.6 --no-site-packages myproject
$ cd myproject
$ . bin/activate
$ pip install ZODB3

Hope this helps,
Unfortunately, the error remains :(

You mean in the global python ? For sure ! My goal was to make it work in the virtualenv.

[-- snip --]
Any further ideas?
Python path is set in the global environment. In the virtualenv, it was not set, but everything worked there anyway.

You have a non compatible version of transaction installed globally, so you won't run ZODB3 with your global environment. So Install / develop your software in the isolated virtualenv. Is there a problem with that ?

If you need it for system script, the shebang just have to use the virtualenv python interpreter : #! /path/to/virtualenv/bin/python.


Hello all!

Thank you very much for your help! It finally worked!
I just deleted the package folders of "transaction" in the dist-packages folder of Python. Then I reinstalled the latest version of transaction and it was done :)
I can now successfully import ZODB.
Keep on helping people, nice job!

Best regards,

For more information about ZODB, see

ZODB-Dev mailing list  -

Reply via email to