Intra-query parallelism caused your server command to deadlock. Rerun the query without intra-query parallelism by using the query hint option (maxdop 1).

Microsoft.SQLServer.2000.Intra_query_parallelism_caused_your_server_command_to_deadlock__Rerun_the_query_without_intra_query_parallelism_by_using_the_query_hint_option__maxdop_1 (Rule)

Knowledge Base article:

Causes

On a multiprocessor computer, SQL Server determines at execution time if the current system workload and configuration information allow for parallel query execution for a query that could benefit from a parallel plan. SQL Server re-examines the optimal number of thread decisions each time a query execution plan is retrieved from the procedure cache. For example, one execution of a query can result in use of a serial plan, a later execution of the same query can result in a parallel plan using three threads, and a third execution can result in a parallel plan using four threads.

You may see the above error if one or more of the threads used by the parallel query deadlocks on another thread within the same query. Since the number of threads used at each execution can vary, and the entire plan can change with a change in data or statistics, you may not see the error every time you execute the query.

Resolutions

Follow these steps:

External

For more information about parallelism, see "Deadlocks Involving Parallelism" and "Degree of Parallelism" in Books Online and Microsoft Knowledge Base article 837983.

Element properties:

TargetMicrosoft.SQLServer.2000.DBEngine
CategoryEventCollection
EnabledTrue
Event Source$Target/Property[Type="SQL!Microsoft.SQLServer.DBEngine"]/ServiceName$
Alert GenerateTrue
Alert SeverityWarning
Alert PriorityNormal
RemotableTrue
Alert Message
Intra-query parallelism caused your server command to deadlock. Rerun the query without intra-query parallelism by using the query hint option (maxdop 1).
{0}
Event LogApplication
CommentMom2005ID='{4082770E-9E9D-40E2-A900-DA9194F9B996}'

Member Modules:

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

Source Code:

<Rule ID="Microsoft.SQLServer.2000.Intra_query_parallelism_caused_your_server_command_to_deadlock__Rerun_the_query_without_intra_query_parallelism_by_using_the_query_hint_option__maxdop_1" Target="SQL2000Core!Microsoft.SQLServer.2000.DBEngine" Enabled="true" Comment="Mom2005ID='{4082770E-9E9D-40E2-A900-DA9194F9B996}'" Remotable="true">
<Category>EventCollection</Category>
<DataSources>
<DataSource ID="EventDS" 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="SQL!Microsoft.SQLServer.DBEngine"]/ServiceName$</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<RegExExpression>
<ValueExpression>
<XPathQuery>EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>MatchesMOM2005RegularExpression</Operator>
<Pattern>^(17052|17055)$</Pattern>
</RegExExpression>
</Expression>
<Expression>
<RegExExpression>
<ValueExpression>
<XPathQuery>EventDescription</XPathQuery>
</ValueExpression>
<Operator>MatchesMOM2005BooleanRegularExpression</Operator>
<Pattern>((^.*8650 and (not ^.*\n.*8650)) or (^.*8650.*\n.*8650)) AND (NOT ^.*[0-9]+.*8650) AND (NOT ^.*8650[0-9]+)</Pattern>
</RegExExpression>
</Expression>
</And>
</Expression>
</DataSource>
</DataSources>
<WriteActions>
<WriteAction ID="GenerateAlert" TypeID="SystemHealth!System.Health.GenerateAlert">
<Priority>1</Priority>
<Severity>1</Severity>
<AlertOwner>$Data/PublisherName$</AlertOwner>
<AlertMessageId>$MPElement[Name="Microsoft.SQLServer.2000.Intra_query_parallelism_caused_your_server_command_to_deadlock__Rerun_the_query_without_intra_query_parallelism_by_using_the_query_hint_option__maxdop_1.AlertMessage"]$</AlertMessageId>
<AlertParameters>
<AlertParameter1>$Data/EventDescription$</AlertParameter1>
</AlertParameters>
<Suppression>
<SuppressionValue/>
</Suppression>
</WriteAction>
</WriteActions>
</Rule>