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
MeasureHandle measure = (MeasureHandle) measures.get( j );
				measureNames.add( measure.getName( ) );
			}
		}
		IDimension[] dimensions = populateDimensions( cubeMaterializer,
				cubeHandle,
				candidateAppContext,
				stopSign );
		String[][] factTableKey = new String[dimensions.length][];
		String[][] dimensionKey = new String[dimensions.length][];
		for ( int i = 0; i < dimensions.length; i++ )
		{
			TabularDimensionHandle dim = (TabularDimensionHandle) cubeHandle.getDimension( dimensions[i].getName( ) );
			TabularHierarchyHandle hier = (TabularHierarchyHandle) dim.getDefaultHierarchy( );
			if ( cubeHandle.getDataSet( ).equals( hier.getDataSet( ) ) || hier.getDataSet( ) == null )
			{
				String[] keyNames = dimensions[i].getHierarchy().getLevels()[dimensions[i]
						.getHierarchy().getLevels().length - 1].getKeyNames();
				for( int j = 0; j < keyNames.length; j++)                                       						
				{
					keyNames[j] = dimensions[i].getName() + "/" + keyNames[j];
				}
				factTableKey[i] = keyNames;
				dimensionKey[i] = factTableKey[i];
			}
			else
			{
				Iterator it = cubeHandle.joinConditionsIterator( );
				if ( !it.hasNext() )
					throw new AdapterException( ResourceConstants.MISSING_JOIN_CONDITION, dim.getName() );