From 902b8da195231c86796be445358ace2041d11f12 Mon Sep 17 00:00:00 2001 From: peter Date: Fri, 14 Jun 2019 20:37:12 +0200 Subject: [PATCH] don't complain about too many deprioritizations on a huge number of cores (EA-144914 - assert: CoreProgressManager.suppressPrioritizing) GitOrigin-RevId: 89de28371a303cbce91af1c65742abc039600ca5 --- .../openapi/progress/impl/CoreProgressManager.java | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/platform/core-impl/src/com/intellij/openapi/progress/impl/CoreProgressManager.java b/platform/core-impl/src/com/intellij/openapi/progress/impl/CoreProgressManager.java index 09460459428c..9db62b242327 100644 --- a/platform/core-impl/src/com/intellij/openapi/progress/impl/CoreProgressManager.java +++ b/platform/core-impl/src/com/intellij/openapi/progress/impl/CoreProgressManager.java @@ -28,10 +28,7 @@ import org.jetbrains.annotations.*; import javax.swing.*; import java.util.*; -import java.util.concurrent.Future; -import java.util.concurrent.RejectedExecutionException; -import java.util.concurrent.ScheduledFuture; -import java.util.concurrent.TimeUnit; +import java.util.concurrent.*; import java.util.concurrent.atomic.AtomicInteger; import java.util.concurrent.atomic.AtomicReference; import java.util.concurrent.locks.LockSupport; @@ -736,7 +733,7 @@ public class CoreProgressManager extends ProgressManager implements Disposable { @ApiStatus.Internal public void suppressPrioritizing() { synchronized (myPrioritizationLock) { - if (++myDeprioritizations == 100) { + if (++myDeprioritizations == 100 + ForkJoinPool.getCommonPoolParallelism() * 2) { Attachment attachment = new Attachment("threadDump.txt", ThreadDumper.dumpThreadsToString()); attachment.setIncluded(true); LOG.error("A suspiciously high nesting of suppressPrioritizing, forgot to call restorePrioritizing?", attachment);