- Модуль: cluster
- Путь к файлу: ~/bitrix/modules/cluster/classes/mysql/slave.php
- Класс: CClusterSlave
- Вызов: CClusterSlave::SkipSQLError
static function SkipSQLError($node_id)
{
global $DB;
$arNode = CClusterDBNode::GetByID($node_id);
if (is_array($arNode))
{
if ($node_id == 1)
{
$nodeDB = $DB;
}
else
{
ob_start();
$nodeDB = CDatabase::GetDBNodeConnection($arNode["ID"], true, false);
ob_end_clean();
}
if (is_object($nodeDB))
{
//TODO check if started just make active
$rs = $nodeDB->Query("STOP SLAVE", false, '', ['fixed_connection' => true]);
if ($rs)
{
$rs = $nodeDB->Query("SET GLOBAL SQL_SLAVE_SKIP_COUNTER = 1", false, '',
['fixed_connection' => true]);
}
if ($rs)
{
$nodeDB->Query("START SLAVE", false, '', ['fixed_connection' => true]);
}
}
}
}