[Ape] APE issue

Andrew Veitch andrew at logicalprogression.net
Tue Oct 12 04:21:41 EDT 2004


I've been trying to migrate a 5GB ZODB onto APE/filesystem. It's worked 
fine on the whole but I've had a few issues:

First, a dozen or so of files in the ZODB are quite large, 100MB-200MB. I
know that neither ZODB nor APE are really designed for files of this size
but it works fine under ZODB although it is a little slow sometimes.  
However under APE we frequently get 'out of memory' errors - both when
creating and viewing the files. The server has 4GB of RAM plus swap space
and I was the only user at the time so I am surprised that a 100MB file
causes this error. Unfortunately there is no traceback in the log - I
guess that running out of memory stops the logging.

Secondly, I've occasionally had 'maximum recursion depth exceeded'
messages when pasting content. This is when pasting 4 or 5 files.  
Traceback appended. This looks to me like a problem with Archetypes and
the Pickler rather than APE per se. But again, it has never happened with
the ZODB. Increasing Python's maximum recursion did resolve the issue.

I'd be grateful for any ideas on either of these issues.

TIA

Andrew

TRACEBACK:

ICSCL/micscl/database/manage_pasteObjects
Traceback (most recent call last):
  File "/home/zope/Zope/lib/python/ZPublisher/Publish.py", line 100, in 
publish
    request, bind=1)
  File "/home/zope/Zope/lib/python/ZPublisher/mapply.py", line 88, in 
mapply
    if debug is not None: return debug(object,args,context)
  File "/home/zope/Zope/lib/python/ZPublisher/Publish.py", line 40, in 
call_object
    result=apply(object,args) # Type s<cr> to step into published object.
  File "/home/zope/Zope/lib/python/OFS/CopySupport.py", line 167, in 
manage_past
eObjects
    ob=ob._getCopy(self)
  File "/home/zope/instance0/Products/Archetypes/Referenceable.py", line 
322, in
 _getCopy
    ob = CopySource._getCopy(self, container)
  File
"/home/zope/instance0/Products/Ape/lib/apelib/zope2/setup/patches.py", li
ne 31, in _getCopy
    return zodb_copy(aq_base(self))
  File "/home/zope/instance0/Products/Ape/lib/apelib/zodb3/utils.py", line
60, i n zodb_copy
    p.dump(source)
RuntimeError: maximum recursion depth exceeded




More information about the Ape mailing list