Bug 201379 Different process way for maxlevels 0 and maxrows 0[0003]
Description: Different process way for maxlevels and maxrows when they are set to 0 Build number:2.2.1.v20070828 Steps to reproduce: 1. Deploy BIRT. 2. set BIRT_VIEWER_MAX_ROWS as 0 3. set BIRT_VIEWER_MAX_CUBE_LEVELS as 0. 4. Preview report containing table and crosstab. Expected result: Same effect for these two properties Actual result: Return all rows for table and return 0 for crosstab Error log:n/a
data/org.eclipse.birt.report.data.adapter/src/org/eclipse/birt/report/data/adapter/impl/DataRequestSessionImpl.java
* @param cubeMaterializer
	 * @param stopSign
	 * @throws IOException
	 * @throws BirtException
	 * @throws DataException
	 */
	private void createCube( TabularCubeHandle cubeHandle,
			CubeMaterializer cubeMaterializer, Map appContext, StopSign stopSign )
			throws IOException, BirtException, DataException
	{
		boolean doPerfTuning = this.needCachedDataSetToEnhancePerformance( cubeHandle )
				&& ( appContext == null || ( appContext != null
						&& appContext.get( DataEngine.DATA_SET_CACHE_ROW_LIMIT ) == null 
						&& appContext.get( DataEngine.MEMORY_DATA_SET_CACHE ) == null ) );
		Map candidateAppContext = new HashMap();
		if ( appContext!= null )
			candidateAppContext.putAll( appContext );
		if ( doPerfTuning )
		{
			candidateAppContext.put( DataEngine.DATA_SET_CACHE_ROW_LIMIT, new Integer(-1) );
		}
					
		List measureNames = new ArrayList( );
		List measureGroups = cubeHandle.getContents( CubeHandle.MEASURE_GROUPS_PROP );
		for ( int i = 0; i < measureGroups.size( ); i++ )
		{
			MeasureGroupHandle mgh = (MeasureGroupHandle) measureGroups.get( i );
			List measures = mgh.getContents( MeasureGroupHandle.MEASURES_PROP );
			for ( int j = 0; j < measures.size( ); j++ )
			{