Bug 550982

Summary: Job.yieldRule never completes
Product: [Eclipse Project] Platform Reporter: Rafael Chaves <eclipse>
Component: RuntimeAssignee: platform-runtime-inbox <platform-runtime-inbox>
Status: NEW --- QA Contact:
Severity: normal    
Priority: P3    
Version: 4.7.2   
Target Milestone: ---   
Hardware: PC   
OS: Windows 10   
Whiteboard:

Description Rafael Chaves CLA 2019-09-11 12:07:18 EDT
Sometimes, it seems invoking yieldRule() from a running job may freeze the job forever. No steps, but a memory dump showed the job in question is in the YIELDING state (64), here is the stack trace: 


"Worker-28" #343 prio=5 os_prio=0 tid=0x000000001f91d800 nid=0x4560 in Object.wait() [0x00000000483be000]
   java.lang.Thread.State: WAITING (on object monitor)
        at java.lang.Object.wait(Native Method)
        at java.lang.Object.wait(Object.java:502)
        at org.eclipse.core.internal.jobs.JobManager.waitForUnblocked(JobManager.java:1558)
        - locked <0x00000000fca7f0f0> (a java.lang.Object)
        at org.eclipse.core.internal.jobs.JobManager.yieldRule(JobManager.java:1483)
        at org.eclipse.core.internal.jobs.InternalJob.yieldRule(InternalJob.java:527)
        at org.eclipse.core.runtime.jobs.Job.yieldRule(Job.java:936)
...
        at org.eclipse.jdt.internal.core.BatchOperation.executeOperation(BatchOperation.java:39)
        at org.eclipse.jdt.internal.core.JavaModelOperation.run(JavaModelOperation.java:724)
        at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:2240)
        at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:2267)
        at org.eclipse.jdt.core.JavaCore.run(JavaCore.java:5660)
        at org.eclipse.jdt.core.JavaCore.run(JavaCore.java:5617)
...
        at acme.MyJob.run(MyJob.java:301)
        at org.eclipse.core.internal.jobs.Worker.run(Worker.java:56)