My development computer is on OS X, live and testing instances are on
debian. Zope on OS X silently fails, on debian raises maximum recursion
error so my traceback is from testing instance. Traceback is the same as
in the ticket and ends in _cloneByPickle (see traceback below).
I've tracked ArchivistTool.prepare() method and the object is not
registered yet:
-> obj, history_id = dereference(obj, zodb_hook=self)
(Pdb) n
-> if storage.isRegistered(history_id):
(Pdb) history_id
(Pdb) storage.isRegistered(history_id)
False
...
-> history_id = uidhandler.register(obj)
(Pdb) history_id
1347
(Pdb) c
...Zope crashed
Does this mean there are no previous versions yet? If I disable/enable
versioning, are all versions purged ?
Traceback (innermost last):
Module ZPublisher.Publish, line 119, in publish
Module ZPublisher.mapply, line 88, in mapply
Module ZPublisher.Publish, line 42, in call_object
Module Products.CMFFormController.FSControllerPageTemplate, line 90,
in __call__
Module Products.CMFFormController.BaseControllerPageTemplate, line
28, in _call
Module Products.CMFFormController.ControllerBase, line 231, in getNext
Module Products.CMFFormController.Actions.TraverseTo, line 38, in
__call__
Module ZPublisher.mapply, line 88, in mapply
Module ZPublisher.Publish, line 42, in call_object
Module Products.CMFFormController.FSControllerPythonScript, line 104,
in __call__
Module Products.CMFFormController.Script, line 145, in __call__
Module Products.CMFCore.FSPythonScript, line 140, in __call__
Module Shared.DC.Scripts.Bindings, line 313, in __call__
Module Shared.DC.Scripts.Bindings, line 350, in _bindAndExec
Module Products.CMFCore.FSPythonScript, line 196, in _exec
Module None, line 29, in update_version_before_edit
- <FSControllerPythonScript at /portal/update_version_before_edit
used for /portal/plan-india>
- Line 29
Module Products.CMFEditions.CopyModifyMergeRepositoryTool, line 292,
in save
Module Products.CMFEditions.CopyModifyMergeRepositoryTool, line 425,
in _recursiveSave
Module Products.CMFEditions.ArchivistTool, line 240, in prepare
Module Products.CMFEditions.ArchivistTool, line 195, in _cloneByPickle
RuntimeError: maximum recursion depth exceeded
>
> Hm, could you send the full traceback (provided you are not on OS X
> I'd expect you to see a recusrion error)? If it's a crash it may be
> hard to help you though. Is there any way you could try this with a
> new instance that doesn't have any versions already saved?
>
> The main thing that you'll need to check if you want to debug wether
> the modifier is working is that the cloned version of the object
> created by the portal_archivist tool no longer has actual sub-objects
> stored, but instead placeholder objects (VersionAwareReference).
>
> Good Luck,
> Alec
>
> 2009/12/13 Radim Novotny <[email protected]>:
>>
>> According to notes at
http://dev.plone.org/plone/ticket/7223#comment:15 ,
>> I've tried to change condition of OMOutsideChildrensModifier and add my
>> custom folderish type to list of portal_types, but no luck. Zope
still fails
>> on the same place.
>>
>> CMFEditions code:
>>
http://dev.plone.org/collective/browser/Products.CMFEditions/branches/1.1/Products/CMFEditions/ArchivistTool.py#L187
>>
>> I've checked that ouside_refs variable is set to list of child
objects in
>> the versioned folder, but zope still fails on save of my custom
folderish
>> type. If I revert OMOutsideChildrensModifier condition change,
outside_refs
>> is empty so condition is fine.
>>
>> Any ideas?
>>
>> Radim Novotny
>>
>>
>>
>>
Radim
_______________________________________________
Product-Developers mailing list
[email protected]
http://lists.plone.org/mailman/listinfo/product-developers