Ticket #13642 (new Bug)

Opened 3 years ago

Plone 4.0.7 - Maximum recursion depth error when checking in large PDF

Reported by: tony.ruddock@… Owned by:
Priority: minor Milestone: 4.x
Component: Unknown Version: 4.0
Keywords: Cc:

Description

Our site is based on Plone 4.0.7 and recently a user successfully checked out a large PDF and was trying to check it back in but it failed with the following stack trace:

2013-02-21 12:42:39 ERROR Zope.SiteErrorLog 1361450559.20.0921547927966    
http://phoebe:8095/portal/our-responsibilities/codes-of-conduct/copy_of_please-let-us-    
know-where-you-live/content_status_modify
Traceback (innermost last):
  Module ZPublisher.Publish, line 127, in publish
  Module ZPublisher.mapply, line 77, in mapply
  Module ZPublisher.Publish, line 47, in call_object
  Module Products.CMFFormController.FSControllerPythonScript, line 105, in __call__
  Module Products.CMFFormController.Script, line 145, in __call__
  Module Products.CMFCore.FSPythonScript, line 130, in __call__
  Module Shared.DC.Scripts.Bindings, line 324, in __call__
  Module Shared.DC.Scripts.Bindings, line 361, in _bindAndExec
  Module Products.PythonScripts.PythonScript, line 344, in _exec
  Module script, line 42, in content_status_modify
   - <FSControllerPythonScript at /portal/our-responsibilities/codes-of-conduct/please- 
let-us-know-where-you-live/content_status_modify>
   - Line 42
  Module Products.CMFCore.WorkflowTool, line 244, in doActionFor
  Module Products.CMFCore.WorkflowTool, line 555, in _invokeWithNotification
  Module Products.DCWorkflow.DCWorkflow, line 282, in doActionFor
  Module Products.DCWorkflow.DCWorkflow, line 421, in _changeStateOf
  Module Products.DCWorkflow.DCWorkflow, line 465, in _executeTransition
  Module zope.event, line 23, in notify
  Module zope.component.event, line 26, in dispatch
  Module zope.component._api, line 138, in subscribers
  Module zope.component.registry, line 323, in subscribers
  Module zope.interface.adapter, line 575, in subscribers
  Module zope.component.event, line 34, in objectEventNotify
  Module zope.component._api, line 138, in subscribers
  Module zope.component.registry, line 323, in subscribers
  Module zope.interface.adapter, line 575, in subscribers
  Module arcadia.app.events, line 22, in before_transition
  Module plone.app.iterate.browser.checkin, line 50, in __call__
  Module plone.app.iterate.policy, line 90, in checkin
  Module zope.event, line 23, in notify
  Module zope.component.event, line 26, in dispatch
  Module zope.component._api, line 138, in subscribers
  Module zope.component.registry, line 323, in subscribers
  Module zope.interface.adapter, line 575, in subscribers
  Module plone.app.iterate.subscribers.versioning, line 36, in handleAfterCheckin
  Module plone.app.iterate.archiver, line 43, in save
  Module Products.CMFEditions.CopyModifyMergeRepositoryTool, line 297, in save
  Module Products.CMFEditions.CopyModifyMergeRepositoryTool, line 443, in 
_recursiveSave
  Module Products.CMFEditions.ArchivistTool, line 267, in prepare
  Module Products.CMFEditions.ArchivistTool, line 221, in _cloneByPickle
  Module ZODB.Connection, line 843, in setstate
  Module logging, line 1047, in error
  Module logging, line 1128, in _log
  Module logging, line 1108, in makeRecord
  Module logging, line 243, in __init__
RuntimeError: maximum recursion depth exceeded while calling a Python object

The PDF in question is 24MB in size, checking in a PDF reduced down to 9MB didn't cause the problem.

A simple solution is to keep the size of the PDFs down, but the user is adament they want the larger version (higher resolution for printing).

Ticket #7223 discusses the issue and has a work around but it doesn't address the problem head on or suggest that it is has been fixed, instead it has been closed with the status set to wontfix which isn't very helpful.

It might be possible this has been fixed in a later version, if so could I be pointed in that direction?

Thanks

Note: See TracTickets for help on using tickets.