if (!empty($arMissedKeys)) { foreach (array_unique($arMissedKeys) as $suggest) { list($alias, $table, $columns) = explode(":", $suggest); if (!CPerfQueryStat::IsBanned($table, $columns) && !CPerfomanceIndexComplete::IsBanned($table, $columns)) { if (CPerfQueryStat::GatherExpressStat($table, $columns, $q) && !CPerfQueryStat::IsSelective($table, $columns, $q)) { CPerfQueryStat::Ban($table, $columns); } else { CPerfomanceIndexSuggest::Add(array("TABLE_NAME" => $table, "TABLE_ALIAS" => $alias, "COLUMN_NAMES" => $columns, "SQL_TEXT" => $arSQL["SQL_TEXT"], "SQL_MD5" => $sql_md5, "SQL_COUNT" => 0, "SQL_TIME" => 0, "SQL_EXPLAIN" => serialize($arExplain))); } } } CPerfomanceIndexSuggest::UpdateStat($sql_md5, 1, $arSQL["QUERY_TIME"], $arSQL["ID"]); } } } else { CPerfomanceIndexSuggest::UpdateStat($sql_md5, 1, $arSQL["QUERY_TIME"], $arSQL["ID"]); } $last_id = $arSQL["ID"]; } } break; } if ($go) { $lAdmin->BeginPrologContent(); $message = new CAdminMessage(array("MESSAGE" => GetMessage("PERFMON_INDEX_IN_PROGRESS"), "DETAILS" => GetMessage("PERFMON_INDEX_QUERIES_ANALYZED", array("#QUERIES#" => "<b>" . intval($_SESSION["queries"]) . "</b>")) . "<br>", "HTML" => true, "TYPE" => "PROGRESS")); echo $message->Show(); ?> <script> <?php echo $lAdmin->ActionDoGroup(0, "analyze_cont", "last_id=" . $last_id); ?>