• Модуль: 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]);
			}
		}
	}
}