You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
"EstimatedDOPIsOne"=>"Estimated DOP is 1 (the plan's estimated cost was below the cost threshold for parallelism)",
143
+
144
+
// Edition/environment limitations
138
145
"NoParallelPlansInDesktopOrExpressEdition"=>"Express/Desktop edition does not support parallelism",
146
+
"NoParallelCreateIndexInNonEnterpriseEdition"=>"Parallel index creation requires Enterprise edition",
147
+
"NoParallelPlansDuringUpgrade"=>"Parallel plans disabled during upgrade",
148
+
"NoParallelForPDWCompilation"=>"Parallel plans not supported for PDW compilation",
149
+
"NoParallelForCloudDBReplication"=>"Parallel plans not supported during cloud DB replication",
150
+
151
+
// Query constructs that block parallelism (actionable)
139
152
"CouldNotGenerateValidParallelPlan"=>"Optimizer could not generate a valid parallel plan. Common causes: scalar UDFs, inserts into table variables, certain system functions, or OPTION (MAXDOP 1) hints",
140
-
"QueryHintNoParallelSet"=>"OPTION (MAXDOP 1) hint forces serial execution",
153
+
"TSQLUserDefinedFunctionsNotParallelizable"=>"T-SQL scalar UDF prevents parallelism. Rewrite as an inline table-valued function, or on SQL Server 2019+ check if the UDF is eligible for automatic inlining",
154
+
"CLRUserDefinedFunctionRequiresDataAccess"=>"CLR UDF with data access prevents parallelism",
155
+
"NonParallelizableIntrinsicFunction"=>"Non-parallelizable intrinsic function in the query",
156
+
"TableVariableTransactionsDoNotSupportParallelNestedTransaction"=>"Table variable transaction prevents parallelism. Consider using a #temp table instead",
157
+
"UpdatingWritebackVariable"=>"Updating a writeback variable prevents parallelism",
158
+
"DMLQueryReturnsOutputToClient"=>"DML with OUTPUT clause returning results to client prevents parallelism",
159
+
"MixedSerialAndParallelOnlineIndexBuildNotSupported"=>"Mixed serial/parallel online index build not supported",
160
+
"NoRangesResumableCreate"=>"Resumable index create cannot use parallelism for this operation",
161
+
162
+
// Cursor limitations
163
+
"NoParallelCursorFetchByBookmark"=>"Cursor fetch by bookmark cannot use parallelism",
164
+
"NoParallelDynamicCursor"=>"Dynamic cursors cannot use parallelism",
165
+
"NoParallelFastForwardCursor"=>"Fast-forward cursors cannot use parallelism",
166
+
167
+
// Memory-optimized / natively compiled
168
+
"NoParallelForMemoryOptimizedTables"=>"Memory-optimized tables do not support parallel plans",
169
+
"NoParallelForDmlOnMemoryOptimizedTable"=>"DML on memory-optimized tables cannot use parallelism",
170
+
"NoParallelForNativelyCompiledModule"=>"Natively compiled modules do not support parallelism",
171
+
172
+
// Remote queries
173
+
"NoParallelWithRemoteQuery"=>"Remote queries cannot use parallelism",
174
+
"NoRemoteParallelismForMatrix"=>"Remote parallelism not available for this query shape",
175
+
141
176
_ =>stmt.NonParallelPlanReason
142
177
};
143
178
144
-
// Warn when the user forced serial or something in the query blocks parallelism.
145
-
// Info only for passive reasons (cost below threshold, edition limitation).
0 commit comments