[Zope-dev] Debugging conflict errors? Hints please!

Stefan H. Holek stefan@epy.co.at
Mon, 14 Oct 2002 17:23:29 +0200


Thanks Jeremy,

but could you speak more slowly please? ;-)

Which debug log are you refering to? There is nothing in the stupid log, 
and  "Big M" logging does also not give me any indication of conflicts or 
oids. Do I have to run everything inside pdb?

I also do not seem to figure out where the ConflictErrors are raised. I 
have added log messages to every single occurrence of "raise ConflictError" 
in lib/python/ZODB/* but I never see any of them...

Stefan


--On Freitag, 11. Oktober 2002 11:15 -0400 Jeremy Hylton <jeremy@zope.com> 
wrote:

>>>>>> "SHH" == Stefan H Holek <stefan@epy.co.at> writes:
>
> The debug log should show the oid that caused the conflict error.
>> From the oid, you ought to be able to figure out what the object is --
> class, etc. -- and then what transactions have modified that object.
>
> Can anyone recommend a simple strategy for either of these two steps?
> There's got to be a good way to do it, but I'm not sure what the best
> way is.  I'd open the database in an interactive prompt:
>
>>>> db.open()[oid]
>
> That would get me the object.  Then I'd use fsdump to find all the
> transactions that include that oid.  That would be a very manual
> process since I'd just grep the textual dump of the storage.
>
> Jeremy

--
Those who write software only for pay should go hurt some other field.
/Erik Naggum/