sp_configure_peerconflictdetection (Transact-SQL)

Настраивает обнаружение конфликта для публикации, которая участвует в топологии одноранговой репликации транзакций. Дополнительные сведения см. в разделе Как настроить обнаружение конфликтов в одноранговой репликации транзакций (программирование репликации на языке Transact-SQL). Эта хранимая процедура выполняется в базе данных публикации на издателе.

Значок ссылки на разделСоглашение о синтаксисе в Transact-SQL

Синтаксис

sp_configure_peerconflictdetection [ @publication = ] 'publication'
    [ , [ @action = ] 'action']
    [ , [ @originator_id = ] originator_id ]
    [ , [ @conflict_retention = ] conflict_retention ]
    [ , [ @continue_onconflict = ] 'continue_onconflict']
    [ , [ @local = ] 'local']
    [ , [ @timeout = ] timeout ]

Аргумент

  • [ @publication=\] 'publication'
    Имя публикации, для которой должна быть выполнена настройка обнаружения конфликтов. Аргумент publication имеет тип sysname и не имеет значения по умолчанию.

  • [ @action = ] 'action'
    Указывает, должно ли быть включено или отключено обнаружение конфликтов применительно к публикации. Аргумент action имеет тип nvarchar(5) и может принимать одно из следующих значений.

    Значение

    Описание

    enable

    Включает обнаружение конфликтов применительно к публикации.

    disable

    Отключает обнаружение конфликтов применительно к публикации.

    Значение NULL (по умолчанию)

  • [ @originator_id = ] originator_id
    Указывает идентификатор в одноранговой топологии. Аргумент originator_id имеет тип int и значение по умолчанию NULL. Этот идентификатор используется для обнаружения конфликтов, если аргумент action имеет значение enable. Задайте положительное, ненулевое значение идентификатора, которое никогда не использовалось в топологии. Список использованных идентификаторов запросите в системной таблице Mspeer_originatorid_history.

  • [ @conflict_retention = ] conflict_retention
    Указано только в ознакомительных целях. Не поддерживается. Совместимость с будущими версиями не гарантируется.

  • [ @continue_onconflict = ] 'continue_onconflict' ]
    Определяет, будет ли агент распространителя продолжать обрабатывать изменения после обнаружения конфликта. Аргумент continue_onconflict имеет тип nvarchar(5) и значение по умолчанию FALSE.

    ПредупреждениеВнимание!

    Рекомендуется использовать значение по умолчанию FALSE. Если присвоить этому аргументу значение TRUE, агент распространителя будет пытаться конвергировать данные в топологии, применяя конфликтующую строку из узла, имеющего наибольшее значение идентификатора инициатора. Этот метод не гарантирует конвергенцию. После обнаружения конфликта следует убедиться, что топология остается согласованной. Дополнительные сведения см. в подразделе «Обработка конфликтов» раздела Обнаружение конфликтов в одноранговой репликации.

  • [ @local = ] 'local'
    Указано только в ознакомительных целях. Не поддерживается. Совместимость с будущими версиями не гарантируется.

  • [ @timeout = ] timeout
    Указано только в ознакомительных целях. Не поддерживается. Совместимость с будущими версиями не гарантируется.

Возвращаемые значения

0 (успешное завершение) или 1 (неуспешное завершение)

Замечания

Хранимая процедура sp_configure_peerconflictdetection используется для одноранговой репликации транзакций. Чтобы использовать обнаружение конфликтов, на всех узлах должен выполняться SQL Server 2008 или более поздняя версия, кроме того, для всех узлов необходимо разрешить обнаружение конфликтов.

Разрешения

Требуется членство в предопределенной роли сервера sysadmin или в предопределенной роли базы данных db_owner.