[Zope-CMF] Problems installing type into portal

Dieter Maurer dieter at handshake.de
Tue Mar 2 15:04:41 EST 2004


Anton Hughes wrote at 2004-3-2 09:59 +1100:
>I'm experiencing an unusual problem with installing a product I've 
>developed into a particular CMF instance. The logs from 
>CMFQuickInstallerTool are attached below and show some sort of conflict 
>error the first time I tried to install it. Subsequent attempts give 
>this 'not a registered Type Information' error, and the new content 
>type doesn't show up (and can't even be manually added to 
>portal_types).
>...
>Traceback (most recent call last):
> ...
>line 206, in addColumn
>for key in self.data.keys():
>File "/usr/local/zope-2.6.2/lib/python/ZODB/Connection.py", line 553, 
>in setstate
>invalid = self._is_invalidated(obj)
>File "/usr/local/zope-2.6.2/lib/python/ZODB/Connection.py", line 579, 
>in _is_invalidated
>raise ReadConflictError(object=obj)
>ReadConflictError: database read conflict error (oid 0000000000205226, 
>class BTrees._IOBTree.IOBucket)

"addColumn" tries to add default values for all catalogued objects
for the new column. This is a long operation when your catalog
is large. Long operations are prone to "ConflictError"s.

Install this product only, where there is no other "catalog" activity
(modifications, to be precise).

Usually, an isolated "ConflictError" is not problem. The
request should simply be retried.
However, some products are stupid about catching exceptions.
More precisely, they catch "ConflictError", too. This
prevents the automatic retrial.


The second exception ("not registered") is almost surely more interesting...
Do you get a traceback?

-- 
Dieter



More information about the Zope-CMF mailing list