[reportlab-users] Re: Performance issues

Henning von Bargen reportlab-users@reportlab.com
Fri, 26 Dec 2003 20:22:47 +0100


I am using LongTable class (you can get the souce code on
the ftp.reportlab.org site when you log on with the user-id and password
someone from ReportLab Inc. published on this list a few weeks ago)
with success in a commercial application.
Because the whole user-interface is browser-based
(some JSP files running on a Oracle 9iAS Application Server)
I also get the DB data from within the Java application
and then write it to a .CSV file.
Then my reportlab script reads in the data from the CSV file
and creates one large Table (to be more precise, a LongTable),
and each cell contains a platypus Paragaph.
On a 2 GHz machine this python script usually takes about
5 seconds for 20 pages or so.
And I'm running two build() passes because I need a "page n of m" header.

The runtime depends on the amount of data in a nice linear fashion.
The amount of memory needed is (from what I remember) could be the
bottleneck,
however. I sometimes saw python.exe using 100 MB when creating a 100 pages
report.
I guess this is because I'm using paragraphs which add some overhead when
they are
processed.

If you just need to run very long tabular reports, you should give
longtables.py a try.
It is a little embarassing that I'm doing propaganda for my own code, it's
just that I
believe it is really good and deserves some reportlab users testing it ;-)

Henning