Home
Analytics
Birt report execution takes for ever
RaviV
I have a Birt report with a few columns. The datasource is a SQL table. If the number of records coming back is the 100's or maybe a couple of 1000, then everything is fine. Now, the same table has 26796 rows and when I execute it, it takes forever. In tomcat console I see these appearing
Mar 31, 2010 12:35:20 PM org.eclipse.birt.data.engine.executor.cache.disk.DiskCache <init>
INFO: Start processRestResultObjects
Mar 31, 2010 12:35:25 PM org.eclipse.birt.data.engine.executor.cache.disk.DiskCache <init>
INFO: End of process, and the count of data is 26796
I also tried to reduce the number of rows coming back ( not sure if that is the right way to do it) by going to Edit Data Set/Settings and setting it to 100.
The XML element in rptdesign has
<property name="rowFetchLimit">100</property>
What can I do? How can I have results coming back in a meaningful amount of time? In fact does it have to fetch all the rows right away? Can't Birt get the rows as I go next page etc?
Any ideas?
Thanks,
Ravi
Find more posts tagged with
Comments
Hans_vd
Do you really want a report to show +26000 rows? I mean, how can that be useful?
I calculated that if you show 40 rows per page, the report will have 650 pages... who will ever scroll through all these data?
Or is your report not actually showing all these rows?
RaviV
Good point. I am less concerned with all the rows. In fact if a user decides to select all rows, then the time taken is all right, but is there any way where I can control the number of rows coming back? I just want to see say the first 100 rows. I tried setting the row fetch limit param from designer, but that didn't seem to take any effect. Selection criteria in SQL help to a certain extent, but not enough.
Thanks,
Ravi
Hans_vd
>>is there any way where I can control the number of rows coming back?<br />
<br />
Not that I'm aware of.<br />
<br />
Is changing the query based on your parameter values an option?<br />
There's an example of a script that does that in this thread: <a class='bbc_url' href='
http://www.birt-exchange.org/forum/designing-birt-reports/19045-setting-up-date-range-parameter.html'>http://www.birt-exchange.org/forum/designing-birt-reports/19045-setting-up-date-range-parameter.html</a>
;
RaviV
Thanks for your suggestions. Yes, I am using Dates. The report is so active, that even in 1 day, it is possible the report can bring back thousands of rows. I was hoping I could use a combo of start and end date and time as well as some sort of control on the number of rows coming back. At the moment I am also seeing if I can use __pagerange and use /preview servlet.
- Raviv