[reportlab-users] Reportlab in Zope?

Robin Becker reportlab-users@reportlab.com
Wed, 17 Mar 2004 08:59:58 +0000

In article <40580FF0.3070303@simplistix.co.uk>, Chris Withers
<lists@simplistix.co.uk> writes
>Jerome Alet wrote:
>> On Tue, Mar 16, 2004 at 01:01:31PM -0000, Andy Robinson wrote:
>>>I'd never seen this explained so simply on a list before.
>>>Let's do it.
>> What about the possible problems caused by using RL in a 
>> multithreaded environment like Zope ? 
>Well, I'm sure they'll pop up on this list as people encounter them ;-)
>> Are they solved ?
>If not, I'd recommend the thing importing the reportlab module employs the 
>"&(*&ing great Lock principle" ;-)
>> Not that I encountered any of them, but I probably never had 
ReportLab isn't thread safe and isn't likely to be in the near future.
Andy has always argued that these processes are quite large in terms of
resources and should be done in a separate process. That at least allows
the OS to recover the 80Mb of memory or whatever that a large document
might need to produce.

If you want better performance have a multi input single queue reportlab
job processor ie do Zope, but serialize access as suggested by the big
lock comment. The reportlab rl_config module allows the base setup to be
mostly reset.

If you feel brave just run random jobs. Things will go wrong when A sets
default page size to A4 and B sets it to letter before A gets a canvas
etc etc.   
Robin Becker