Running a generator inside a Project Check with/without a runWriteAction?

We managed to run a generator from a transformation menu (or other editor components), which allows us to inform the user that the result of their specification has changed in a not-backwards compatible way. We prefer doing this via the existing generator because otherwise we need to write and maintain the same transformation code twice (or write our own generator-language as well).

We ran into a problem when running the same generator from a checking rule (to have it detect a breaking change during an explicit Check Project). The generator produces its results with a call to TransientModelProvider.PublishAll(), which needs to be run inside a ModelAccess.runWriteAction(). However, any code (even when started from another thread) within a runWriteAction is ran after the Project Check finishes, which is to late to give the error/warning/info messages to the user. Is there a way to work around this or a better solution?

We believe the generator only writes transient models, which can refer to roots in project models but not the other way around, so it should not interfere with the root/models in the project that is being checked? We only need to inspect one root produced by the generator and compare it with an existing root in the project. Is there a way for the check project thread to not take the lock for writing transient models? Is there a maybe a way to separate the project and transients over different repositories?

Any experiences with this or advice is appreciated. Kind regards, Arjen

9 comments
Comment actions Permalink

That's an excellent example of m2m use I was longing for years! Unfortunately, right now this scenario is not fully supported due to very limited interest to use Generator out of regular make process. Indeed, repository for transient transformation models has to be separate from the one of the project, that's why TransientModelsProvider takes SRepository, so that one can create own TransientModelsProvider to use instead of regular TransientModelsComponent (the one associated with a project repository). However, we still have unresolved issues with read access in multiple repository scenario, and didn't pay attention to this functionality for quite some time (due to lack of interest from users, as I mentioned above).

I hope we can find a workaround for you now, as publishAll is necessary when you need transformation results to become public for wide audience. If you consume transformation results right away, there's no need to publish models into a repository. What API do you use to start transformation? In GenerationFacade, there's #process() method that takes List<GeneratorTask>. It needs 'read' for input model's repository, and doesn't publish transients itself (responsibility of client code). Your code would need to create transient module (TMC#createModule()) and associate (TMC#associate()) it with GeneratorTask prior to #process(). Once m2m is over, you can use transient module (TransientModelsProvider#getModule(GeneratorTask)) to look up your output, or pick GenerationStatus and output model it supplies from GeneratorTaskListener.

1
Comment actions Permalink

We needed publishAll to show the diff but ofcourse this is only usefull in an interactive context and not needed for a checking rule.
I tried to do what you described (transientModelProvider.getModule(task)), but I don't see any modules or modelRoots.

final ModelGenerationPlan plan = this.getGenerationPlan();
final GenerationOptions generationOptions = GenerationOptions.getDefaults().customPlan(model, plan).create();
final IMessageHandler messageHandler = getMessageHandler();
final TransientModelsProvider transientModelProvider = new TransientModelsProvider(this.repo, null);
final EmptyProgressMonitor progressMonitor = new EmptyProgressMonitor();
final GenerationTaskRecorder<GeneratorTask> taskHandler = new GenerationTaskRecorder<GeneratorTask>(null);
final GeneratorTaskBase task = new GeneratorTaskBase(model);
transientModelProvider.associate(task, transientModelProvider.createModule(moduleName));
modelAccess.runReadAction({ =>
  GenerationFacade facade = new GenerationFacade(repo, generationOptions);
  facade.messages(messageHandler); facade.transients(transientModelProvider);  facade.taskHandler(taskHandler);
  facade.process(progressMonitor, Collections.singletonList(task));
});
foreach module in transientModelProvider.getModules() {
  System.out.println(module.getClass() + " : " + module.getModuleName());
}

Could you please have a look at my attempt and give me some more help? I also don't know how to get to GenerationStatus.

0
Comment actions Permalink

taskHandler.getAllRecorded() gives you GenerationStatus for all completed tasks

TMC.getModules() gives you access to published modules only. Use TMC.getModule(GeneratorTask task) to access modules that were not published yet. However, in your case it's easier to go with GenerationStatus.

0
Comment actions Permalink

Thank you for the quick reply! It works fine as long as we run it in a separate thread.

0
Comment actions Permalink

I suppose checking rule holds read lock for a repository with input models, and Generator doesn't need more, hence same thread as checking rule sounds as a possible approach. Might be not very effective provided transformation could take a while, but will do. The only idea I've got is that it get stuck with parallel transformations (separate threads get started in addition to the one you run transformation from).  Did you find out why same thread didn't work? Any lock waiting? If you can create a thread dump at that moment, would be helpful to understand the cause. BTW,  single-threaded transformation might be worth trying anyway.

0
Comment actions Permalink

This is the threaddump just after facade.process(progressMonitor, Collections.singletonList(task)) returned (isntantly). I'm not starting any threads and I removed all modelaccess.runReadAction (as Check Project already has read access). The taskHandler.getAllRecorded() returns an empty list. I don't know how to debug this; can you spot anything here? (Is there a way to attach a file to a post?)

"Reference Handler" daemon prio=10 Id=2 RUNNABLE
at java.base@11.0.11/java.lang.ref.Reference.waitForReferencePendingList(Native Method)
at java.base@11.0.11/java.lang.ref.Reference.processPendingReferences(Reference.java:241)
at java.base@11.0.11/java.lang.ref.Reference$ReferenceHandler.run(Reference.java:213)


"Finalizer" daemon prio=8 Id=3 WAITING on java.lang.ref.ReferenceQueue$Lock@31997ffa
at java.base@11.0.11/java.lang.Object.wait(Native Method)
- waiting on java.lang.ref.ReferenceQueue$Lock@31997ffa
at java.base@11.0.11/java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:155)
at java.base@11.0.11/java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:176)
at java.base@11.0.11/java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:170)


"Signal Dispatcher" daemon prio=9 Id=4 RUNNABLE


"Attach Listener" daemon prio=5 Id=5 RUNNABLE


"Common-Cleaner" daemon prio=8 Id=10 TIMED_WAITING on java.lang.ref.ReferenceQueue$Lock@100de59
at java.base@11.0.11/java.lang.Object.wait(Native Method)
- waiting on java.lang.ref.ReferenceQueue$Lock@100de59
at java.base@11.0.11/java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:155)
at java.base@11.0.11/jdk.internal.ref.CleanerImpl.run(CleanerImpl.java:148)
at java.base@11.0.11/java.lang.Thread.run(Thread.java:829)
at java.base@11.0.11/jdk.internal.misc.InnocuousThread.run(InnocuousThread.java:134)


"DestroyJavaVM" prio=5 Id=12 RUNNABLE


"Periodic tasks thread" daemon prio=5 Id=13 TIMED_WAITING on java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject@557e74cb
at java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method)
- waiting on java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject@557e74cb
at java.base@11.0.11/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:234)
at java.base@11.0.11/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2123)
at java.base@11.0.11/java.util.concurrent.DelayQueue.take(DelayQueue.java:229)
at com.intellij.util.concurrency.AppDelayQueue.lambda$new$0(AppDelayQueue.java:26)
at com.intellij.util.concurrency.AppDelayQueue$$Lambda$35/0x00000008000e6840.run(Unknown Source)
at java.base@11.0.11/java.lang.Thread.run(Thread.java:829)


"Java2D Disposer" daemon prio=10 Id=19 WAITING on java.lang.ref.ReferenceQueue$Lock@40200f22
at java.base@11.0.11/java.lang.Object.wait(Native Method)
- waiting on java.lang.ref.ReferenceQueue$Lock@40200f22
at java.base@11.0.11/java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:155)
at java.base@11.0.11/java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:176)
at java.desktop@11.0.11/sun.java2d.Disposer.run(Disposer.java:144)
at java.base@11.0.11/java.lang.Thread.run(Thread.java:829)


"AWT-Shutdown" prio=4 Id=20 WAITING on java.lang.Object@665ef3c1
at java.base@11.0.11/java.lang.Object.wait(Native Method)
- waiting on java.lang.Object@665ef3c1
at java.base@11.0.11/java.lang.Object.wait(Object.java:328)
at java.desktop@11.0.11/sun.awt.AWTAutoShutdown.run(AWTAutoShutdown.java:291)
at java.base@11.0.11/java.lang.Thread.run(Thread.java:829)


"AWT-Windows" daemon prio=6 Id=21 RUNNABLE
at java.desktop@11.0.11/sun.awt.windows.WToolkit.eventLoop(Native Method)
at java.desktop@11.0.11/sun.awt.windows.WToolkit.run(WToolkit.java:308)
at java.base@11.0.11/java.lang.Thread.run(Thread.java:829)


"AWT-EventQueue-0" prio=6 Id=23 WAITING on java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject@21e40986
at java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method)
- waiting on java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject@21e40986
at java.base@11.0.11/java.util.concurrent.locks.LockSupport.park(LockSupport.java:194)
at java.base@11.0.11/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2081)
at java.desktop@11.0.11/java.awt.EventQueue.getNextEvent(EventQueue.java:572)
at com.intellij.ide.IdeEventQueue.lambda$getNextEvent$10(IdeEventQueue.java:676)
at com.intellij.ide.IdeEventQueue$$Lambda$667/0x0000000800896840.compute(Unknown Source)
at com.intellij.openapi.application.impl.ApplicationImpl.runUnlockingIntendedWrite(ApplicationImpl.java:807)
at com.intellij.ide.IdeEventQueue.getNextEvent(IdeEventQueue.java:676)
...


