Skip to content

[perf] UI Freeze in DartAnalysisServerService (awaitForLatchCheckingCanceled) #485

Description

@pq

UI Freeze in DartAnalysisServerService (awaitForLatchCheckingCanceled)

Original Buganizer Issue: b/524561237
First Seen: Meerkat Feature Drop | 2024.3.2

Description

A UI freeze is occurring in the IDE where a write action on the UI thread is blocked by a read action executing on a background thread (ApplicationImpl pooled thread 32).

The frame responsible for the freeze is com.google.common.util.concurrent.Uninterruptibles.awaitUninterruptibly, which calls java.util.concurrent.CountDownLatch.await. The wait time is taking approximately 32,400ms (~32.4 seconds).

Call Stack Context

com.jetbrains.lang.dart.psi.impl.DartFileReference$Resolver.resolve(DartFileReference.java:124)
com.jetbrains.lang.dart.analyzer.DartAnalysisServerService.analysis_getNavigation(DartAnalysisServerService.java:1151)
com.jetbrains.lang.dart.analyzer.DartAnalysisServerService.awaitForLatchCheckingCanceled(DartAnalysisServerService.java:2470)
==> com.google.common.util.concurrent.Uninterruptibles.awaitUninterruptibly(Uninterruptibles.java:103) <==
java.util.concurrent.CountDownLatch.await(Unknown Source)

Metadata

Metadata

Assignees

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions