Paires de fichiers actifs OLTP en mémoire

Microsoft.SQLServer.2014.Monitor.DBFileGroupFx.ActivePairs (UnitMonitor)

L'analyse passe en état critique et émet une alerte lorsque le nombre de paires de fichiers de points de contrôle actifs au sein du groupe de fichiers dépasse le seuil spécifié.

Knowledge Base article:

Résumé

L'analyse passe en état critique et émet une alerte lorsque le nombre de paires de fichiers de points de contrôle actifs au sein du groupe de fichiers dépasse le seuil spécifié.

Lorsque 8 000 CFP sont allouées, aucune nouvelle transaction DML ne peut être exécutée sur les tables à mémoire optimisée durables. Seules les opérations de point de contrôle et de fusion sont autorisées à consommer les entrées restantes.

Causes

La fusion des paires de fichiers de points de contrôle est déclenchée selon une stratégie de fusion interne. Consultez cet article pour obtenir plus d’informations.

Solutions

Exécutez une fusion manuelle et forcez le nettoyage de mémoire comme décrit dans les articles suivants :

Paramètres remplaçables

Nom

Description

Valeur par défaut

Activé

 

Oui

Génère des alertes

 

Oui

Intervalle (en secondes)

L'intervalle de temps récurrent en secondes pendant lequel le workflow est exécuté.

300

Nombre d'échantillons

Indique le nombre de dépassements de seuil d'une valeur mesurée avant la modification de l'état.

6

Retard du script (en millisecondes)

Ce paramètre définit le délai entre les requêtes T-SQL consécutives exécutées par le workflow. Cela peut aider à réduire l'encombrement généré par le workflow s'il existe un nombre important d'objets cible. Veuillez consulter le support de Microsoft avant de modifier ce paramètre.

0

Heure de synchronisation

L'heure de synchronisation spécifiée dans un format de 24 heures. Peut être omise.

 

Seuil

La valeur collectée sera comparée avec ce paramètre.

7900

Délai d'expiration (en secondes)

Spécifie la durée pendant laquelle le workflow est autorisé à être exécuté avant d'être fermé et marqué comme un échec.

180

Element properties:

TargetMicrosoft.SQLServer.2014.DBFileGroupFx
Parent MonitorSystem.Health.PerformanceState
CategoryPerformanceHealth
EnabledTrue
Alert GenerateTrue
Alert SeverityWarning
Alert PriorityNormal
Alert Auto ResolveTrue
Monitor TypeMicrosoft.SQLServer.2014.MonitorType.DBFileGroupFx.ActiveAndNonActiveFiles
RemotableTrue
AccessibilityPublic
Alert Message
MSSQL 2014 : Le nombre total de paires de fichiers de points de contrôle actifs approche de la limite
Le nombre total de paires de fichiers de points de contrôle actifs a atteint le seuil.
Serveur : {1}
Instance SQL Server : {0}
Base de données : {2}
Groupe de fichiers: {3}
Paires de fichiers de points de contrôle actifs : {4}
RunAsDefault

Source Code:

<UnitMonitor ID="Microsoft.SQLServer.2014.Monitor.DBFileGroupFx.ActivePairs" Target="SQL2014Core!Microsoft.SQLServer.2014.DBFileGroupFx" ParentMonitorID="SystemHealth!System.Health.PerformanceState" TypeID="Microsoft.SQLServer.2014.MonitorType.DBFileGroupFx.ActiveAndNonActiveFiles" Accessibility="Public" Enabled="true" Remotable="true" Priority="Normal" ConfirmDelivery="true">
<Category>PerformanceHealth</Category>
<AlertSettings AlertMessage="Microsoft.SQLServer.2014.Monitor.DBFileGroupFx.ActivePairs.AlertMessage">
<AlertOnState>Warning</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>Warning</AlertSeverity>
<AlertParameters>
<AlertParameter1>$Target/Host/Host/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</AlertParameter1>
<AlertParameter2>$Target/Host/Host/Property[Type="SQL2014Core!Microsoft.SQLServer.2014.ServerRole"]/InstanceName$</AlertParameter2>
<AlertParameter3>$Target/Host/Property[Type="SQL2014Core!Microsoft.SQLServer.2014.Database"]/DatabaseName$</AlertParameter3>
<AlertParameter4>$Target/Property[Type="SQL2014Core!Microsoft.SQLServer.2014.FileGroup"]/GroupName$</AlertParameter4>
<AlertParameter5>$Data/Context/Property[@Name='ActivePairs']$</AlertParameter5>
</AlertParameters>
</AlertSettings>
<OperationalStates>
<OperationalState ID="ErrorState" MonitorTypeStateID="ErrorState" HealthState="Warning"/>
<OperationalState ID="SuccessState" MonitorTypeStateID="SuccessState" HealthState="Success"/>
</OperationalStates>
<Configuration>
<IntervalSeconds>300</IntervalSeconds>
<SyncTime/>
<ServerName>$Target/Host/Host/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</ServerName>
<SqlInstanceName>$Target/Host/Host/Property[Type="SQL2014Core!Microsoft.SQLServer.2014.ServerRole"]/InstanceName$</SqlInstanceName>
<DatabaseName>$Target/Host/Property[Type="SQL2014Core!Microsoft.SQLServer.2014.Database"]/DatabaseName$</DatabaseName>
<Value>$Data/Property[@Name='ActivePairs']$</Value>
<Threshold>7900</Threshold>
<TimeoutSeconds>180</TimeoutSeconds>
<ScriptDelayMsec>0</ScriptDelayMsec>
<NumSamples>6</NumSamples>
</Configuration>
</UnitMonitor>