Hacktoberfest 2026: những issue maintainer đã đánh dấu cho tháng Mười, đang mở và phù hợp người mới. Xem issue Hacktoberfest

Allow tests to wait on reconciler threads to finish

Đang mở
#3,818 1 bình luận 0 reaction 0 người được giao Xem trên GitHub

Maintainer thường phản hồi trong vòng 1 ngày

Chưa có ai nhận issue này.

  • #3819 của @trancexpress — đã đóng, không merge

Đánh giá

Độ khó
3/5
Thời gian dự kiến
1-2 ngày
Mức phù hợp với người mới
35/100
Loại issue
Tính năng
Độ rõ ràng
Khá rõ ràng
Mức độ hoạt động
Đình trệ
Công nghệ
java
Lĩnh vực
testing

Hướng nghiên cứu

Start by reading org.eclipse.jface.text.reconciler.AbstractReconciler.BackgroundWorker and the AbstractReconciler implementation to understand how the worker is started and stopped. Check how tests currently wait for reconciliation to finish; done means tests can wait for the worker to exit so work from earlier tests does not overlap later tests.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Mô tả

enhancement

While looking into various JDT UI test fails, e.g. https://github.com/eclipse-jdt/eclipse.jdt.ui/issues/2287, I noticed that the we have no option to wait on the thread started here: org.eclipse.jface.text.reconciler.AbstractReconciler.BackgroundWorker

E.g. I can get the addition of the project info at this stack trace:

"org.eclipse.jdt.internal.ui.text.JavaReconciler" #86 [165284] daemon prio=1 os_prio=0 cpu=0.86ms elapsed=66.00s tid=0x00007fe978058760 nid=165284 at breakpoint [0x00007fe9037f9000]
   java.lang.Thread.State: RUNNABLE
        at org.eclipse.jdt.internal.core.JavaElement.openWhenClosed(JavaElement.java:585)
        at org.eclipse.jdt.internal.core.JavaElement.getElementInfo(JavaElement.java:284)
        at org.eclipse.jdt.internal.core.JavaElement.getElementInfo(JavaElement.java:270)
        at org.eclipse.jdt.internal.core.JavaProject.getJavaProjectElementInfo(JavaProject.java:2088)
        at org.eclipse.jdt.internal.core.JavaProject.newNameLookup(JavaProject.java:2823)
        at org.eclipse.jdt.internal.core.SearchableEnvironment.<init>(SearchableEnvironment.java:117)
        at org.eclipse.jdt.internal.core.SearchableEnvironment.<init>(SearchableEnvironment.java:158)
        at org.eclipse.jdt.internal.core.CancelableNameEnvironment.<init>(CancelableNameEnvironment.java:32)
        at org.eclipse.jdt.internal.core.CompilationUnitProblemFinder.process(CompilationUnitProblemFinder.java:276)
        at org.eclipse.jdt.internal.core.CompilationUnitProblemFinder.process(CompilationUnitProblemFinder.java:375)
        at org.eclipse.jdt.internal.core.ReconcileWorkingCopyOperation.makeConsistent(ReconcileWorkingCopyOperation.java:244)
        at org.eclipse.jdt.internal.core.ReconcileWorkingCopyOperation.executeOperation(ReconcileWorkingCopyOperation.java:108)
        at org.eclipse.jdt.internal.core.JavaModelOperation.run(JavaModelOperation.java:751)
        at org.eclipse.jdt.internal.core.JavaModelOperation.runOperation(JavaModelOperation.java:816)
        at org.eclipse.jdt.internal.core.CompilationUnit.reconcile(CompilationUnit.java:1431)
        at org.eclipse.jdt.internal.ui.text.java.JavaReconcilingStrategy.reconcile(JavaReconcilingStrategy.java:132)
        at org.eclipse.jdt.internal.ui.text.java.JavaReconcilingStrategy$1.run(JavaReconcilingStrategy.java:94)
        at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:47)
        at org.eclipse.jdt.internal.ui.text.java.JavaReconcilingStrategy.reconcile(JavaReconcilingStrategy.java:91)
        at org.eclipse.jdt.internal.ui.text.java.JavaReconcilingStrategy.reconcile(JavaReconcilingStrategy.java:158)
        at org.eclipse.jdt.internal.ui.text.CompositeReconcilingStrategy.reconcile(CompositeReconcilingStrategy.java:94)
        at org.eclipse.jdt.internal.ui.text.JavaCompositeReconcilingStrategy.reconcile(JavaCompositeReconcilingStrategy.java:107)
        at org.eclipse.jface.text.reconciler.MonoReconciler.process(MonoReconciler.java:77)
        at org.eclipse.jface.text.reconciler.AbstractReconciler$BackgroundWorker.run(AbstractReconciler.java:205)
        at java.lang.Thread.runWith([email protected]/Thread.java:1596)
        at java.lang.Thread.run([email protected]/Thread.java:1583)

While the entire org.eclipse.jdt.ui.tests.core.ImportOrganizeTest finishes.

We should have some option to be able to wait on this thread to exit, to ensure tests don't run with parallel tasks from previous tests.

Ngôn ngữ chính
Java
Star
124
Fork
269
Merge trung bình
2 ngày 5 giờ
Pull request đã merge (30 ngày)
65

Chuẩn bị môi trường

Bắt đầu từ đâu

  1. Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
  2. Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
  3. Fork repository và làm thay đổi trên một nhánh.
  4. Mở pull request có tham chiếu số hiệu của issue.

Issue khác của eclipse-platform/eclipse.platform.ui

Tất cả issue của eclipse-platform/eclipse.platform.ui

Issue tương tự

Thêm issue về Java

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.