MSSQL_REPL027056
适用于: SQL Server Azure SQL 托管实例
消息详细信息
Attribute | 值 |
---|---|
产品名称 | SQL Server |
事件 ID | 27056 |
事件来源 | MSSQLSERVER |
组件 | SQL Server 数据库引擎 |
符号名称 | |
消息正文 | 合并进程无法更改“%1”上的生成历史记录。 进行故障排除时,请使用详细的历史日志记录来重新启动同步,并指定要写入的输出文件。 |
说明
此错误通常是由增长过大的合并复制系统表中的争用所引起。 大型系统表通常是由于发布保持期过长造成的,因为在到达保持期之前,元数据必须一直存储在这些表中。
用户操作
若要解决此问题:
减小合并代理的 -DownloadGenerationsPerBatch 和 -UploadGenerationsPerBatch 参数的值,使进程在你解决引起错误的潜在问题时能够继续执行。 代理参数可以在代理配置文件和命令行中指定。 有关详细信息,请参阅:
为发布保持期指定尽可能低的设置。 有关详细信息,请参阅 Subscription Expiration and Deactivation。
在合并复制维护过程中,应不定期检查以下与合并复制相关联的系统表的增长情况: MSmerge_contents、 MSmerge_genhistory、 MSmerge_tombstone、 MSmerge_current_partition_mappings、 MSmerge_past_partition_mappings。 定期对这些表重建索引。 有关详细信息,请参阅 重新组织和重新生成索引。