metaData = retrieveMetaDataByQueryExecution( dataSetHandle );
metaData = new QueryExecutionHelper( dataEngine, modelAdaptor, sessionContext, false ).executeQuery( query ).getResultMetaData( ); addResultSetColumn( dataSetHandle, metaData ); if ( MetaDataPopulator.needsUseResultHint( dataSetHandle, metaData ) ) { metaData = new QueryExecutionHelper( dataEngine, modelAdaptor, sessionContext, true ).executeQuery( query ).getResultMetaData( ); }
	private IResultMetaData getRealMetaData( DataSetHandle dataSetHandle )			throws BirtException	{		IResultMetaData metaData = MetaDataPopulator.retrieveResultMetaData( dataSetHandle );		if ( metaData == null )		{			metaData = retrieveMetaDataByQueryExecution( dataSetHandle );		}		if ( !( dataSetHandle instanceof ScriptDataSetHandle ) )			clearUnusedData( dataSetHandle, metaData );		return metaData;	}