Partager via


MergeArticle.CompensateForErrors Property

Gets or sets whether compensating actions are taken when errors are encountered during synchronization.

Espace de noms: Microsoft.SqlServer.Replication
Assembly: Microsoft.SqlServer.Rmo (in microsoft.sqlserver.rmo.dll)

Syntaxe

'Déclaration
Public Property CompensateForErrors As Boolean
public bool CompensateForErrors { get; set; }
public:
property bool CompensateForErrors {
    bool get ();
    void set (bool value);
}
/** @property */
public boolean get_CompensateForErrors ()

/** @property */
public void set_CompensateForErrors (boolean value)
public function get CompensateForErrors () : boolean

public function set CompensateForErrors (value : boolean)

Valeur de propriété

A Boolean value. If true, changes that cannot be applied at a Subscriber or Publisher during synchronization always lead to compensating actions to undo the change. If false, the default, compensating actions are not attempted when an error occurs.

Notes

By design, the default value of false for the CompensateForErrors property results in non-convergence which requires corrective action by an administrator.

If the source table for an article is already published in another publication, then the value of CompensateForErrors must be the same for both articles.

When CompensateForErrors is true, one incorrectly configured Subscriber that generates an error can cause changes at other Subscribers and Publishers to be undone.

When CompensateForErrors is false, errors are still logged, and during subsequent synchronizations, the Merge Agent continues to attempt to apply the changes until successful.

For pull subscriptions at Subscribers running Microsoft SQL Server 2000 version 8.00.858 and earlier (which includes SP3), compensating actions still occur even with CompensateForErrors set to false.

The CompensateForErrors property is available only with Microsoft SQL Server 2005.

The CompensateForErrors property can be retrieved by members of the sysadmin fixed server role at the Publisher and at the Subscriber (for republishing Subscribers). It can also be retrieved by members of the db_owner fixed database role on the publication database, by members of the replmonitor fixed database role at the Distributor, and by users who are members of the publication access list (PAL).

The CompensateForErrors property can be set by members of the sysadmin fixed server role at the Publisher. It can also be set by members of the db_owner fixed database role on the publication database.

Retrieving CompensateForErrors is equivalent to executing sp_helpmergearticle (Transact-SQL).

Setting CompensateForErrors is equivalent to executing sp_addmergearticle (Transact-SQL) or sp_changemergearticle (Transact-SQL).

This namespace, class, or member is supported only in version 2.0 of the Microsoft .NET Framework.

Sécurité des threads

Any public static (Shared in Microsoft Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Plateformes

Plateformes de développement

Pour obtenir la liste des plateformes prises en charge, consultez Configuration matérielle et logicielle requise pour l'installation de SQL Server 2005.

Plateformes cibles

Pour obtenir la liste des plateformes prises en charge, consultez Configuration matérielle et logicielle requise pour l'installation de SQL Server 2005.

Voir aussi

Référence

MergeArticle Class
MergeArticle Members
Microsoft.SqlServer.Replication Namespace