MSSQL 2014 : La requête a été annulée parce que son coût estimé est supérieur au seuil configuré. Contactez l'administrateur système

Microsoft.SQLServer.2014.The_query_has_been_canceled_because_the_estimated_cost_of_this_query_exceeds_the_configured_threshold._Contact_the_system_administrator_1_5_Rule (Rule)

Le paramètre de configuration de l'option de limite de coût de l'Administrateur de requêtes est inférieur au coût estimé par l'optimiseur SQL Server pour la requête spécifiée. Par défaut, la valeur 0 est affectée à l'option, ce qui autorise l'exécution de toutes les requêtes. Toutefois, sur cette instance de SQL Server, une limite supérieure a été spécifiée en affectant à l'option un nombre supérieur à 0. Les plans de requêtes ayant un coût estimé supérieur à cette valeur ne sont pas démarrés.

Knowledge Base article:

Résumé

Le paramètre de configuration de l’option de limite de coût (query governor cost limit) de l’Administrateur de requêtes est inférieur au coût estimé par l’optimiseur SQL Server pour la requête spécifiée. Par défaut, la valeur 0 est affectée à l’option query governor cost limit, ce qui autorise l’exécution de toutes les requêtes. Toutefois, sur cette instance de SQL Server, une limite supérieure a été spécifiée en affectant à l’option un nombre supérieur à 0. Les plans de requêtes ayant un coût estimé supérieur à cette valeur ne sont pas démarrés.

Pour plus d'informations, consultez « Option query governor cost limit », « Procédure de définition de la limite de coût de l'administrateur de requêtes (Enterprise Manager) » et « Recommandations pour le paramétrage des requêtes » dans la documentation en ligne.

Solutions

Chacune des actions suivantes empêchera le message de s’afficher pour cette requête :

Paramètres remplaçables

Nom

Description

Valeur par défaut

Activé

 

Oui

Génère des alertes

 

Oui

Priorité

 

1

Severité

 

1

Element properties:

TargetMicrosoft.SQLServer.2014.DBEngine
CategoryEventCollection
EnabledTrue
Event_ID8649
Event Source$Target/Property[Type="SQL2014Core!Microsoft.SQLServer.2014.DBEngine"]/ServiceName$
Alert GenerateTrue
Alert SeverityWarning
Alert PriorityNormal
RemotableTrue
Alert Message
MSSQL 2014 : La requête a été annulée parce que son coût estimé est supérieur au seuil configuré. Contactez l'administrateur système
{0}
Event LogApplication
CommentMom2014ID='{74138FB8-4CBA-480B-82D1-C5456A38AA4A}';MOM2014GroupID={467ECC75-C5DA-42BD-955C-A73BBB51AF74}

Member Modules:

ID Module Type TypeId RunAs 
_F6DA1507_12AF_11D3_AB21_00A0C98620CE_ DataSource Microsoft.Windows.EventProvider Default
GenerateAlert WriteAction System.Health.GenerateAlert Default

Source Code:

<Rule ID="Microsoft.SQLServer.2014.The_query_has_been_canceled_because_the_estimated_cost_of_this_query_exceeds_the_configured_threshold._Contact_the_system_administrator_1_5_Rule" Target="SQL2014Core!Microsoft.SQLServer.2014.DBEngine" Enabled="true" ConfirmDelivery="true" Remotable="true" Comment="Mom2014ID='{74138FB8-4CBA-480B-82D1-C5456A38AA4A}';MOM2014GroupID={467ECC75-C5DA-42BD-955C-A73BBB51AF74}">
<Category>EventCollection</Category>
<DataSources>
<DataSource ID="_F6DA1507_12AF_11D3_AB21_00A0C98620CE_" Comment="{F6DA1507-12AF-11D3-AB21-00A0C98620CE}" TypeID="Windows!Microsoft.Windows.EventProvider">
<ComputerName>$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</ComputerName>
<LogName>Application</LogName>
<Expression>
<And>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery>PublisherName</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value>$Target/Property[Type="SQL2014Core!Microsoft.SQLServer.2014.DBEngine"]/ServiceName$</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery>EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value>8649</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
</And>
</Expression>
</DataSource>
</DataSources>
<WriteActions>
<WriteAction ID="GenerateAlert" TypeID="SystemHealth!System.Health.GenerateAlert">
<Priority>1</Priority>
<Severity>1</Severity>
<AlertMessageId>$MPElement[Name="Microsoft.SQLServer.2014.The_query_has_been_canceled_because_the_estimated_cost_of_this_query_exceeds_the_configured_threshold._Contact_the_system_administrator_1_5_Rule.AlertMessage"]$</AlertMessageId>
<AlertParameters>
<AlertParameter1>$Data/EventDescription$</AlertParameter1>
</AlertParameters>
<Suppression>
<SuppressionValue/>
</Suppression>
</WriteAction>
</WriteActions>
</Rule>