XML : un débordement de pile FOR XML EXPLICIT s'est produit. Les relations circulaires des balises parentes ne sont pas autorisées

Microsoft.SQLServer.2008.XML___FOR_XML_EXPLICIT_stack_overflow_occurred._Circular_parent_tag_relationships_are_not_allowed_1_5_Rule (Rule)

Knowledge Base article:

Résumé

Le code XML n'est pas correctement structuré car le niveau d'imbrication des balises d'élément a dépassé le nombre de colonnes de la table, une ou plusieurs balises présentent des références circulaires, ou les deux. Pour plus d'informations sur FOR XML EXPLICIT, consultez la rubrique « Utilisation du mode EXPLICIT » de la documentation en ligne.

Solutions

Lorsque vous spécifiez le mode EXPLICIT, vous devez veiller à ce que le code XML généré soit correctement constitué et valide (dans le cas d'un schéma XML-DATA). N'incluez pas de balises d'élément présentant des références circulaires dans la hiérarchie.

Paramètres remplaçables

Nom

Description

Valeur par défaut

Activé

Active ou désactive le flux de travail.

Oui

Priorité

Définit la priorité de l'alerte.

1

Gravité

Définit la gravité de l'alerte.

2

Element properties:

TargetMicrosoft.SQLServer.2008.DBEngine
CategoryEventCollection
EnabledTrue
Event_ID6805
Event Source$Target/Property[Type="SQL!Microsoft.SQLServer.DBEngine"]/ServiceName$
Alert GenerateTrue
Alert SeverityError
Alert PriorityNormal
RemotableTrue
Alert Message
XML : un débordement de pile FOR XML EXPLICIT s'est produit. Les relations circulaires des balises parentes ne sont pas autorisées
{0}
Event LogApplication
CommentMom2008ID='{869ED28C-840A-4EA0-9B39-4CFFDB8E0646}';MOM2008GroupID={467ECC75-C5DA-42BD-955C-A73BBB51AF74}

Member Modules:

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

Source Code:

<Rule ID="Microsoft.SQLServer.2008.XML___FOR_XML_EXPLICIT_stack_overflow_occurred._Circular_parent_tag_relationships_are_not_allowed_1_5_Rule" Target="SQL2008Core!Microsoft.SQLServer.2008.DBEngine" Enabled="true" ConfirmDelivery="true" Remotable="true" Comment="Mom2008ID='{869ED28C-840A-4EA0-9B39-4CFFDB8E0646}';MOM2008GroupID={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" RunAs="SQL!Microsoft.SQLServer.SQLDefaultAccount">
<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="SQL!Microsoft.SQLServer.DBEngine"]/ServiceName$</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery>EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value>6805</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
</And>
</Expression>
</DataSource>
</DataSources>
<WriteActions>
<WriteAction ID="GenerateAlert" TypeID="SystemHealth!System.Health.GenerateAlert">
<Priority>1</Priority>
<Severity>2</Severity>
<AlertMessageId>$MPElement[Name="Microsoft.SQLServer.2008.XML___FOR_XML_EXPLICIT_stack_overflow_occurred._Circular_parent_tag_relationships_are_not_allowed_1_5_Rule.AlertMessage"]$</AlertMessageId>
<AlertParameters>
<AlertParameter1>Event ID: $Data/EventDisplayNumber$. $Data/EventDescription$</AlertParameter1>
</AlertParameters>
<Suppression>
<SuppressionValue/>
</Suppression>
</WriteAction>
</WriteActions>
</Rule>