[Zope-CMF] no mem for new parser

Ignacio Valdes ivaldes@hal-pc.org
Tue, 01 May 2001 01:45:31 -0500


Tres Seaver wrote:

> On Sat, 28 Apr 2001, Norman Khine wrote:
>
> > Thanks fo your reply, you say my system is running out of
> > memory, do you mean Hard Disk Space, RAM or what? I am with
> > iServer, and they have allocated me 400Mb of HDD and I have
> > only used about 150Mb -- I'll check though.
>
> The memory problem would be RAM -- I'm guessing that they have
> limited your Zope process to fixed ceiling on memory.
> >
> > I can also confirm that I have not done any changes to the
> > code.
> >
> > I also had this error on my screen
> >
> > 2001-04-28T15:40:43 ERROR(200) ZServer uncaptured python exception, closin
> > g channel <select-trigger (pipe) at 82e956c> (exceptions.MemoryError:
>
> <snip>
>
> > and on the zope I get this
> >
> > Error Type: MemoryError
> > Error Value: Out of memory while compressing data
>
> <snip>
>
> Both of these errors seem to indicate that Python is running
> out of memory while trying to load a FSPythonScript from a
> skins directory.
>
> > And then the server restarts.
> >
> > Can you confirm as to what you want me to do on the
> > DirectoryView.py file -- where the following lines are, which I
> > found on the file,
> >
> >          if self.data is None or changed:
> >          try:
> >                 self.data, self.objects = self.prepareContents(registry,
> >                     register_subdirs=changed)
> >             except:
> >                 # DEBUG
> >                 import traceback
> >                 traceback.print_exc()
> >
> >                 self.data = {}
> >                 self.objects = ()
> >         return self.data, self.objects
> >
> > you want me to change it to:
> >
> >     try:
> >         self.data = data = self.prepareContents(registry,
> >             register_subdirs=changed)
> >     except:
> >         # DEBUG
> >         import traceback
> >         traceback.print_exc()
> >
> >         raise
>
> That is correct.  In "normal" circumstances, setting the data to
> a newly-allocated empty dictionary on an exception is OK, but not
> in an out-of-memory situation.
>
> Come to think of it, this may not help either.  Can you find out
> from your IPP if they have a limit on the process size, and if
> so, how small it is?  If you hit this problem on startup, then
> you are likely to hit lots of other MemoryErrors during "normal"
> operation.
>
> Tres.
> --
> ===============================================================
> Tres Seaver                                tseaver@digicool.com
> Digital Creations     "Zope Dealers"       http://www.zope.org
>
> _______________________________________________
> Zope-CMF maillist  -  Zope-CMF@zope.org
> http://lists.zope.org/mailman/listinfo/zope-cmf
>
> See http://www.zope.org/Products/PTK/Tracker for bug reports and feature requests