From c67e7e18e6086537a5f3e13e6b569418c8a965fd Mon Sep 17 00:00:00 2001 From: Romain Quetiez Date: Mon, 3 Feb 2014 14:23:55 +0000 Subject: [PATCH] Optimize the queries for the export page SVN:trunk[3066] --- webservices/export.php | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/webservices/export.php b/webservices/export.php index 5ca52e41c..6a53881d5 100644 --- a/webservices/export.php +++ b/webservices/export.php @@ -125,6 +125,7 @@ if (!empty($sExpression)) // Check and adjust column names // + $aAliasToFields = array(); foreach($aFields as $index => $sField) { if (preg_match('/^(.*)\.(.*)$/', $sField, $aMatches)) @@ -136,8 +137,11 @@ if (!empty($sExpression)) { $sClassAlias = $oFilter->GetClassAlias(); $sAttCode = $sField; + // Disambiguate the class alias $aFields[$index] = $sClassAlias.'.'.$sAttCode; } + $aAliasToFields[$sClassAlias][] = $sAttCode; + $sClass = $oFilter->GetClassName($sClassAlias); if (!MetaModel::IsValidAttCode($sClass, $sAttCode)) { @@ -161,6 +165,7 @@ if (!empty($sExpression)) if ($oFilter) { $oSet = new CMDBObjectSet($oFilter, array(), $aArgs); + $oSet->OptimizeColumnLoad($aAliasToFields); switch($sFormat) { case 'html':