Пример #1
0
                            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);
        ?>