Проблемы
При репликации транзакций при использовании SQL Server 2014 Publisher и подписчика SQL Server 2012 агент распространителя завершает работу с ошибкой, и появляется следующее сообщение об ошибке:
Для процедуры или функции sp_MSreplraiserror задано слишком много аргументов. (Источник: MSSQLServer; номер ошибки: 8144) Получение справки: http://help/8144
Причина
Эта проблема возникает из-за того, что определение sp_MSreplraiserror изменилось между sql Server 2012 и sql Server 2014. Это изменение вызывает сообщение об ошибке, если определение выполняется агентом распространителя на подписчике. Сообщение об ошибке похоже на следующее:
Строка не была найдена на подписчике при применении реплицированной команды удаления для таблицы "Schema".Table_Name"с первичными ключами: [No] = x (Источник: MSSQLSERVER, код ошибки: XXXXX)
Решение
Эта проблема исправлена в перечисленных ниже накопительных обновлениях для SQL Server.
Накопительное обновление 5 для SQL server 2016 RTM,накопительное обновление 2 для SQL Server 2016 с пакетом обновления 1 (SP1)
Накопительное обновление 3 для SQL Server 2014 с пакетом обновления 2
Все новые накопительные обновления для SQL Server содержат все исправления и все исправления для системы безопасности, которые были включены в предыдущий накопительный пакет обновления. Ознакомьтесь с самыми последними накопительными обновлениями для SQL Server. Последнее накопительное обновление для SQL server 2016
Статус
Корпорация Майкрософт подтверждает наличие этой проблемы в своих продуктах, которые перечислены в разделе "Применяется к".
Ссылки
Ознакомьтесь с терминологией , которую корпорация Майкрософт использует для описания обновлений программного обеспечения.