Skip to content

Commit 608c1fd

Browse files
Merge pull request #342 from erikdarlingdata/fix/rule8-skew-thresholds
Rule 8: Lower parallel skew thresholds, remove 4-thread minimum
2 parents 153ccc7 + b22a476 commit 608c1fd

2 files changed

Lines changed: 4 additions & 2 deletions

File tree

Dashboard/Services/PlanAnalyzer.cs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -304,7 +304,8 @@ private static void AnalyzeNode(PlanNode node, PlanStatement stmt)
304304
{
305305
var maxThread = node.PerThreadStats.OrderByDescending(t => t.ActualRows).First();
306306
var skewRatio = (double)maxThread.ActualRows / totalRows;
307-
if (skewRatio >= 0.9 && node.PerThreadStats.Count >= 4)
307+
var skewThreshold = node.PerThreadStats.Count == 2 ? 0.75 : 0.50;
308+
if (skewRatio >= skewThreshold)
308309
{
309310
node.Warnings.Add(new PlanWarning
310311
{

Lite/Services/PlanAnalyzer.cs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -304,7 +304,8 @@ private static void AnalyzeNode(PlanNode node, PlanStatement stmt)
304304
{
305305
var maxThread = node.PerThreadStats.OrderByDescending(t => t.ActualRows).First();
306306
var skewRatio = (double)maxThread.ActualRows / totalRows;
307-
if (skewRatio >= 0.9 && node.PerThreadStats.Count >= 4)
307+
var skewThreshold = node.PerThreadStats.Count == 2 ? 0.75 : 0.50;
308+
if (skewRatio >= skewThreshold)
308309
{
309310
node.Warnings.Add(new PlanWarning
310311
{

0 commit comments

Comments
 (0)