"Netty Builtin Server 1" prio=4 Id=24 RUNNABLE (in native)
at java.base@11.0.11/sun.nio.ch.WindowsSelectorImpl$SubSelector.poll0(Native Method)
at java.base@11.0.11/sun.nio.ch.WindowsSelectorImpl$SubSelector.poll(WindowsSelectorImpl.java:357)
at java.base@11.0.11/sun.nio.ch.WindowsSelectorImpl.doSelect(WindowsSelectorImpl.java:182)
at java.base@11.0.11/sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:124)
- locked io.netty.channel.nio.SelectedSelectionKeySet@2e3da5d7
- locked sun.nio.ch.WindowsSelectorImpl@6382e436
at java.base@11.0.11/sun.nio.ch.SelectorImpl.select(SelectorImpl.java:141)
at io.netty.channel.nio.SelectedSelectionKeySetSelector.select(SelectedSelectionKeySetSelector.java:68)
at io.netty.channel.nio.NioEventLoop.select(NioEventLoop.java:810)
at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:457)
...


"MPS interrupting thread" prio=6 Id=33 WAITING on java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject@1288b884
at java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method)
- waiting on java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject@1288b884
at java.base@11.0.11/java.util.concurrent.locks.LockSupport.park(LockSupport.java:194)
at java.base@11.0.11/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2081)
at java.base@11.0.11/java.util.concurrent.DelayQueue.take(DelayQueue.java:217)
at jetbrains.mps.smodel.TryRunPlatformWriteHelper.lambda$new$0(TryRunPlatformWriteHelper.java:59)
at jetbrains.mps.smodel.TryRunPlatformWriteHelper$$Lambda$394/0x0000000800562440.run(Unknown Source)
at java.base@11.0.11/java.lang.Thread.run(Thread.java:829)


"Netty Builtin Server 2" prio=4 Id=34 RUNNABLE (in native)
at java.base@11.0.11/sun.nio.ch.WindowsSelectorImpl$SubSelector.poll0(Native Method)
at java.base@11.0.11/sun.nio.ch.WindowsSelectorImpl$SubSelector.poll(WindowsSelectorImpl.java:357)
at java.base@11.0.11/sun.nio.ch.WindowsSelectorImpl.doSelect(WindowsSelectorImpl.java:182)
at java.base@11.0.11/sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:124)
- locked io.netty.channel.nio.SelectedSelectionKeySet@39ed1ebf
- locked sun.nio.ch.WindowsSelectorImpl@7a3d0748
at java.base@11.0.11/sun.nio.ch.SelectorImpl.select(SelectorImpl.java:141)
at io.netty.channel.nio.SelectedSelectionKeySetSelector.select(SelectedSelectionKeySetSelector.java:68)
at io.netty.channel.nio.NioEventLoop.select(NioEventLoop.java:810)
at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:457)
...


"fsnotifier64.exe" prio=4 Id=35 RUNNABLE (in native)
at java.base@11.0.11/java.lang.ProcessImpl.waitForInterruptibly(Native Method)
at java.base@11.0.11/java.lang.ProcessImpl.waitFor(ProcessImpl.java:554)
at com.intellij.execution.process.ProcessWaitFor.lambda$new$0(ProcessWaitFor.java:38)
at com.intellij.execution.process.ProcessWaitFor$$Lambda$560/0x00000008006aa040.run(Unknown Source)
at com.intellij.util.ConcurrencyUtil.runUnderThreadName(ConcurrencyUtil.java:213)
at com.intellij.execution.process.ProcessWaitFor.lambda$new$1(ProcessWaitFor.java:33)
at com.intellij.execution.process.ProcessWaitFor$$Lambda$557/0x00000008006ab440.run(Unknown Source)
at java.base@11.0.11/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
...

Number of locked synchronizers = 1
- java.util.concurrent.ThreadPoolExecutor$Worker@b340496


"BaseDataReader: output stream of fsnotifier64.exe" prio=4 Id=36 RUNNABLE
at java.base@11.0.11/java.io.FileInputStream.readBytes(Native Method)
at java.base@11.0.11/java.io.FileInputStream.read(FileInputStream.java:279)
at java.base@11.0.11/java.io.BufferedInputStream.read1(BufferedInputStream.java:290)
at java.base@11.0.11/java.io.BufferedInputStream.read(BufferedInputStream.java:351)
- locked java.io.BufferedInputStream@35ecdbee
at java.base@11.0.11/sun.nio.cs.StreamDecoder.readBytes(StreamDecoder.java:284)
at java.base@11.0.11/sun.nio.cs.StreamDecoder.implRead(StreamDecoder.java:326)
at java.base@11.0.11/sun.nio.cs.StreamDecoder.read(StreamDecoder.java:178)
- locked com.intellij.util.io.BaseInputStreamReader@413b2a31
at java.base@11.0.11/java.io.InputStreamReader.read(InputStreamReader.java:181)
...

Number of locked synchronizers = 1
- java.util.concurrent.ThreadPoolExecutor$Worker@1f8c2a2d


"BaseDataReader: error stream of fsnotifier64.exe" prio=4 Id=37 RUNNABLE (in native)
at java.base@11.0.11/java.io.FileInputStream.readBytes(Native Method)
at java.base@11.0.11/java.io.FileInputStream.read(FileInputStream.java:279)
at java.base@11.0.11/sun.nio.cs.StreamDecoder.readBytes(StreamDecoder.java:284)
at java.base@11.0.11/sun.nio.cs.StreamDecoder.implRead(StreamDecoder.java:326)
at java.base@11.0.11/sun.nio.cs.StreamDecoder.read(StreamDecoder.java:178)
- locked com.intellij.util.io.BaseInputStreamReader@10f2dc4f
at java.base@11.0.11/java.io.InputStreamReader.read(InputStreamReader.java:181)
at java.base@11.0.11/java.io.Reader.read(Reader.java:229)
at com.intellij.util.io.BaseOutputReader.readAvailableBlocking(BaseOutputReader.java:134)
...

Number of locked synchronizers = 1
- java.util.concurrent.ThreadPoolExecutor$Worker@534d334d


"TimerQueue" daemon prio=5 Id=43 TIMED_WAITING on java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject@3ab07171
at java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method)
- waiting on java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject@3ab07171
at java.base@11.0.11/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:234)
at java.base@11.0.11/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2123)
at java.base@11.0.11/java.util.concurrent.DelayQueue.take(DelayQueue.java:229)
at java.desktop@11.0.11/javax.swing.TimerQueue.run(TimerQueue.java:171)
at java.base@11.0.11/java.lang.Thread.run(Thread.java:829)

Number of locked synchronizers = 1
- java.util.concurrent.locks.ReentrantLock$NonfairSync@2678e5e


"Highlighter" daemon prio=5 Id=55 WAITING on java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject@2b614d1d
at java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method)
- waiting on java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject@2b614d1d
at java.base@11.0.11/java.util.concurrent.locks.LockSupport.park(LockSupport.java:194)
at java.base@11.0.11/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2081)
at java.base@11.0.11/java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:1170)
at java.base@11.0.11/java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:899)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1054)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1114)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
...


"HighlightUsages" daemon prio=5 Id=59 WAITING on java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject@7cfa9c6d
at java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method)
- waiting on java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject@7cfa9c6d
at java.base@11.0.11/java.util.concurrent.locks.LockSupport.park(LockSupport.java:194)
at java.base@11.0.11/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2081)
at java.base@11.0.11/java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:1170)
at java.base@11.0.11/java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:899)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1054)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1114)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
...


"MPS EDT Executor" daemon prio=5 Id=60 WAITING on java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject@4fa01a1b
at java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method)
- waiting on java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject@4fa01a1b
at java.base@11.0.11/java.util.concurrent.locks.LockSupport.park(LockSupport.java:194)
at java.base@11.0.11/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2081)
at java.base@11.0.11/java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:1170)
at java.base@11.0.11/java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:899)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1054)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1114)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
...


"Swing-Shell" daemon prio=10 Id=64 WAITING on java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject@7622c167
at java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method)
- waiting on java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject@7622c167
at java.base@11.0.11/java.util.concurrent.locks.LockSupport.park(LockSupport.java:194)
at java.base@11.0.11/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2081)
at java.base@11.0.11/java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:433)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1054)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1114)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
at java.desktop@11.0.11/sun.awt.shell.Win32ShellFolderManager2$ComInvoker$1.run(Win32ShellFolderManager2.java:586)
...


"ChangesManager command queue" prio=6 Id=56 WAITING on java.util.LinkedList@71b5fb6c
at java.base@11.0.11/java.lang.Object.wait(Native Method)
- waiting on java.util.LinkedList@71b5fb6c
at java.base@11.0.11/java.lang.Object.wait(Object.java:328)
at jetbrains.mps.vcs.changesmanager.SimpleCommandQueue$MyExecutorThread.run(SimpleCommandQueue.java:100)


"DefaultDispatcher-worker-1" daemon prio=6 Id=131 TIMED_WAITING
at java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method)
at java.base@11.0.11/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:357)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.park(CoroutineScheduler.kt:795)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.tryPark(CoroutineScheduler.kt:740)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:711)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:665)


