[ZODB-Dev] ReadConflictError while re-indexing big fat index
Jim Fulton
jim at zope.com
Mon Aug 2 10:57:38 EDT 2004
Roché Compaan wrote:
> Chris Withers wrote:
>
>> Hi All,
>>
>> I'm pretty sure this has been gone over before, but I thought I'd
>> spark off another discussion 'cos this is a little bit disturbing.
>>
>> I'm currently getting this:
>>
>> * Module Products.ZCatalog.ZCatalog, line 649, in searchResults
>> * Module Products.ZCatalog.Catalog, line 753, in searchResults
>> * Module Products.ZCatalog.Catalog, line 496, in search
>> * Module Products.PluginIndexes.PathIndex.PathIndex, line 234, in
>> _apply_index
>> * Module Products.PluginIndexes.PathIndex.PathIndex, line 185, in
>> search
>> * Module ZODB.Connection, line 561, in setstate
>> * Module ZODB.Connection, line 590, in _is_invalidated
>>
>> ReadConflictError: database read conflict error (oid 000000000001ff36,
>> class BTrees.IIBTree.IISet)
>>
>> ...while re-indexing a big text index (nb: not a PathIndex)
>>
>> The indexing is happening on a dedicated ZEO client so as not to
>> impact on the site's performance, however, getting the above error on
>> every page impacts somewhat more on the Site's performance ;-)
>>
>> This raises some questions for me:
>>
>> 1. What is the above error message really trying to tell me?
>> (it's a pretty obscure message ;-)
>
>
> An object (most probably the index) was modified and thus invalidated in
> another transaction. At the time that your indexing operation wants to
> commit, the ZEO server tells you that your are trying to modify an
> object that has been invalidated.
As Chris pointed out, he is getting read conflicts, not write conflicts.
> > 2. How SHOULD I try and re-index a large text index without effectively
>
>> taking down the whole site for an hour or two.
>
>
> Sigh. I've come to love the ZODB, but this issue is a dagger in my side
> and always makes me regret not choosing an RDBMS. I haven't seen any
> solution to do this - as far as I know this is not currently possible.
MVCC should solve this problem.
Jim
--
Jim Fulton mailto:jim at zope.com Python Powered!
CTO (540) 361-1714 http://www.python.org
Zope Corporation http://www.zope.com http://www.zope.org
More information about the ZODB-Dev
mailing list