Bug 147101 Report generation performance is sluggish
The overall performance of report generation appears to be quite sluggish. Here are numbers that we have measured using ORACLE as a DB. We use ORACLE 10g w/ojdbc14.jar thin driver. select rownum, datetime_id, another_id, text from ( select max(datetime_id) as datetime_id, another_id, text from some_oracle_schema.sample_table where text < 'c%' group by another_id, text ) Query resulting in 8465 rows Using PL/SQL developer: ----------------------- Execution: approx 1 second Iterating through all rows via PL/SQL developer UI: 10 seconds BIRT: ----- Preview page (via dataset editor): shows all 8465 rows in 53 seconds Preview tab (in the designer): shows all 8465 rows in 79 seconds Generation of rptdocument from rptdesign using API: 55 seconds
data/org.eclipse.birt.data/src/org/eclipse/birt/data/engine/executor/transform/group/GroupCalculationUtil.java
* 
	 * @param rsc
	 */
	public void setResultSetCache( ResultSetCache rsc )
	{
		this.smartCache = rsc;
	}
	/**
	 * Gets group count
	 * 
	 * @return number of groupKeys
	 */
	int getGroupCount( )
	{
		return groupDefs.length;
	}
	/**
	 * Sort the group array according to the values in sortKeys[] of
	 * GroupBoundaryInfo intances. within them.
	 * 
	 * @param groupArray
	 */
	void sortGroupBoundaryInfos( List[] groupArray )
	{
		for ( int i = 0; i < groupArray.length; i++ )
		{
			Object[] toBeSorted = new Object[groupArray[i].size( )];
			for ( int j = 0; j < toBeSorted.length; j++ )
			{
				toBeSorted[j] = groupArray[i].get( j );