"DefaultDispatcher-worker-2" daemon prio=6 Id=132 TIMED_WAITING
at java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method)
at java.base@11.0.11/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:357)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.park(CoroutineScheduler.kt:795)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.tryPark(CoroutineScheduler.kt:740)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:711)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:665)


"DefaultDispatcher-worker-3" daemon prio=6 Id=144 TIMED_WAITING
at java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method)
at java.base@11.0.11/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:357)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.park(CoroutineScheduler.kt:795)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.tryPark(CoroutineScheduler.kt:740)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:711)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:665)


"DefaultDispatcher-worker-4" daemon prio=6 Id=145 TIMED_WAITING
at java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method)
at java.base@11.0.11/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:357)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.park(CoroutineScheduler.kt:795)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.tryPark(CoroutineScheduler.kt:740)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:711)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:665)


"Batik CleanerThread" daemon prio=6 Id=1023 WAITING on java.lang.ref.ReferenceQueue$Lock@6d4c6274
at java.base@11.0.11/java.lang.Object.wait(Native Method)
- waiting on java.lang.ref.ReferenceQueue$Lock@6d4c6274
at java.base@11.0.11/java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:155)
at java.base@11.0.11/java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:176)
at org.apache.batik.util.CleanerThread.run(CleanerThread.java:106)


"JobScheduler FJ pool 1/3" daemon prio=4 Id=4087 WAITING on java.util.concurrent.ForkJoinPool@9f2de39
at java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method)
- waiting on java.util.concurrent.ForkJoinPool@9f2de39
at java.base@11.0.11/java.util.concurrent.locks.LockSupport.park(LockSupport.java:194)
at java.base@11.0.11/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1628)
at java.base@11.0.11/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:183)


"qtp1895996854-4303" prio=5 Id=4303 RUNNABLE (in native)
at java.base@11.0.11/sun.nio.ch.WindowsSelectorImpl$SubSelector.poll0(Native Method)
at java.base@11.0.11/sun.nio.ch.WindowsSelectorImpl$SubSelector.poll(WindowsSelectorImpl.java:357)
at java.base@11.0.11/sun.nio.ch.WindowsSelectorImpl.doSelect(WindowsSelectorImpl.java:182)
at java.base@11.0.11/sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:124)
- locked sun.nio.ch.Util$2@51071657
- locked sun.nio.ch.WindowsSelectorImpl@49f5d4e4
at java.base@11.0.11/sun.nio.ch.SelectorImpl.select(SelectorImpl.java:141)
at org.eclipse.jetty.io.ManagedSelector$SelectorProducer.select(ManagedSelector.java:375)
at org.eclipse.jetty.io.ManagedSelector$SelectorProducer.produce(ManagedSelector.java:304)
at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.doProduce(EatWhatYouKill.java:179)
...


"qtp1895996854-4304" prio=5 Id=4304 RUNNABLE (in native)
at java.base@11.0.11/sun.nio.ch.WindowsSelectorImpl$SubSelector.poll0(Native Method)
at java.base@11.0.11/sun.nio.ch.WindowsSelectorImpl$SubSelector.poll(WindowsSelectorImpl.java:357)
at java.base@11.0.11/sun.nio.ch.WindowsSelectorImpl.doSelect(WindowsSelectorImpl.java:182)
at java.base@11.0.11/sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:124)
- locked sun.nio.ch.Util$2@4fe37931
- locked sun.nio.ch.WindowsSelectorImpl@71c80bed
at java.base@11.0.11/sun.nio.ch.SelectorImpl.select(SelectorImpl.java:141)
at org.eclipse.jetty.io.ManagedSelector$SelectorProducer.select(ManagedSelector.java:375)
at org.eclipse.jetty.io.ManagedSelector$SelectorProducer.produce(ManagedSelector.java:304)
at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.doProduce(EatWhatYouKill.java:179)
...


"qtp1895996854-4305-acceptor-0@2f80334c-ServerConnector@36776cc3{HTTP/1.1,[http/1.1]}{localhost:8080}" prio=3 Id=4305 RUNNABLE (in native)
at java.base@11.0.11/sun.nio.ch.ServerSocketChannelImpl.accept0(Native Method)
at java.base@11.0.11/sun.nio.ch.ServerSocketChannelImpl.accept(ServerSocketChannelImpl.java:533)
at java.base@11.0.11/sun.nio.ch.ServerSocketChannelImpl.accept(ServerSocketChannelImpl.java:285)
at org.eclipse.jetty.server.ServerConnector.accept(ServerConnector.java:379)
at org.eclipse.jetty.server.AbstractConnector$Acceptor.run(AbstractConnector.java:638)
at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:708)
at org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:626)
at java.base@11.0.11/java.lang.Thread.run(Thread.java:829)

Number of locked synchronizers = 1
- java.util.concurrent.locks.ReentrantLock$NonfairSync@18140e2d


"qtp1895996854-4306" prio=5 Id=4306 TIMED_WAITING on java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject@18c54c37
at java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method)
- waiting on java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject@18c54c37
at java.base@11.0.11/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:234)
at java.base@11.0.11/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2123)
at org.eclipse.jetty.util.BlockingArrayQueue.poll(BlockingArrayQueue.java:392)
at org.eclipse.jetty.util.thread.QueuedThreadPool.idleJobPoll(QueuedThreadPool.java:600)
at org.eclipse.jetty.util.thread.QueuedThreadPool.access$800(QueuedThreadPool.java:49)
at org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:663)
at java.base@11.0.11/java.lang.Thread.run(Thread.java:829)


"qtp1895996854-4307" prio=5 Id=4307 TIMED_WAITING on java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject@18c54c37
at java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method)
- waiting on java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject@18c54c37
at java.base@11.0.11/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:234)
at java.base@11.0.11/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2123)
at org.eclipse.jetty.util.BlockingArrayQueue.poll(BlockingArrayQueue.java:392)
at org.eclipse.jetty.util.thread.QueuedThreadPool.idleJobPoll(QueuedThreadPool.java:600)
at org.eclipse.jetty.util.thread.QueuedThreadPool.access$800(QueuedThreadPool.java:49)
at org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:663)
at java.base@11.0.11/java.lang.Thread.run(Thread.java:829)


"qtp1895996854-4308" prio=5 Id=4308 TIMED_WAITING on java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject@18c54c37
at java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method)
- waiting on java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject@18c54c37
at java.base@11.0.11/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:234)
at java.base@11.0.11/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2123)
at org.eclipse.jetty.util.BlockingArrayQueue.poll(BlockingArrayQueue.java:392)
at org.eclipse.jetty.util.thread.QueuedThreadPool.idleJobPoll(QueuedThreadPool.java:600)
at org.eclipse.jetty.util.thread.QueuedThreadPool.access$800(QueuedThreadPool.java:49)
at org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:663)
at java.base@11.0.11/java.lang.Thread.run(Thread.java:829)


"qtp1895996854-4309" prio=5 Id=4309 TIMED_WAITING on java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject@18c54c37
at java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method)
- waiting on java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject@18c54c37
at java.base@11.0.11/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:234)
at java.base@11.0.11/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2123)
at org.eclipse.jetty.util.BlockingArrayQueue.poll(BlockingArrayQueue.java:392)
at org.eclipse.jetty.util.thread.QueuedThreadPool.idleJobPoll(QueuedThreadPool.java:600)
at org.eclipse.jetty.util.thread.QueuedThreadPool.access$800(QueuedThreadPool.java:49)
at org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:663)
at java.base@11.0.11/java.lang.Thread.run(Thread.java:829)


"qtp1895996854-4310" prio=5 Id=4310 TIMED_WAITING on java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject@18c54c37
at java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method)
- waiting on java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject@18c54c37
at java.base@11.0.11/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:234)
at java.base@11.0.11/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2123)
at org.eclipse.jetty.util.BlockingArrayQueue.poll(BlockingArrayQueue.java:392)
at org.eclipse.jetty.util.thread.QueuedThreadPool.idleJobPoll(QueuedThreadPool.java:600)
at org.eclipse.jetty.util.thread.QueuedThreadPool.access$800(QueuedThreadPool.java:49)
at org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:663)
at java.base@11.0.11/java.lang.Thread.run(Thread.java:829)


"ApplicationImpl pooled thread 776" prio=4 Id=4706 TIMED_WAITING on java.util.concurrent.SynchronousQueue$TransferStack@3dc92d7b
at java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method)
- waiting on java.util.concurrent.SynchronousQueue$TransferStack@3dc92d7b
at java.base@11.0.11/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:234)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:462)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:361)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue.poll(SynchronousQueue.java:937)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1053)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1114)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
...


"ApplicationImpl pooled thread 781" prio=4 Id=4714 TIMED_WAITING on java.util.concurrent.SynchronousQueue$TransferStack@3dc92d7b
at java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method)
- waiting on java.util.concurrent.SynchronousQueue$TransferStack@3dc92d7b
at java.base@11.0.11/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:234)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:462)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:361)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue.poll(SynchronousQueue.java:937)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1053)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1114)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
...


