Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

Allow tests to wait on reconciler threads to finish

Aperta
#3,818 1 commento 0 reazioni 0 assegnatari Vedi su GitHub

I maintainer di solito rispondono entro 1 giorno

Nessuno ha ancora preso questa issue.

  • #3819 di @trancexpress — chiusa senza merge

Valutazione

Difficoltà
3/5
Tempo stimato
1-2 giorni
Idoneità per principianti
35/100
Tipo di issue
Funzionalità
Chiarezza
Abbastanza chiara
Stato di attività
Ferma
Stack tecnologico
java
Ambito
testing

Direzione di ricerca

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.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

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.

Lingua principale
Java
Stelle
124
Fork
269
Merge medio
1g 19h
PR unite (30g)
63

Preparare l'ambiente

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di eclipse-platform/eclipse.platform.ui

Tutte le issue di eclipse-platform/eclipse.platform.ui

Issue simili

Altre issue su Java

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.