[Mailman-Users] Mailman issue downloading full raw archive
Jared Nyland
jnyland at gmail.com
Tue Nov 14 17:35:26 CET 2006
Hi Mark,
Great Thanks for the help on this issue. I have added that code to my
private.py and now I am getting this error.
Traceback:
Traceback (most recent call last):
File "/usr/lib/mailman/scripts/driver", line 88, in run_main
sys.__stdout__.write(tempstdout.getvalue())
MemoryError
Thanks
Jared
On 11/13/06, Mark Sapiro <msapiro at value.net> wrote:
>
> Jared Nyland wrote:
> >
> >I have recently run into an issue with downloading the full raw archive
> on
> >one list. The archive has reached 1086 MB in size and I now get this
> >error. Has anyone seen this before or know how to resolve it.
> >
> >
> >
> >Traceback (most recent call last):
> > File "/usr/lib/mailman/scripts/driver", line 87, in run_main
> > main()
> > File "/usr/lib/mailman/Mailman/Cgi/private.py", line 162, in main
> > sys.stdout.write(f.read())
> >MemoryError: out of memory
>
>
> What is happening is private.py is copying the list.mbox file to
> stdout, but it is doing this by reading the entire file into memory
> and then writing it back out to stdout. Thus, eventually you will
> reach som limit on how big the CGI can grow and you get the memory
> error.
>
> You could make the archive public which allows the web server to access
> the file directly via the 'pipermail' URL. If you don't want to make
> the archive public, you could create an alias within the web server to
> access the file and use .htaccess control to limit access.
>
> Perhaps better than any of these is to patch Mailman/Cgi/Private.py.
> The last few lines of this file are
>
> else:
> print 'Content-type: %s\n' % ctype
> sys.stdout.write(f.read())
> f.close()
>
> If you change these to
>
> else:
> print 'Content-type: %s\n' % ctype
> line = f.readline()
> while line:
> sys.stdout.write(line)
> line = f.readline()
> f.close()
>
> I think it will avoid the problem.
>
> --
> Mark Sapiro <msapiro at value.net> The highway is for gamblers,
> San Francisco Bay Area, California better use your sense - B. Dylan
>
>
More information about the Mailman-Users
mailing list