"ApplicationImpl pooled thread 782" prio=4 Id=4715 RUNNABLE (in native)
at java.base@11.0.11/java.net.PlainSocketImpl.waitForConnect(Native Method)
at java.base@11.0.11/java.net.PlainSocketImpl.socketConnect(PlainSocketImpl.java:107)
at java.base@11.0.11/java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:399)
- locked java.net.SocksSocketImpl@7f21bb3f
at java.base@11.0.11/java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:242)
at java.base@11.0.11/java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:224)
at java.base@11.0.11/java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)
at java.base@11.0.11/java.net.Socket.connect(Socket.java:609)
at java.base@11.0.11/sun.security.ssl.SSLSocketImpl.connect(SSLSocketImpl.java:289)
...

Number of locked synchronizers = 1
- java.util.concurrent.ThreadPoolExecutor$Worker@32c6955b


"ApplicationImpl pooled thread 783" prio=4 Id=4716 TIMED_WAITING on java.util.concurrent.SynchronousQueue$TransferStack@3dc92d7b
at java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method)
- waiting on java.util.concurrent.SynchronousQueue$TransferStack@3dc92d7b
at java.base@11.0.11/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:234)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:462)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:361)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue.poll(SynchronousQueue.java:937)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1053)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1114)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
...


"ApplicationImpl pooled thread 784" prio=4 Id=4717 TIMED_WAITING on java.util.concurrent.SynchronousQueue$TransferStack@3dc92d7b
at java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method)
- waiting on java.util.concurrent.SynchronousQueue$TransferStack@3dc92d7b
at java.base@11.0.11/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:234)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:462)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:361)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue.poll(SynchronousQueue.java:937)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1053)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1114)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
...


"ApplicationImpl pooled thread 785" prio=4 Id=4724 TIMED_WAITING on java.util.concurrent.SynchronousQueue$TransferStack@3dc92d7b
at java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method)
- waiting on java.util.concurrent.SynchronousQueue$TransferStack@3dc92d7b
at java.base@11.0.11/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:234)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:462)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:361)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue.poll(SynchronousQueue.java:937)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1053)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1114)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
...


"ApplicationImpl pooled thread 789" prio=4 Id=4731 TIMED_WAITING on java.util.concurrent.SynchronousQueue$TransferStack@3dc92d7b
at java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method)
- waiting on java.util.concurrent.SynchronousQueue$TransferStack@3dc92d7b
at java.base@11.0.11/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:234)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:462)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:361)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue.poll(SynchronousQueue.java:937)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1053)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1114)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
...


"ApplicationImpl pooled thread 790" prio=4 Id=4732 TIMED_WAITING on java.util.concurrent.SynchronousQueue$TransferStack@3dc92d7b
at java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method)
- waiting on java.util.concurrent.SynchronousQueue$TransferStack@3dc92d7b
at java.base@11.0.11/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:234)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:462)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:361)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue.poll(SynchronousQueue.java:937)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1053)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1114)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
...


"Thread-207" prio=6 Id=4805 TIMED_WAITING on testspraak.plugin.VersionWatcher@3321d909
at java.base@11.0.11/java.lang.Object.wait(Native Method)
- waiting on testspraak.plugin.VersionWatcher@3321d909
at testspraak.plugin.VersionWatcher.run(VersionWatcher.java:36)
at java.base@11.0.11/java.lang.Thread.run(Thread.java:829)


"I/O pool 165" prio=4 Id=4819 TIMED_WAITING on java.util.concurrent.SynchronousQueue$TransferStack@7aa93819
at java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method)
- waiting on java.util.concurrent.SynchronousQueue$TransferStack@7aa93819
at java.base@11.0.11/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:234)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:462)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:361)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue.poll(SynchronousQueue.java:937)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1053)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1114)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
...


"I/O pool 166" prio=4 Id=4820 TIMED_WAITING on java.util.concurrent.SynchronousQueue$TransferStack@7aa93819
at java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method)
- waiting on java.util.concurrent.SynchronousQueue$TransferStack@7aa93819
at java.base@11.0.11/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:234)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:462)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:361)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue.poll(SynchronousQueue.java:937)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1053)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1114)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
...


"I/O pool 167" prio=4 Id=4821 TIMED_WAITING on java.util.concurrent.SynchronousQueue$TransferStack@7aa93819
at java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method)
- waiting on java.util.concurrent.SynchronousQueue$TransferStack@7aa93819
at java.base@11.0.11/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:234)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:462)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:361)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue.poll(SynchronousQueue.java:937)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1053)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1114)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
...


"ApplicationImpl pooled thread 791" prio=4 Id=4825 TIMED_WAITING on java.util.concurrent.SynchronousQueue$TransferStack@3dc92d7b
at java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method)
- waiting on java.util.concurrent.SynchronousQueue$TransferStack@3dc92d7b
at java.base@11.0.11/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:234)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:462)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:361)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue.poll(SynchronousQueue.java:937)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1053)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1114)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
...


"ApplicationImpl pooled thread 792" prio=4 Id=4826 TIMED_WAITING on java.util.concurrent.SynchronousQueue$TransferStack@3dc92d7b
at java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method)
- waiting on java.util.concurrent.SynchronousQueue$TransferStack@3dc92d7b
at java.base@11.0.11/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:234)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:462)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:361)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue.poll(SynchronousQueue.java:937)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1053)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1114)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
...


"ApplicationImpl pooled thread 793" prio=4 Id=4827 TIMED_WAITING on java.util.concurrent.SynchronousQueue$TransferStack@3dc92d7b
at java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method)
- waiting on java.util.concurrent.SynchronousQueue$TransferStack@3dc92d7b
at java.base@11.0.11/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:234)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:462)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:361)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue.poll(SynchronousQueue.java:937)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1053)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1114)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
...


"ApplicationImpl pooled thread 794" prio=4 Id=4828 TIMED_WAITING on java.util.concurrent.SynchronousQueue$TransferStack@3dc92d7b
at java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method)
- waiting on java.util.concurrent.SynchronousQueue$TransferStack@3dc92d7b
at java.base@11.0.11/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:234)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:462)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:361)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue.poll(SynchronousQueue.java:937)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1053)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1114)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
...


"JobScheduler FJ pool 0/3" daemon prio=4 Id=4829 TIMED_WAITING on java.util.concurrent.ForkJoinPool@9f2de39
at java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method)
- waiting on java.util.concurrent.ForkJoinPool@9f2de39
at java.base@11.0.11/java.util.concurrent.locks.LockSupport.parkUntil(LockSupport.java:275)
at java.base@11.0.11/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1619)
at java.base@11.0.11/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:183)


"JobScheduler FJ pool 2/3" daemon prio=4 Id=4830 WAITING on java.util.concurrent.ForkJoinPool@9f2de39
at java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method)
- waiting on java.util.concurrent.ForkJoinPool@9f2de39
at java.base@11.0.11/java.util.concurrent.locks.LockSupport.park(LockSupport.java:194)
at java.base@11.0.11/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1628)
at java.base@11.0.11/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:183)


"ApplicationImpl pooled thread 795" prio=4 Id=4833 TIMED_WAITING on java.util.concurrent.SynchronousQueue$TransferStack@3dc92d7b
at java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method)
- waiting on java.util.concurrent.SynchronousQueue$TransferStack@3dc92d7b
at java.base@11.0.11/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:234)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:462)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:361)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue.poll(SynchronousQueue.java:937)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1053)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1114)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
...


"ApplicationImpl pooled thread 796" prio=4 Id=4834 TIMED_WAITING on java.util.concurrent.SynchronousQueue$TransferStack@3dc92d7b
at java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method)
- waiting on java.util.concurrent.SynchronousQueue$TransferStack@3dc92d7b
at java.base@11.0.11/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:234)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:462)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:361)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue.poll(SynchronousQueue.java:937)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1053)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1114)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
...


"Thread-211" prio=6 Id=4915 TIMED_WAITING on testspraak.plugin.VersionWatcher@22a49efa
at java.base@11.0.11/java.lang.Object.wait(Native Method)
- waiting on testspraak.plugin.VersionWatcher@22a49efa
at testspraak.plugin.VersionWatcher.run(VersionWatcher.java:36)
at java.base@11.0.11/java.lang.Thread.run(Thread.java:829)


"ApplicationImpl pooled thread 797" prio=4 Id=4916 RUNNABLE
at java.management@11.0.11/sun.management.ThreadImpl.dumpThreads0(Native Method)
at java.management@11.0.11/sun.management.ThreadImpl.dumpAllThreads(ThreadImpl.java:521)
at java.management@11.0.11/sun.management.ThreadImpl.dumpAllThreads(ThreadImpl.java:509)
at servicespraak.behavior.XmlSchemaRegister.getSchema(XmlSchemaRegister.java:154)
at servicespraak.behavior.XmlSchemaRegister.checkSchema(XmlSchemaRegister.java:119)
at servicespraak.typesystem.check_generatedXsd_NonTypesystemRule.applyRule(check_generatedXsd_NonTypesystemRule.java:33)
at jetbrains.mps.newTypesystem.context.typechecking.IncrementalTypechecking.applyRuleToNode(IncrementalTypechecking.java:161)
at jetbrains.mps.newTypesystem.context.component.NonTypeSystemComponent.lambda$applyNonTypesystemRulesToNode$2(NonTypeSystemComponent.java:345)
...

