UI freezes/deadlocks while debugging apps with many short-lived threads: Debug tree refresh (TreeModelContentProvider.updateNodes) collides with hover
维护者通常 1 天内回复
还没有人认领这个 Issue。
评估
- 难度
- 4/5
- 预计耗时
- 3-5 天
- 新手友好度
- 45/100
- Issue 类型
- 缺陷
- 描述清晰度
- 基本清楚
- 活跃度
- 活跃
- 技术栈
- java
调研方向
Start by tracing TreeModelContentProvider.updateNodes and the TreeViewer.replace/setChildCount calls named in the report, then compare them with the Text Viewer Hover Presenter Display.syncExec() path. Reproduce with thread start/death events during an active debug session and inspect the attached monitoring samples and .metadata/.log. Done means the repeated UI freezes or deadlock pair no longer occurs during refresh and hover.
由索引模型根据 Issue 内容生成。
描述
Environment: Eclipse 2026-09 (4.41.0.20260903-0719), Windows Server 2025,
JDK 27; debuggee is Spring Boot 4.1 with virtual threads (enabled by
default), sustained thread churn (scheduled tasks suffice — no external
traffic required).
Symptom: repeated UI freezes (2-30s+, cyclic, CPU only 1-3% during freeze).
Captured deadlock pair in .metadata/.log (2026-09-17/18):
main: TreeModelContentProvider.updateNodes (recursive x3)
-> TreeViewer.replace/setChildCount -> OS.SendMessage (SWT tree surgery)
'Text Viewer Hover Presenter': Display.syncExec() cancelled waiting for the
UI lock
Still reproducible on 4.41 as of 2026-09-24 (monitoring sample attached).
Triggered by thread start/death events while a debug session is active,
even when the user is not interacting.
Workarounds (verified): uncheck Show Running Threads / Thread Groups /
Virtual Threads / Monitors in the Debug view menu, or close the Debug view,
or run without the debugger.
Related:
- eclipse-jdt/eclipse.jdt.debug#602 (virtual threads 1000x slower under
the debugger) - eclipse-jdt/eclipse.jdt.debug#296 (virtual thread presentation in Debug
view — same component) - eclipse-jdt/eclipse.jdt.debug#351 (same component, same stack shape:
TreeModelContentProvider.handleAdd; closed as not planned)
Note: this issue is against the Debug view implementation
(org.eclipse.debug.ui, TreeModelContentProvider); the jdt.debug tickets
above are referenced as the same-family history in the debugger area.
Attached: raw monitoring samples (deadlock pair 2026-09-17, recurrence
2026-09-24).
- 主要语言
- Java
- 星标
- 124
- 派生
- 269
- 平均合并
- 2 天 7 小时
- 30 天内合并 PR
- 68
环境准备
- 没有 Dockerfile 或 Docker Compose 文件
- 没有 Pull Request 模板
- 阅读贡献指南
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
eclipse-platform/eclipse.platform.ui 的其他 Issue
-
Theme controls do not show/hide when the checkbox is toggled可能已有人在做 @nburnwal09 于 1 天前认领。 未关闭bug
难度 2/5 1-3 小时 新手友好度 68/100
eclipse-platform/eclipse.platform.ui#4502 · 1 条评论 ·
维护者通常 1 天内回复
-
enhancement
难度 2/5 1-3 小时 新手友好度 76/100
eclipse-platform/eclipse.platform.ui#4125 · 4 条评论 ·
维护者通常 1 天内回复
-
bug
难度 2/5 1-3 小时 新手友好度 72/100
eclipse-platform/eclipse.platform.ui#4016 · 3 条评论 ·
维护者通常 1 天内回复
-
bug
难度 2/5 1-3 小时 新手友好度 72/100
eclipse-platform/eclipse.platform.ui#3892 · 4 条评论 ·
维护者通常 1 天内回复
-
enhancement
难度 2/5 1-3 小时 新手友好度 70/100
eclipse-platform/eclipse.platform.ui#2687 · 2 条评论 ·
维护者通常 1 天内回复
查看 eclipse-platform/eclipse.platform.ui 的全部 Issue
相似的 Issue
-
难度 1/5 1 小时以内 新手友好度 90/100
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 82/100
apache/rocketmq-dashboard#6896 ·
维护者通常 3 天内回复
-
难度 2/5 1-3 小时 新手友好度 67/100
-
bug
难度 2/5 1-3 小时 新手友好度 72/100
OpenIntegrationEngine/engine#496 ·
维护者通常 1 天内回复
-
enhancement good first issue
难度 2/5 1-3 小时 新手友好度 76/100
SasanLabs/VulnerableApp#836 ·
维护者通常 1 天内回复