Number of locked synchronizers = 1
- java.util.concurrent.ThreadPoolExecutor$Worker@4eb06fc1


"ApplicationImpl pooled thread 798" prio=4 Id=4917 TIMED_WAITING on java.util.concurrent.SynchronousQueue$TransferStack@3dc92d7b
at java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method)
- waiting on java.util.concurrent.SynchronousQueue$TransferStack@3dc92d7b
at java.base@11.0.11/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:234)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:462)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:361)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue.poll(SynchronousQueue.java:937)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1053)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1114)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
...


"ApplicationImpl pooled thread 799" prio=4 Id=4918 TIMED_WAITING on java.util.concurrent.SynchronousQueue$TransferStack@3dc92d7b
at java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method)
- waiting on java.util.concurrent.SynchronousQueue$TransferStack@3dc92d7b
at java.base@11.0.11/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:234)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:462)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:361)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue.poll(SynchronousQueue.java:937)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1053)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1114)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
...


"ApplicationImpl pooled thread 800" prio=4 Id=4919 TIMED_WAITING on java.util.concurrent.SynchronousQueue$TransferStack@3dc92d7b
at java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method)
- waiting on java.util.concurrent.SynchronousQueue$TransferStack@3dc92d7b
at java.base@11.0.11/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:234)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:462)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:361)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue.poll(SynchronousQueue.java:937)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1053)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1114)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
...


"ApplicationImpl pooled thread 801" prio=4 Id=4920 TIMED_WAITING on java.util.concurrent.SynchronousQueue$TransferStack@3dc92d7b
at java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method)
- waiting on java.util.concurrent.SynchronousQueue$TransferStack@3dc92d7b
at java.base@11.0.11/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:234)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:462)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:361)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue.poll(SynchronousQueue.java:937)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1053)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1114)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
...


"Reference Handler" daemon prio=10 Id=2 RUNNABLE
at java.base@11.0.11/java.lang.ref.Reference.waitForReferencePendingList(Native Method)
at java.base@11.0.11/java.lang.ref.Reference.processPendingReferences(Reference.java:241)
at java.base@11.0.11/java.lang.ref.Reference$ReferenceHandler.run(Reference.java:213)


"Finalizer" daemon prio=8 Id=3 WAITING on java.lang.ref.ReferenceQueue$Lock@31997ffa
at java.base@11.0.11/java.lang.Object.wait(Native Method)
- waiting on java.lang.ref.ReferenceQueue$Lock@31997ffa
at java.base@11.0.11/java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:155)
at java.base@11.0.11/java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:176)
at java.base@11.0.11/java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:170)


"Signal Dispatcher" daemon prio=9 Id=4 RUNNABLE


"Attach Listener" daemon prio=5 Id=5 RUNNABLE


"Common-Cleaner" daemon prio=8 Id=10 TIMED_WAITING on java.lang.ref.ReferenceQueue$Lock@100de59
at java.base@11.0.11/java.lang.Object.wait(Native Method)
- waiting on java.lang.ref.ReferenceQueue$Lock@100de59
at java.base@11.0.11/java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:155)
at java.base@11.0.11/jdk.internal.ref.CleanerImpl.run(CleanerImpl.java:148)
at java.base@11.0.11/java.lang.Thread.run(Thread.java:829)
at java.base@11.0.11/jdk.internal.misc.InnocuousThread.run(InnocuousThread.java:134)


"DestroyJavaVM" prio=5 Id=12 RUNNABLE


"Periodic tasks thread" daemon prio=5 Id=13 TIMED_WAITING on java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject@557e74cb
at java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method)
- waiting on java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject@557e74cb
at java.base@11.0.11/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:234)
at java.base@11.0.11/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2123)
at java.base@11.0.11/java.util.concurrent.DelayQueue.take(DelayQueue.java:229)
at com.intellij.util.concurrency.AppDelayQueue.lambda$new$0(AppDelayQueue.java:26)
at com.intellij.util.concurrency.AppDelayQueue$$Lambda$35/0x00000008000e6840.run(Unknown Source)
at java.base@11.0.11/java.lang.Thread.run(Thread.java:829)


"Java2D Disposer" daemon prio=10 Id=19 WAITING on java.lang.ref.ReferenceQueue$Lock@40200f22
at java.base@11.0.11/java.lang.Object.wait(Native Method)
- waiting on java.lang.ref.ReferenceQueue$Lock@40200f22
at java.base@11.0.11/java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:155)
at java.base@11.0.11/java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:176)
at java.desktop@11.0.11/sun.java2d.Disposer.run(Disposer.java:144)
at java.base@11.0.11/java.lang.Thread.run(Thread.java:829)


"AWT-Shutdown" prio=4 Id=20 WAITING on java.lang.Object@665ef3c1
at java.base@11.0.11/java.lang.Object.wait(Native Method)
- waiting on java.lang.Object@665ef3c1
at java.base@11.0.11/java.lang.Object.wait(Object.java:328)
at java.desktop@11.0.11/sun.awt.AWTAutoShutdown.run(AWTAutoShutdown.java:291)
at java.base@11.0.11/java.lang.Thread.run(Thread.java:829)


"AWT-Windows" daemon prio=6 Id=21 RUNNABLE (in native)
at java.desktop@11.0.11/sun.awt.windows.WToolkit.eventLoop(Native Method)
at java.desktop@11.0.11/sun.awt.windows.WToolkit.run(WToolkit.java:308)
at java.base@11.0.11/java.lang.Thread.run(Thread.java:829)


"AWT-EventQueue-0" prio=6 Id=23 WAITING on java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject@21e40986
at java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method)
- waiting on java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject@21e40986
at java.base@11.0.11/java.util.concurrent.locks.LockSupport.park(LockSupport.java:194)
at java.base@11.0.11/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2081)
at java.desktop@11.0.11/java.awt.EventQueue.getNextEvent(EventQueue.java:572)
at com.intellij.ide.IdeEventQueue.lambda$getNextEvent$10(IdeEventQueue.java:676)
at com.intellij.ide.IdeEventQueue$$Lambda$667/0x0000000800896840.compute(Unknown Source)
at com.intellij.openapi.application.impl.ApplicationImpl.runUnlockingIntendedWrite(ApplicationImpl.java:807)
at com.intellij.ide.IdeEventQueue.getNextEvent(IdeEventQueue.java:676)
...


"Netty Builtin Server 1" prio=4 Id=24 RUNNABLE (in native)
at java.base@11.0.11/sun.nio.ch.WindowsSelectorImpl$SubSelector.poll0(Native Method)
at java.base@11.0.11/sun.nio.ch.WindowsSelectorImpl$SubSelector.poll(WindowsSelectorImpl.java:357)
at java.base@11.0.11/sun.nio.ch.WindowsSelectorImpl.doSelect(WindowsSelectorImpl.java:182)
at java.base@11.0.11/sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:124)
- locked io.netty.channel.nio.SelectedSelectionKeySet@2e3da5d7
- locked sun.nio.ch.WindowsSelectorImpl@6382e436
at java.base@11.0.11/sun.nio.ch.SelectorImpl.select(SelectorImpl.java:141)
at io.netty.channel.nio.SelectedSelectionKeySetSelector.select(SelectedSelectionKeySetSelector.java:68)
at io.netty.channel.nio.NioEventLoop.select(NioEventLoop.java:810)
at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:457)
...


"MPS interrupting thread" prio=6 Id=33 WAITING on java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject@1288b884
at java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method)
- waiting on java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject@1288b884
at java.base@11.0.11/java.util.concurrent.locks.LockSupport.park(LockSupport.java:194)
at java.base@11.0.11/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2081)
at java.base@11.0.11/java.util.concurrent.DelayQueue.take(DelayQueue.java:217)
at jetbrains.mps.smodel.TryRunPlatformWriteHelper.lambda$new$0(TryRunPlatformWriteHelper.java:59)
at jetbrains.mps.smodel.TryRunPlatformWriteHelper$$Lambda$394/0x0000000800562440.run(Unknown Source)
at java.base@11.0.11/java.lang.Thread.run(Thread.java:829)


"Netty Builtin Server 2" prio=4 Id=34 RUNNABLE (in native)
at java.base@11.0.11/sun.nio.ch.WindowsSelectorImpl$SubSelector.poll0(Native Method)
at java.base@11.0.11/sun.nio.ch.WindowsSelectorImpl$SubSelector.poll(WindowsSelectorImpl.java:357)
at java.base@11.0.11/sun.nio.ch.WindowsSelectorImpl.doSelect(WindowsSelectorImpl.java:182)
at java.base@11.0.11/sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:124)
- locked io.netty.channel.nio.SelectedSelectionKeySet@39ed1ebf
- locked sun.nio.ch.WindowsSelectorImpl@7a3d0748
at java.base@11.0.11/sun.nio.ch.SelectorImpl.select(SelectorImpl.java:141)
at io.netty.channel.nio.SelectedSelectionKeySetSelector.select(SelectedSelectionKeySetSelector.java:68)
at io.netty.channel.nio.NioEventLoop.select(NioEventLoop.java:810)
at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:457)
...


"fsnotifier64.exe" prio=4 Id=35 RUNNABLE (in native)
at java.base@11.0.11/java.lang.ProcessImpl.waitForInterruptibly(Native Method)
at java.base@11.0.11/java.lang.ProcessImpl.waitFor(ProcessImpl.java:554)
at com.intellij.execution.process.ProcessWaitFor.lambda$new$0(ProcessWaitFor.java:38)
at com.intellij.execution.process.ProcessWaitFor$$Lambda$560/0x00000008006aa040.run(Unknown Source)
at com.intellij.util.ConcurrencyUtil.runUnderThreadName(ConcurrencyUtil.java:213)
at com.intellij.execution.process.ProcessWaitFor.lambda$new$1(ProcessWaitFor.java:33)
at com.intellij.execution.process.ProcessWaitFor$$Lambda$557/0x00000008006ab440.run(Unknown Source)
at java.base@11.0.11/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
...

Number of locked synchronizers = 1
- java.util.concurrent.ThreadPoolExecutor$Worker@b340496


"BaseDataReader: output stream of fsnotifier64.exe" prio=4 Id=36 RUNNABLE
at java.base@11.0.11/java.io.FileInputStream.readBytes(Native Method)
at java.base@11.0.11/java.io.FileInputStream.read(FileInputStream.java:279)
at java.base@11.0.11/java.io.BufferedInputStream.read1(BufferedInputStream.java:290)
at java.base@11.0.11/java.io.BufferedInputStream.read(BufferedInputStream.java:351)
- locked java.io.BufferedInputStream@35ecdbee
at java.base@11.0.11/sun.nio.cs.StreamDecoder.readBytes(StreamDecoder.java:284)
at java.base@11.0.11/sun.nio.cs.StreamDecoder.implRead(StreamDecoder.java:326)
at java.base@11.0.11/sun.nio.cs.StreamDecoder.read(StreamDecoder.java:178)
- locked com.intellij.util.io.BaseInputStreamReader@413b2a31
at java.base@11.0.11/java.io.InputStreamReader.read(InputStreamReader.java:181)
...

Number of locked synchronizers = 1
- java.util.concurrent.ThreadPoolExecutor$Worker@1f8c2a2d


"BaseDataReader: error stream of fsnotifier64.exe" prio=4 Id=37 RUNNABLE (in native)
at java.base@11.0.11/java.io.FileInputStream.readBytes(Native Method)
at java.base@11.0.11/java.io.FileInputStream.read(FileInputStream.java:279)
at java.base@11.0.11/sun.nio.cs.StreamDecoder.readBytes(StreamDecoder.java:284)
at java.base@11.0.11/sun.nio.cs.StreamDecoder.implRead(StreamDecoder.java:326)
at java.base@11.0.11/sun.nio.cs.StreamDecoder.read(StreamDecoder.java:178)
- locked com.intellij.util.io.BaseInputStreamReader@10f2dc4f
at java.base@11.0.11/java.io.InputStreamReader.read(InputStreamReader.java:181)
at java.base@11.0.11/java.io.Reader.read(Reader.java:229)
at com.intellij.util.io.BaseOutputReader.readAvailableBlocking(BaseOutputReader.java:134)
...

Number of locked synchronizers = 1
- java.util.concurrent.ThreadPoolExecutor$Worker@534d334d


"TimerQueue" daemon prio=5 Id=43 TIMED_WAITING on java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject@3ab07171
at java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method)
- waiting on java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject@3ab07171
at java.base@11.0.11/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:234)
at java.base@11.0.11/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2123)
at java.base@11.0.11/java.util.concurrent.DelayQueue.take(DelayQueue.java:229)
at java.desktop@11.0.11/javax.swing.TimerQueue.run(TimerQueue.java:171)
at java.base@11.0.11/java.lang.Thread.run(Thread.java:829)

Number of locked synchronizers = 1
- java.util.concurrent.locks.ReentrantLock$NonfairSync@2678e5e


"Highlighter" daemon prio=5 Id=55 WAITING on java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject@2b614d1d
at java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method)
- waiting on java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject@2b614d1d
at java.base@11.0.11/java.util.concurrent.locks.LockSupport.park(LockSupport.java:194)
at java.base@11.0.11/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2081)
at java.base@11.0.11/java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:1170)
at java.base@11.0.11/java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:899)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1054)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1114)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
...


"HighlightUsages" daemon prio=5 Id=59 WAITING on java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject@7cfa9c6d
at java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method)
- waiting on java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject@7cfa9c6d
at java.base@11.0.11/java.util.concurrent.locks.LockSupport.park(LockSupport.java:194)
at java.base@11.0.11/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2081)
at java.base@11.0.11/java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:1170)
at java.base@11.0.11/java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:899)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1054)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1114)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
...


"MPS EDT Executor" daemon prio=5 Id=60 WAITING on java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject@4fa01a1b
at java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method)
- waiting on java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject@4fa01a1b
at java.base@11.0.11/java.util.concurrent.locks.LockSupport.park(LockSupport.java:194)
at java.base@11.0.11/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2081)
at java.base@11.0.11/java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:1170)
at java.base@11.0.11/java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:899)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1054)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1114)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
...


"Swing-Shell" daemon prio=10 Id=64 WAITING on java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject@7622c167
at java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method)
- waiting on java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject@7622c167
at java.base@11.0.11/java.util.concurrent.locks.LockSupport.park(LockSupport.java:194)
at java.base@11.0.11/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2081)
at java.base@11.0.11/java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:433)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1054)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1114)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
at java.desktop@11.0.11/sun.awt.shell.Win32ShellFolderManager2$ComInvoker$1.run(Win32ShellFolderManager2.java:586)
...


"ChangesManager command queue" prio=6 Id=56 WAITING on java.util.LinkedList@71b5fb6c
at java.base@11.0.11/java.lang.Object.wait(Native Method)
- waiting on java.util.LinkedList@71b5fb6c
at java.base@11.0.11/java.lang.Object.wait(Object.java:328)
at jetbrains.mps.vcs.changesmanager.SimpleCommandQueue$MyExecutorThread.run(SimpleCommandQueue.java:100)


"DefaultDispatcher-worker-1" daemon prio=6 Id=131 TIMED_WAITING
at java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method)
at java.base@11.0.11/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:357)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.park(CoroutineScheduler.kt:795)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.tryPark(CoroutineScheduler.kt:740)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:711)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:665)


"DefaultDispatcher-worker-2" daemon prio=6 Id=132 TIMED_WAITING
at java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method)
at java.base@11.0.11/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:357)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.park(CoroutineScheduler.kt:795)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.tryPark(CoroutineScheduler.kt:740)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:711)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:665)


"DefaultDispatcher-worker-3" daemon prio=6 Id=144 TIMED_WAITING
at java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method)
at java.base@11.0.11/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:357)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.park(CoroutineScheduler.kt:795)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.tryPark(CoroutineScheduler.kt:740)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:711)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:665)


"DefaultDispatcher-worker-4" daemon prio=6 Id=145 TIMED_WAITING
at java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method)
at java.base@11.0.11/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:357)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.park(CoroutineScheduler.kt:795)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.tryPark(CoroutineScheduler.kt:740)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:711)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:665)


"Batik CleanerThread" daemon prio=6 Id=1023 WAITING on java.lang.ref.ReferenceQueue$Lock@6d4c6274
at java.base@11.0.11/java.lang.Object.wait(Native Method)
- waiting on java.lang.ref.ReferenceQueue$Lock@6d4c6274
at java.base@11.0.11/java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:155)
at java.base@11.0.11/java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:176)
at org.apache.batik.util.CleanerThread.run(CleanerThread.java:106)


"JobScheduler FJ pool 1/3" daemon prio=4 Id=4087 WAITING on java.util.concurrent.ForkJoinPool@9f2de39
at java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method)
- waiting on java.util.concurrent.ForkJoinPool@9f2de39
at java.base@11.0.11/java.util.concurrent.locks.LockSupport.park(LockSupport.java:194)
at java.base@11.0.11/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1628)
at java.base@11.0.11/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:183)


"qtp1895996854-4303" prio=5 Id=4303 RUNNABLE (in native)
at java.base@11.0.11/sun.nio.ch.WindowsSelectorImpl$SubSelector.poll0(Native Method)
at java.base@11.0.11/sun.nio.ch.WindowsSelectorImpl$SubSelector.poll(WindowsSelectorImpl.java:357)
at java.base@11.0.11/sun.nio.ch.WindowsSelectorImpl.doSelect(WindowsSelectorImpl.java:182)
at java.base@11.0.11/sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:124)
- locked sun.nio.ch.Util$2@51071657
- locked sun.nio.ch.WindowsSelectorImpl@49f5d4e4
at java.base@11.0.11/sun.nio.ch.SelectorImpl.select(SelectorImpl.java:141)
at org.eclipse.jetty.io.ManagedSelector$SelectorProducer.select(ManagedSelector.java:375)
at org.eclipse.jetty.io.ManagedSelector$SelectorProducer.produce(ManagedSelector.java:304)
at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.doProduce(EatWhatYouKill.java:179)
...


"qtp1895996854-4304" prio=5 Id=4304 RUNNABLE (in native)
at java.base@11.0.11/sun.nio.ch.WindowsSelectorImpl$SubSelector.poll0(Native Method)
at java.base@11.0.11/sun.nio.ch.WindowsSelectorImpl$SubSelector.poll(WindowsSelectorImpl.java:357)
at java.base@11.0.11/sun.nio.ch.WindowsSelectorImpl.doSelect(WindowsSelectorImpl.java:182)
at java.base@11.0.11/sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:124)
- locked sun.nio.ch.Util$2@4fe37931
- locked sun.nio.ch.WindowsSelectorImpl@71c80bed
at java.base@11.0.11/sun.nio.ch.SelectorImpl.select(SelectorImpl.java:141)
at org.eclipse.jetty.io.ManagedSelector$SelectorProducer.select(ManagedSelector.java:375)
at org.eclipse.jetty.io.ManagedSelector$SelectorProducer.produce(ManagedSelector.java:304)
at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.doProduce(EatWhatYouKill.java:179)
...


"qtp1895996854-4305-acceptor-0@2f80334c-ServerConnector@36776cc3{HTTP/1.1,[http/1.1]}{localhost:8080}" prio=3 Id=4305 RUNNABLE (in native)
at java.base@11.0.11/sun.nio.ch.ServerSocketChannelImpl.accept0(Native Method)
at java.base@11.0.11/sun.nio.ch.ServerSocketChannelImpl.accept(ServerSocketChannelImpl.java:533)
at java.base@11.0.11/sun.nio.ch.ServerSocketChannelImpl.accept(ServerSocketChannelImpl.java:285)
at org.eclipse.jetty.server.ServerConnector.accept(ServerConnector.java:379)
at org.eclipse.jetty.server.AbstractConnector$Acceptor.run(AbstractConnector.java:638)
at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:708)
at org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:626)
at java.base@11.0.11/java.lang.Thread.run(Thread.java:829)

Number of locked synchronizers = 1
- java.util.concurrent.locks.ReentrantLock$NonfairSync@18140e2d


"qtp1895996854-4306" prio=5 Id=4306 TIMED_WAITING on java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject@18c54c37
at java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method)
- waiting on java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject@18c54c37
at java.base@11.0.11/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:234)
at java.base@11.0.11/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2123)
at org.eclipse.jetty.util.BlockingArrayQueue.poll(BlockingArrayQueue.java:392)
at org.eclipse.jetty.util.thread.QueuedThreadPool.idleJobPoll(QueuedThreadPool.java:600)
at org.eclipse.jetty.util.thread.QueuedThreadPool.access$800(QueuedThreadPool.java:49)
at org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:663)
at java.base@11.0.11/java.lang.Thread.run(Thread.java:829)


"qtp1895996854-4307" prio=5 Id=4307 TIMED_WAITING on java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject@18c54c37
at java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method)
- waiting on java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject@18c54c37
at java.base@11.0.11/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:234)
at java.base@11.0.11/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2123)
at org.eclipse.jetty.util.BlockingArrayQueue.poll(BlockingArrayQueue.java:392)
at org.eclipse.jetty.util.thread.QueuedThreadPool.idleJobPoll(QueuedThreadPool.java:600)
at org.eclipse.jetty.util.thread.QueuedThreadPool.access$800(QueuedThreadPool.java:49)
at org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:663)
at java.base@11.0.11/java.lang.Thread.run(Thread.java:829)


"qtp1895996854-4308" prio=5 Id=4308 TIMED_WAITING on java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject@18c54c37
at java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method)
- waiting on java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject@18c54c37
at java.base@11.0.11/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:234)
at java.base@11.0.11/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2123)
at org.eclipse.jetty.util.BlockingArrayQueue.poll(BlockingArrayQueue.java:392)
at org.eclipse.jetty.util.thread.QueuedThreadPool.idleJobPoll(QueuedThreadPool.java:600)
at org.eclipse.jetty.util.thread.QueuedThreadPool.access$800(QueuedThreadPool.java:49)
at org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:663)
at java.base@11.0.11/java.lang.Thread.run(Thread.java:829)


"qtp1895996854-4309" prio=5 Id=4309 TIMED_WAITING on java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject@18c54c37
at java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method)
- waiting on java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject@18c54c37
at java.base@11.0.11/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:234)
at java.base@11.0.11/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2123)
at org.eclipse.jetty.util.BlockingArrayQueue.poll(BlockingArrayQueue.java:392)
at org.eclipse.jetty.util.thread.QueuedThreadPool.idleJobPoll(QueuedThreadPool.java:600)
at org.eclipse.jetty.util.thread.QueuedThreadPool.access$800(QueuedThreadPool.java:49)
at org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:663)
at java.base@11.0.11/java.lang.Thread.run(Thread.java:829)


"qtp1895996854-4310" prio=5 Id=4310 TIMED_WAITING on java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject@18c54c37
at java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method)
- waiting on java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject@18c54c37
at java.base@11.0.11/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:234)
at java.base@11.0.11/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2123)
at org.eclipse.jetty.util.BlockingArrayQueue.poll(BlockingArrayQueue.java:392)
at org.eclipse.jetty.util.thread.QueuedThreadPool.idleJobPoll(QueuedThreadPool.java:600)
at org.eclipse.jetty.util.thread.QueuedThreadPool.access$800(QueuedThreadPool.java:49)
at org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:663)
at java.base@11.0.11/java.lang.Thread.run(Thread.java:829)


"ApplicationImpl pooled thread 776" prio=4 Id=4706 TIMED_WAITING on java.util.concurrent.SynchronousQueue$TransferStack@3dc92d7b
at java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method)
- waiting on java.util.concurrent.SynchronousQueue$TransferStack@3dc92d7b
at java.base@11.0.11/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:234)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:462)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:361)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue.poll(SynchronousQueue.java:937)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1053)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1114)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
...


"ApplicationImpl pooled thread 781" prio=4 Id=4714 TIMED_WAITING on java.util.concurrent.SynchronousQueue$TransferStack@3dc92d7b
at java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method)
- waiting on java.util.concurrent.SynchronousQueue$TransferStack@3dc92d7b
at java.base@11.0.11/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:234)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:462)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:361)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue.poll(SynchronousQueue.java:937)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1053)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1114)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
...


"ApplicationImpl pooled thread 782" prio=4 Id=4715 RUNNABLE (in native)
at java.base@11.0.11/java.net.PlainSocketImpl.waitForConnect(Native Method)
at java.base@11.0.11/java.net.PlainSocketImpl.socketConnect(PlainSocketImpl.java:107)
at java.base@11.0.11/java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:399)
- locked java.net.SocksSocketImpl@7f21bb3f
at java.base@11.0.11/java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:242)
at java.base@11.0.11/java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:224)
at java.base@11.0.11/java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)
at java.base@11.0.11/java.net.Socket.connect(Socket.java:609)
at java.base@11.0.11/sun.security.ssl.SSLSocketImpl.connect(SSLSocketImpl.java:289)
...

Number of locked synchronizers = 1
- java.util.concurrent.ThreadPoolExecutor$Worker@32c6955b


"ApplicationImpl pooled thread 783" prio=4 Id=4716 TIMED_WAITING on java.util.concurrent.SynchronousQueue$TransferStack@3dc92d7b
at java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method)
- waiting on java.util.concurrent.SynchronousQueue$TransferStack@3dc92d7b
at java.base@11.0.11/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:234)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:462)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:361)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue.poll(SynchronousQueue.java:937)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1053)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1114)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
...


"ApplicationImpl pooled thread 784" prio=4 Id=4717 TIMED_WAITING on java.util.concurrent.SynchronousQueue$TransferStack@3dc92d7b
at java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method)
- waiting on java.util.concurrent.SynchronousQueue$TransferStack@3dc92d7b
at java.base@11.0.11/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:234)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:462)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:361)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue.poll(SynchronousQueue.java:937)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1053)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1114)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
...


"ApplicationImpl pooled thread 785" prio=4 Id=4724 TIMED_WAITING on java.util.concurrent.SynchronousQueue$TransferStack@3dc92d7b
at java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method)
- waiting on java.util.concurrent.SynchronousQueue$TransferStack@3dc92d7b
at java.base@11.0.11/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:234)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:462)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:361)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue.poll(SynchronousQueue.java:937)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1053)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1114)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
...


"ApplicationImpl pooled thread 789" prio=4 Id=4731 TIMED_WAITING on java.util.concurrent.SynchronousQueue$TransferStack@3dc92d7b
at java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method)
- waiting on java.util.concurrent.SynchronousQueue$TransferStack@3dc92d7b
at java.base@11.0.11/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:234)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:462)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:361)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue.poll(SynchronousQueue.java:937)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1053)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1114)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
...


"ApplicationImpl pooled thread 790" prio=4 Id=4732 TIMED_WAITING on java.util.concurrent.SynchronousQueue$TransferStack@3dc92d7b
at java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method)
- waiting on java.util.concurrent.SynchronousQueue$TransferStack@3dc92d7b
at java.base@11.0.11/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:234)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:462)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:361)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue.poll(SynchronousQueue.java:937)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1053)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1114)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
...


"Thread-207" prio=6 Id=4805 TIMED_WAITING on testspraak.plugin.VersionWatcher@3321d909
at java.base@11.0.11/java.lang.Object.wait(Native Method)
- waiting on testspraak.plugin.VersionWatcher@3321d909
at testspraak.plugin.VersionWatcher.run(VersionWatcher.java:36)
at java.base@11.0.11/java.lang.Thread.run(Thread.java:829)


"I/O pool 165" prio=4 Id=4819 TIMED_WAITING on java.util.concurrent.SynchronousQueue$TransferStack@7aa93819
at java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method)
- waiting on java.util.concurrent.SynchronousQueue$TransferStack@7aa93819
at java.base@11.0.11/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:234)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:462)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:361)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue.poll(SynchronousQueue.java:937)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1053)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1114)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
...


"I/O pool 166" prio=4 Id=4820 TIMED_WAITING on java.util.concurrent.SynchronousQueue$TransferStack@7aa93819
at java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method)
- waiting on java.util.concurrent.SynchronousQueue$TransferStack@7aa93819
at java.base@11.0.11/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:234)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:462)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:361)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue.poll(SynchronousQueue.java:937)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1053)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1114)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
...


"I/O pool 167" prio=4 Id=4821 TIMED_WAITING on java.util.concurrent.SynchronousQueue$TransferStack@7aa93819
at java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method)
- waiting on java.util.concurrent.SynchronousQueue$TransferStack@7aa93819
at java.base@11.0.11/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:234)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:462)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:361)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue.poll(SynchronousQueue.java:937)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1053)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1114)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
...


"ApplicationImpl pooled thread 791" prio=4 Id=4825 TIMED_WAITING on java.util.concurrent.SynchronousQueue$TransferStack@3dc92d7b
at java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method)
- waiting on java.util.concurrent.SynchronousQueue$TransferStack@3dc92d7b
at java.base@11.0.11/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:234)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:462)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:361)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue.poll(SynchronousQueue.java:937)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1053)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1114)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
...


"ApplicationImpl pooled thread 792" prio=4 Id=4826 TIMED_WAITING on java.util.concurrent.SynchronousQueue$TransferStack@3dc92d7b
at java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method)
- waiting on java.util.concurrent.SynchronousQueue$TransferStack@3dc92d7b
at java.base@11.0.11/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:234)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:462)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:361)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue.poll(SynchronousQueue.java:937)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1053)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1114)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
...


"ApplicationImpl pooled thread 793" prio=4 Id=4827 TIMED_WAITING on java.util.concurrent.SynchronousQueue$TransferStack@3dc92d7b
at java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method)
- waiting on java.util.concurrent.SynchronousQueue$TransferStack@3dc92d7b
at java.base@11.0.11/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:234)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:462)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:361)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue.poll(SynchronousQueue.java:937)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1053)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1114)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
...


"ApplicationImpl pooled thread 794" prio=4 Id=4828 TIMED_WAITING on java.util.concurrent.SynchronousQueue$TransferStack@3dc92d7b
at java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method)
- waiting on java.util.concurrent.SynchronousQueue$TransferStack@3dc92d7b
at java.base@11.0.11/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:234)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:462)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:361)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue.poll(SynchronousQueue.java:937)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1053)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1114)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
...


"JobScheduler FJ pool 0/3" daemon prio=4 Id=4829 TIMED_WAITING on java.util.concurrent.ForkJoinPool@9f2de39
at java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method)
- waiting on java.util.concurrent.ForkJoinPool@9f2de39
at java.base@11.0.11/java.util.concurrent.locks.LockSupport.parkUntil(LockSupport.java:275)
at java.base@11.0.11/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1619)
at java.base@11.0.11/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:183)


"JobScheduler FJ pool 2/3" daemon prio=4 Id=4830 WAITING on java.util.concurrent.ForkJoinPool@9f2de39
at java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method)
- waiting on java.util.concurrent.ForkJoinPool@9f2de39
at java.base@11.0.11/java.util.concurrent.locks.LockSupport.park(LockSupport.java:194)
at java.base@11.0.11/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1628)
at java.base@11.0.11/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:183)


"ApplicationImpl pooled thread 795" prio=4 Id=4833 TIMED_WAITING on java.util.concurrent.SynchronousQueue$TransferStack@3dc92d7b
at java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method)
- waiting on java.util.concurrent.SynchronousQueue$TransferStack@3dc92d7b
at java.base@11.0.11/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:234)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:462)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:361)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue.poll(SynchronousQueue.java:937)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1053)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1114)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
...


"ApplicationImpl pooled thread 796" prio=4 Id=4834 TIMED_WAITING on java.util.concurrent.SynchronousQueue$TransferStack@3dc92d7b
at java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method)
- waiting on java.util.concurrent.SynchronousQueue$TransferStack@3dc92d7b
at java.base@11.0.11/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:234)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:462)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:361)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue.poll(SynchronousQueue.java:937)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1053)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1114)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
...


"Thread-211" prio=6 Id=4915 TIMED_WAITING on testspraak.plugin.VersionWatcher@22a49efa
at java.base@11.0.11/java.lang.Object.wait(Native Method)
- waiting on testspraak.plugin.VersionWatcher@22a49efa
at testspraak.plugin.VersionWatcher.run(VersionWatcher.java:36)
at java.base@11.0.11/java.lang.Thread.run(Thread.java:829)


"ApplicationImpl pooled thread 797" prio=4 Id=4916 RUNNABLE
at java.management@11.0.11/sun.management.ThreadImpl.dumpThreads0(Native Method)
at java.management@11.0.11/sun.management.ThreadImpl.dumpAllThreads(ThreadImpl.java:521)
at java.management@11.0.11/sun.management.ThreadImpl.dumpAllThreads(ThreadImpl.java:509)
at servicespraak.behavior.XmlSchemaRegister.getSchema(XmlSchemaRegister.java:154)
at servicespraak.behavior.XmlSchemaRegister.checkSchema(XmlSchemaRegister.java:119)
at servicespraak.typesystem.check_generatedXsd_NonTypesystemRule.applyRule(check_generatedXsd_NonTypesystemRule.java:33)
at jetbrains.mps.newTypesystem.context.typechecking.IncrementalTypechecking.applyRuleToNode(IncrementalTypechecking.java:161)
at jetbrains.mps.newTypesystem.context.component.NonTypeSystemComponent.lambda$applyNonTypesystemRulesToNode$2(NonTypeSystemComponent.java:345)
...

Number of locked synchronizers = 1
- java.util.concurrent.ThreadPoolExecutor$Worker@4eb06fc1


"ApplicationImpl pooled thread 798" prio=4 Id=4917 TIMED_WAITING on java.util.concurrent.SynchronousQueue$TransferStack@3dc92d7b
at java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method)
- waiting on java.util.concurrent.SynchronousQueue$TransferStack@3dc92d7b
at java.base@11.0.11/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:234)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:462)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:361)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue.poll(SynchronousQueue.java:937)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1053)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1114)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
...


"ApplicationImpl pooled thread 799" prio=4 Id=4918 TIMED_WAITING on java.util.concurrent.SynchronousQueue$TransferStack@3dc92d7b
at java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method)
- waiting on java.util.concurrent.SynchronousQueue$TransferStack@3dc92d7b
at java.base@11.0.11/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:234)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:462)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:361)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue.poll(SynchronousQueue.java:937)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1053)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1114)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
...


"ApplicationImpl pooled thread 800" prio=4 Id=4919 TIMED_WAITING on java.util.concurrent.SynchronousQueue$TransferStack@3dc92d7b
at java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method)
- waiting on java.util.concurrent.SynchronousQueue$TransferStack@3dc92d7b
at java.base@11.0.11/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:234)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:462)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:361)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue.poll(SynchronousQueue.java:937)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1053)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1114)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
...


"ApplicationImpl pooled thread 801" prio=4 Id=4920 TIMED_WAITING on java.util.concurrent.SynchronousQueue$TransferStack@3dc92d7b
at java.base@11.0.11/jdk.internal.misc.Unsafe.park(Native Method)
- waiting on java.util.concurrent.SynchronousQueue$TransferStack@3dc92d7b
at java.base@11.0.11/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:234)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:462)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:361)
at java.base@11.0.11/java.util.concurrent.SynchronousQueue.poll(SynchronousQueue.java:937)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1053)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1114)
at java.base@11.0.11/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
...
0
Comment actions Permalink

I didn't notice anything suspicious in the thread dump.

I could imagine process() returns immediately if your progressMonitor happens to be cancelled (e.g. if it's an instance associate with UI element). However, there's no external progressMonitor inside checking rule, and I doubt you went a hard way and obtained IDEA's progress indicator or anything similar, I suppose it's just an EmptyProgressMonitor instance, right?

0
Comment actions Permalink

I double checked but it is indeed just a new EmptyProgressMonitor(), as shown in the code earlier. I did the threaddump programatically after process() returns (not in parallel, not sure how to time it right) and noticed that getAllRecorded() returned empty.

0
Comment actions Permalink

Well, another possible answer would be cancellable model read, although to confirm that I'd need complete stacktrace for the thread that attempts to start generator. I.e. if there's CancellableReadAction (subclass thereof), then model read could stop once a model write action comes (which may happen e.g. due to some vis background update). I'm aware of Highlighter code that uses cancellable model reads and may eventually get down to non-typesystem checks, however, from the thread dump it doesn't look like a highlighter-initiated activity (Highlighter got own named thread). 

If cancellable reads are not the case, then I'm out of ideas, and only debug and stepping into process() would reveal the answer.

0

Please sign in to leave a comment.