Bug 63635 - Decorations become stale
Summary: Decorations become stale
Status: CLOSED FIXED
Alias: None
Product: Platform
Classification: Eclipse Project
Component: UI (show other bugs)
Version: 3.0   Edit
Hardware: PC Windows XP
: P3 normal (vote)
Target Milestone: ---   Edit
Assignee: Tod Creasey CLA
QA Contact:
URL:
Whiteboard:
Keywords:
: 62061 62113 67073 67435 67471 67576 68107 68162 68945 (view as bug list)
Depends on: 57656 64540 64559
Blocks:
  Show dependency tree
 
Reported: 2004-05-24 03:01 EDT by Gunnar Wagenknecht CLA
Modified: 2005-05-10 14:56 EDT (History)
15 users (show)

See Also:


Attachments
Stale decorators thread dump (8.99 KB, text/plain)
2004-06-17 05:18 EDT, Gabriele Garuglieri CLA
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Gunnar Wagenknecht CLA 2004-05-24 03:01:30 EDT
M9

I already noticed that in previous builds but I havn't found a reproduceable 
test case yet.

At some time all my decorations become stale. There isn't anything logged or 
printed to the console.

I noticed that with the following behavior.
- Views (Package Explorer, Ouline) still show warning/error decoration for 
elements that are fixed (editor annotation bar is clean).
- The editor icon shows wrong error/warning decoration.
- Views (Package Explorer, Navigator) loose the Team decorations from my Team 
plugin (eclipse-ccase.sf.net) or the arn't updated anymore.
Comment 1 Tod Creasey CLA 2004-05-25 11:01:55 EDT
Warning and errors are handled by the label provider - not the error 
mechanism - this would be a problem with the package explorer not refrshing 
its content enough.
Comment 2 Nick Edgar CLA 2004-05-26 14:14:54 EDT
Moving to JDT for the error/warning "decorations".

Tod, the last point was about team decorations.  Should Gunnar open a separate
PR for this?
Comment 3 Tod Creasey CLA 2004-05-26 14:29:25 EDT
No - I expect it is a general refresh not happening.
Comment 4 Dirk Baeumer CLA 2004-05-27 05:40:02 EDT
Gunnar, 

there is a difference between errors shown in the packages view and in the 
editor. The editor shows the state of the current CU content whereas views 
(like package explorer, outliner, ...) show the build state. So they are only 
in sync after a build. Is this the case in your  scenario ?

If not, what happens to other upates. For example if you change the name of a 
method does the package explorer and the Outline reflect these changes?
Comment 5 Gunnar Wagenknecht CLA 2004-05-27 08:14:41 EDT
No I don't mean the editor annotations. They are correct every time. I mean 
the icon in the editor tab item (in the CTabFolder).

I'm working with auto-build on so they sould be in synch after a save but they 
arn't.

It seems that only the decorations become stale. Labels are updated correctly.
Comment 6 Dirk Baeumer CLA 2004-05-27 09:10:14 EDT
Gunnar, 

since I can't reproduce the problem its hard for use to know where to look at. 
One additional question: do the errors show up/disappear in the problems view 
(e.g does the problems view update correctly) ? 
Comment 7 Gunnar Wagenknecht CLA 2004-05-28 07:09:40 EDT
I believe it's a platform problem. Maybe the decoration scheduler job?

I had a moment right now where all jobs seem to wait fo something (see bug 
63633 attachment 11265 [details]). I thought it would be the workspace build job but 
this time I had to kill the decoration scheduler job to got other jobs working 
again. After that, no decorations where ever updated again.

Again, let me recall that my problem is NOT specific to problem decorations or 
to JDT views. ALL decorations become stale (also Team decorations) and also in 
the Resource Navigator.
Comment 8 Gunnar Wagenknecht CLA 2004-05-28 07:25:00 EDT
I got it again, but this time all decorations painted fine again after killing 
the "decoration scheduler" job.

I also noticed that the Problems view also shows old information. The Java 
editor is the only tool that is up-to-date with its annotation model.

Maybe what I'm seeing is that some job is blocking all things. Or some job is 
waiting/sleeping and doesn't get executed?
Comment 9 Dirk Baeumer CLA 2004-05-28 08:46:00 EDT
The Java editor shows the errors based on the current content of the CU. The 
errors are produced in the reconciler thread, which isn't a Job. The Editor 
doesn't rely on any build state. 

The fact that the problems view shows old information too shows that this 
isn't a package explorer refresh problem. Either the build didn't finish or 
the marker deltas aren't sent out correctly.

Gunnar, when you see this happening again can you try to produce a VM dump. 
This would help narrowing down the problem. 

Moving to Platform/UI.
Comment 10 Tod Creasey CLA 2004-05-28 08:48:00 EDT
I'll track this one although it sounds to me like it is a Core or JDT core 
issue as nothing is getting updated.
Comment 11 Tod Creasey CLA 2004-05-28 10:47:08 EDT
Bug 64559 describes a problem with refreshes of markers after builds in 
20040527.
Comment 12 Tod Creasey CLA 2004-05-28 15:44:11 EDT
Adding Bug 64540 to this list as this looks like the cause. It appears that 
auto builds are being pertiodically cancelled leaving your markers out of date.
Comment 13 John Arthorne CLA 2004-05-28 17:15:01 EDT
I noticed this bug is marked as blocked by bug 64540. We have a fix for this
bug, but we believe that bug was only introduced on May 26th. I don't know if
this bug is actually related or not.
Comment 14 Gunnar Wagenknecht CLA 2004-06-01 05:41:12 EDT
bug 57656 might be the cause
Comment 15 Gunnar Wagenknecht CLA 2004-06-01 05:41:36 EDT
bug 57656 might be the cause
Comment 16 Gunnar Wagenknecht CLA 2004-06-01 11:27:14 EDT
I'm sorry bug 57656 might not be the root cause. There are still other 
problems in the Package Explorer and Outline view in RC1.

Example: After beeing hit by bug 57656 I got the sleeping jobs working fine 
again. But the Package Explorer and the ouline view still did show old problem 
decorations for an element without any problems. Several changes and saves 
(which caused builds) didn't update the problem decorations in the Packages 
Explorer and Outline view. The Problems view was correct. It did not show any 
problems for the selected resource. Afte closing and reopening the Package 
Explorer and the Outline View the warning ticks were displayed correctly.
Comment 17 Dirk Baeumer CLA 2004-06-01 12:06:26 EDT
When the Package explorer gets out of sync for whatever reason it will not 
come back into sync by simply changing code and trigger a build. The problem 
marker manager listen to marker changes and tries to compute a minimal refresh 
for the shown label. So as long as nothing has changed for an element (field, 
method, ...) showing an error it will not be refreshed even if the file is 
rebuild.

So the only way to come back in sync again is to close/open the view or to 
trigger a rebuild all.
Comment 18 Dirk Baeumer CLA 2004-06-03 09:13:58 EDT
*** Bug 62061 has been marked as a duplicate of this bug. ***
Comment 19 Gunnar Wagenknecht CLA 2004-06-11 07:31:39 EDT
Again, this is a core problem. Even the Resource Navigator doesn't update 
anymore.

I closed all perspectives (which closes all views and editors). After 
reopening the Resource perspective not Team decorations are drawn in the 
Resource Navigator. After reopening the Java perspective, no Team decorations 
are drawn in the Package Explorer (but Problem decorations are drawn).

This indicates that it can also be a problem in the DecoratorManager because 
all views and only decorations contributed by plug-ins are affected. Build in 
decorations (problem decorations in Package Explorer) are not stale.

The problem with stale problem decorations int Package Explorer and Outline 
View I see in 3.0 RC1 might be a seperate issue (bug 62061 might not be a 
duplicate).
Comment 20 Gunnar Wagenknecht CLA 2004-06-11 07:37:26 EDT
addendum to comment #19:

The problem decorations are only painted initially but not updated in the Java 
views although they are removed from the Problems view. I think the 
LabelProviderChangedEvents are not handled anymore.

I also tried to cancel the "Decoration calulation" job, close all perspective 
and reopen one, but it didn't solve the problem. The job is never started 
again.
Comment 21 Tod Creasey CLA 2004-06-11 07:44:55 EDT
Killing the the decoration scheduling job could very easily mess up your 
decorations as the updates generated from it will not fire.

I'm adding Jean Michel to the list as if the CVS decorator can block on 
another job then decorations will be blocked waiting on it to finish.

I think Dirk may have seen a similiar case where a sync blocked the decorator 
thread
Comment 22 Dirk Baeumer CLA 2004-06-14 18:05:04 EDT
*** Bug 67073 has been marked as a duplicate of this bug. ***
Comment 23 Kevin Haaland CLA 2004-06-15 18:56:28 EDT
Gunnar,

   Can you recreate this problem on RC2? If this problem still occurs please 
describe the steps you took to cause the problem.
Comment 24 Erich Gamma CLA 2004-06-16 05:07:02 EDT
On 2nd read Bug #67073 mentions that this problem shows up on RC2. However, we 
still need a test case.
Comment 25 Jean-Michel Lemieux CLA 2004-06-16 09:07:42 EDT
*** Bug 67435 has been marked as a duplicate of this bug. ***
Comment 26 Tod Creasey CLA 2004-06-16 17:27:05 EDT
*** Bug 67471 has been marked as a duplicate of this bug. ***
Comment 27 Gabriele Garuglieri CLA 2004-06-17 02:12:34 EDT
I was asked by Jean-Michel Lemieux in bug 67435 to verify if error/warning
decorations were also out-of-sync and i can confirm that when i loose the team
decorators also the error decorators go out of sync.
But while it's enough to perform a project "clean" to force a rebuild to have
back the error decorators in sync, there's no way to have back team decorators
but restart eclipse.
Comment 28 Neil Swingler CLA 2004-06-17 03:30:52 EDT
Dont you think this is a "must fix" for 3.0
Comment 29 Gabriele Garuglieri CLA 2004-06-17 05:18:18 EDT
Created attachment 12366 [details]
Stale decorators thread dump

If it can help i've got a thread dump after all the team decorators wiped out
from the Package explorer view.
Comment 30 Neil Swingler CLA 2004-06-17 06:11:35 EDT
In case you suspect multithreading issues, my machine is a win XP P4 running in
hyperthreaded mode
Comment 31 Tod Creasey CLA 2004-06-17 08:18:17 EDT
Has anyone seen this also got anything to thier log? If a Thread had died that 
might explain this as well.

Gabrielle or Gunnar is there anything about your machines that are different 
we should look at as well?
Comment 32 Gunnar Wagenknecht CLA 2004-06-17 08:38:07 EDT
Nothing is logged. That's the problem. It just stops. Switching label 
decorations on or off in the preferences doesn't solve the problem. I have to 
restart Eclipse.

Machine is a P4 2,8 GHz with Hyperthreading, Windows XP, SP1a, 1GB RAM. I see 
this in all my workspaces. I see this more often in workspaces dealing only 
with CVS projects than in workspaces with ClearCase projects although I also 
see this there.

It seems like the Decoration Calculation job is sleeping all the time. The 
ClearCase decorator (for example) continues firering events but it's never ask 
to decorate elements.

Both are lightwight label decorators which may also be a point. Not sure.
Comment 33 Gabriele Garuglieri CLA 2004-06-17 09:06:41 EDT
My machine is a P4 3.06 GHz with Hyperthreading, Windows XP Pro sp1, 1GB RAM.
I don't find anything logged anywhere.
About how it happens, i have seen some variations, but it always starts with
team decorators.
Sometimes all the team decorators disappear suddendly from all the projects,
sometimes they begin disappearing in groups from the project i'm working within
starting from the leafs and propagating towards the root (considering as the
project root the folder containing it) to extend then to the other projects.

After this happens, sometimes (but sometimes not) also the warning/error
decorators go out of sync, but forcing a project rebuild i've always been able
to resync them.
No way instead for team decorators, they are irremediably lost and also checking
label decorators off and on in the preferences don't get them back.
Only restart does.

Comment 34 Tod Creasey CLA 2004-06-17 09:14:19 EDT
Thanks very much everyone - this is a big help.

Could you also all post the details of the virtual machines you are using? 
i.e. version number, manufacturer and revision if you know it.
Comment 35 Gabriele Garuglieri CLA 2004-06-17 09:24:03 EDT
java.runtime.name=Java(TM) 2 Runtime Environment, Standard Edition
java.runtime.version=1.4.2_04-b05
java.specification.name=Java Platform API Specification
java.specification.vendor=Sun Microsystems Inc.
java.specification.version=1.4
java.util.prefs.PreferencesFactory=java.util.prefs.WindowsPreferencesFactory
java.vendor=Sun Microsystems Inc.
java.vendor.url=http://java.sun.com/
java.vendor.url.bug=http://java.sun.com/cgi-bin/bugreport.cgi
java.version=1.4.2_04
java.vm.info=mixed mode
java.vm.name=Java HotSpot(TM) Client VM
java.vm.specification.name=Java Virtual Machine Specification
java.vm.specification.vendor=Sun Microsystems Inc.
java.vm.specification.version=1.0
java.vm.vendor=Sun Microsystems Inc.
java.vm.version=1.4.2_04-b05
Comment 36 Tod Creasey CLA 2004-06-17 10:07:20 EDT
Talking to John this morning is this is almost certainly a dup of Bug 57656. I 
am going to try and get in this state on a hyperthreaded machine and see if 
switching VMs makes any difference.
Comment 37 Gunnar Wagenknecht CLA 2004-06-17 10:31:35 EDT
Sun 1.4.2_04-b05. I also think that there must be a relation to bug 57656 but 
I have no clue. In 57656 I got auto building working again by simply canceling 
the top most sleeping job, which in 90% of the cases was "Decoration 
Calculation". 
Comment 38 Neil Swingler CLA 2004-06-17 10:37:57 EDT
1.4.2_04-b05
Comment 39 Tod Creasey CLA 2004-06-17 15:50:30 EDT
I have replicated this today using the following parameters

Sun 1.4.2 P4 (b5)
XP enterprise
hyperthreaded 3 Ghz machine.

I am now running with the option -Djava.compiler= none 

so as it turn off the jit and it has not happened to me yet. Could you please 
try running with this option and see if you get it again?
Comment 40 Dirk Baeumer CLA 2004-06-20 09:57:44 EDT
*** Bug 67576 has been marked as a duplicate of this bug. ***
Comment 41 Gunnar Wagenknecht CLA 2004-06-20 10:15:44 EDT
Indeed turning off the JIT compiler (-Djava.compiler=none) seems to solve the 
problem. Do you think it's a timing issue specific to the latest Sun VM?
Comment 42 Gunnar Wagenknecht CLA 2004-06-21 04:41:01 EDT
Please forget my last comment (comment #41). I had a situation right now where 
decorations are gone although the instance is started with "-
Djava.compiler=none".
Comment 43 Tod Creasey CLA 2004-06-21 08:26:57 EDT
I suspect it is a timing bug that the jit makes worse - thats why I wanted to 
see if things got better in general without it.
Comment 44 Neil Swingler CLA 2004-06-21 10:52:03 EDT
I haven't seen the problem since switching the JIT off
Comment 45 Tod Creasey CLA 2004-06-21 14:01:39 EDT
Gunnar would you mind running with the 02 version of the 1.4.1 Sun Vm and 
seeing if this still happens? 

I have been using that today and have not seen it yet but there appears to be 
something different about your workflow that makes these easier too see.
Comment 46 Tod Creasey CLA 2004-06-21 17:27:10 EDT
I can also make this happen with the 02 version with the JIT enabled.

When I looked in the progress view the decoration thread was sleeping. 
Cleaning and kicking off a build got me back on track but simple changes did 
not update the decorators or the error/warning annotations even with auto 
build on.

Enabling/disabling the decorators made no difference either. Note there are 
two dumps here

anager)
        at org.eclipse.jdi.internal.MirrorImpl.getCommandVM
(MirrorImpl.java:276)

        at org.eclipse.jdi.internal.event.EventQueueImpl.remove
(EventQueueImpl.j
ava:63)
        at org.eclipse.jdi.internal.event.EventQueueImpl.remove
(EventQueueImpl.j
ava:48)
        at org.eclipse.jdt.internal.debug.core.EventDispatcher.run
(EventDispatch
er.java:213)
        at java.lang.Thread.run(Thread.java:534)

"Packet Send Manager" prio=5 tid=0x03492b80 nid=0xd10 in Object.wait() 
[4b0f000.
.4b0fd8c]
        at java.lang.Object.wait(Native Method)
        - waiting on <0x14805ac0> (a 
org.eclipse.jdi.internal.connect.PacketSend
Manager)
        at java.lang.Object.wait(Object.java:429)
        at 
org.eclipse.jdi.internal.connect.PacketSendManager.sendAvailablePacke
ts(PacketSendManager.java:94)
        - locked <0x14805ac0> (a 
org.eclipse.jdi.internal.connect.PacketSendMana
ger)
        at org.eclipse.jdi.internal.connect.PacketSendManager.run
(PacketSendMana
ger.java:54)
        at java.lang.Thread.run(Thread.java:534)

"Packet Receive Manager" prio=5 tid=0x03e32bb8 nid=0xddc runnable 
[4acf000..4acf
d8c]
        at java.net.SocketInputStream.socketRead0(Native Method)
        at java.net.SocketInputStream.read(SocketInputStream.java:129)
        at java.net.SocketInputStream.read(SocketInputStream.java:182)
        at java.io.DataInputStream.readInt(DataInputStream.java:443)
        at org.eclipse.jdi.internal.jdwp.JdwpPacket.read(JdwpPacket.java:124)
        at 
org.eclipse.jdi.internal.connect.PacketReceiveManager.readAvailablePa
cket(PacketReceiveManager.java:224)
        at org.eclipse.jdi.internal.connect.PacketReceiveManager.run
(PacketRecei
veManager.java:70)
        at java.lang.Thread.run(Thread.java:534)

"Worker-67" prio=5 tid=0x03310080 nid=0xc84 in Object.wait() [4a8f000..4a8fd8c]
        at java.lang.Object.wait(Native Method)
        at org.eclipse.core.internal.jobs.WorkerPool.sleep(WorkerPool.java:166)
        - locked <0x1295e820> (a org.eclipse.core.internal.jobs.WorkerPool)
        at org.eclipse.core.internal.jobs.WorkerPool.startJob
(WorkerPool.java:19
3)
        at org.eclipse.core.internal.jobs.Worker.run(Worker.java:59)

"Console Polling Thread" prio=7 tid=0x02f09cd0 nid=0xf04 waiting on condition 
[4
9ef000..49efd8c]
        at java.lang.Thread.sleep(Native Method)
        at 
org.eclipse.debug.internal.ui.views.console.ConsoleDocumentPartitione
r.pollAndSleep(ConsoleDocumentPartitioner.java:565)
        at 
org.eclipse.debug.internal.ui.views.console.ConsoleDocumentPartitione
r$1.run(ConsoleDocumentPartitioner.java:549)
        at java.lang.Thread.run(Thread.java:534)

"Input Stream Monitor" prio=5 tid=0x03e484b8 nid=0xb64 in Object.wait() 
[486f000
..486fd8c]
        at java.lang.Object.wait(Native Method)
        - waiting on <0x14805ca0> (a java.lang.Object)
        at java.lang.Object.wait(Object.java:429)
        at org.eclipse.debug.internal.core.InputStreamMonitor.writeNext
(InputStr
eamMonitor.java:124)
        - locked <0x14805ca0> (a java.lang.Object)
        at org.eclipse.debug.internal.core.InputStreamMonitor.write
(InputStreamM
onitor.java:99)
        at org.eclipse.debug.internal.core.InputStreamMonitor$1.run
(InputStreamM
onitor.java:75)
        at java.lang.Thread.run(Thread.java:534)

"Output Stream Monitor" prio=5 tid=0x0349a008 nid=0xed8 runnable 
[482f000..482fd
8c]
        at java.io.FileInputStream.readBytes(Native Method)
        at java.io.FileInputStream.read(FileInputStream.java:177)
        at org.eclipse.debug.internal.core.OutputStreamMonitor.read
(OutputStream
Monitor.java:132)
        at org.eclipse.debug.internal.core.OutputStreamMonitor.access$1
(OutputSt
reamMonitor.java:124)
        at org.eclipse.debug.internal.core.OutputStreamMonitor$1.run
(OutputStrea
mMonitor.java:177)
        at java.lang.Thread.run(Thread.java:534)

"Output Stream Monitor" prio=5 tid=0x03f469b0 nid=0x31c runnable 
[3cdf000..3cdfd
8c]
        at java.io.FileInputStream.readBytes(Native Method)
        at java.io.FileInputStream.read(FileInputStream.java:194)
        at java.io.BufferedInputStream.read1(BufferedInputStream.java:220)
        at java.io.BufferedInputStream.read(BufferedInputStream.java:277)
        - locked <0x14809df0> (a java.io.BufferedInputStream)
        at java.io.FilterInputStream.read(FilterInputStream.java:90)
        at org.eclipse.debug.internal.core.OutputStreamMonitor.read
(OutputStream
Monitor.java:132)
        at org.eclipse.debug.internal.core.OutputStreamMonitor.access$1
(OutputSt
reamMonitor.java:124)
        at org.eclipse.debug.internal.core.OutputStreamMonitor$1.run
(OutputStrea
mMonitor.java:177)
        at java.lang.Thread.run(Thread.java:534)

"Worker-66" prio=5 tid=0x02f30970 nid=0xc0c in Object.wait() [3bdf000..3bdfd8c]
        at java.lang.Object.wait(Native Method)
        at org.eclipse.core.internal.jobs.WorkerPool.sleep(WorkerPool.java:166)
        - locked <0x1295e820> (a org.eclipse.core.internal.jobs.WorkerPool)
        at org.eclipse.core.internal.jobs.WorkerPool.startJob
(WorkerPool.java:19
3)
        at org.eclipse.core.internal.jobs.Worker.run(Worker.java:59)

"Worker-65" prio=5 tid=0x034fc578 nid=0xdcc in Object.wait() [3a9f000..3a9fd8c]
        at java.lang.Object.wait(Native Method)
        at org.eclipse.core.internal.jobs.WorkerPool.sleep(WorkerPool.java:166)
        - locked <0x1295e820> (a org.eclipse.core.internal.jobs.WorkerPool)
        at org.eclipse.core.internal.jobs.WorkerPool.startJob
(WorkerPool.java:19
3)
        at org.eclipse.core.internal.jobs.Worker.run(Worker.java:59)

"org.eclipse.jdt.internal.ui.text.JavaReconciler" daemon prio=2 tid=0x04049a30 
n
id=0xdf4 in Object.wait() [47ef000..47efd8c]
        at java.lang.Object.wait(Native Method)
        at 
org.eclipse.jface.text.reconciler.AbstractReconciler$BackgroundThread
.run(AbstractReconciler.java:175)
        - locked <0x1472bb08> (a 
org.eclipse.jface.text.reconciler.DirtyRegionQu
eue)

"org.eclipse.jdt.internal.ui.text.JavaReconciler" daemon prio=2 tid=0x03f5dac8 
n
id=0xd00 in Object.wait() [47af000..47afd8c]
        at java.lang.Object.wait(Native Method)
        at 
org.eclipse.jface.text.reconciler.AbstractReconciler$BackgroundThread
.run(AbstractReconciler.java:175)
        - locked <0x146be450> (a 
org.eclipse.jface.text.reconciler.DirtyRegionQu
eue)

"org.eclipse.jdt.internal.ui.text.JavaReconciler" daemon prio=2 tid=0x034b60d0 
n
id=0x8fc in Object.wait() [476f000..476fd8c]
        at java.lang.Object.wait(Native Method)
        at 
org.eclipse.jface.text.reconciler.AbstractReconciler$BackgroundThread
.run(AbstractReconciler.java:175)
        - locked <0x14626d10> (a 
org.eclipse.jface.text.reconciler.DirtyRegionQu
eue)

"org.eclipse.jdt.internal.ui.text.JavaReconciler" daemon prio=2 tid=0x03dbdea0 
n
id=0xccc in Object.wait() [471f000..471fd8c]
        at java.lang.Object.wait(Native Method)
        at 
org.eclipse.jface.text.reconciler.AbstractReconciler$BackgroundThread
.run(AbstractReconciler.java:175)
        - locked <0x145727c0> (a 
org.eclipse.jface.text.reconciler.DirtyRegionQu
eue)

"org.eclipse.jdt.internal.ui.text.JavaReconciler" daemon prio=2 tid=0x040b1c38 
n
id=0xbc0 in Object.wait() [46df000..46dfd8c]
        at java.lang.Object.wait(Native Method)
        at 
org.eclipse.jface.text.reconciler.AbstractReconciler$BackgroundThread
.run(AbstractReconciler.java:175)
        - locked <0x144cd900> (a 
org.eclipse.jface.text.reconciler.DirtyRegionQu
eue)

"org.eclipse.jdt.internal.ui.text.JavaReconciler" daemon prio=2 tid=0x03e04b28 
n
id=0xdac in Object.wait() [3d9f000..3d9fd8c]
        at java.lang.Object.wait(Native Method)
        at 
org.eclipse.jface.text.reconciler.AbstractReconciler$BackgroundThread
.run(AbstractReconciler.java:175)
        - locked <0x1437f528> (a 
org.eclipse.jface.text.reconciler.DirtyRegionQu
eue)

"org.eclipse.jdt.internal.ui.text.JavaReconciler" daemon prio=2 tid=0x04049c38 
n
id=0xdbc in Object.wait() [3adf000..3adfd8c]
        at java.lang.Object.wait(Native Method)
        at 
org.eclipse.jface.text.reconciler.AbstractReconciler$BackgroundThread
.run(AbstractReconciler.java:175)
        - locked <0x142f3f20> (a 
org.eclipse.jface.text.reconciler.DirtyRegionQu
eue)

"org.eclipse.jdt.internal.ui.text.JavaReconciler" daemon prio=2 tid=0x032a2ca8 
n
id=0xcb4 in Object.wait() [396f000..396fd8c]
        at java.lang.Object.wait(Native Method)
        at 
org.eclipse.jface.text.reconciler.AbstractReconciler$BackgroundThread
.run(AbstractReconciler.java:175)
        - locked <0x14270ab0> (a 
org.eclipse.jface.text.reconciler.DirtyRegionQu
eue)

"org.eclipse.jdt.internal.ui.text.JavaReconciler" daemon prio=2 tid=0x03293d88 
n
id=0x178 in Object.wait() [39af000..39afd8c]
        at java.lang.Object.wait(Native Method)
        at 
org.eclipse.jface.text.reconciler.AbstractReconciler$BackgroundThread
.run(AbstractReconciler.java:175)
        - locked <0x141cb078> (a 
org.eclipse.jface.text.reconciler.DirtyRegionQu
eue)

"Worker-61" prio=5 tid=0x033ceef0 nid=0xa94 runnable [48af000..48afd8c]
        at java.lang.Win32Process.waitFor(Native Method)
        at org.eclipse.debug.core.model.RuntimeProcess$ProcessMonitorJob.run
(Run
timeProcess.java:362)
        at org.eclipse.core.internal.jobs.Worker.run(Worker.java:66)

"Java indexing" daemon prio=4 tid=0x02fa0988 nid=0xc64 in Object.wait() 
[3a3f000
..3a3fd8c]
        at java.lang.Object.wait(Native Method)
        - waiting on <0x12c75dc0> (a 
org.eclipse.jdt.internal.core.search.indexi
ng.IndexManager)
        at java.lang.Object.wait(Object.java:429)
        at org.eclipse.jdt.internal.core.search.processing.JobManager.run
(JobMan
ager.java:338)
        - locked <0x12c75dc0> (a 
org.eclipse.jdt.internal.core.search.indexing.I
ndexManager)
        at java.lang.Thread.run(Thread.java:534)

"Reference Cleaner - 2" prio=7 tid=0x03151fb8 nid=0xc10 in Object.wait() 
[38df00
0..38dfd8c]
        at java.lang.Object.wait(Native Method)
        at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:111)
        - locked <0x12ab6848> (a java.lang.ref.ReferenceQueue$Lock)
        at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:127)
        at 
org.eclipse.jface.action.ActionContributionItem$ImageCache$ReferenceC
leanerThread.run(ActionContributionItem.java:207)

"Reference Cleaner - 1" prio=7 tid=0x03147828 nid=0x960 in Object.wait() 
[389f00
0..389fd8c]
        at java.lang.Object.wait(Native Method)
        - waiting on <0x12ab68b8> (a java.lang.ref.ReferenceQueue$Lock)
        at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:111)
        - locked <0x12ab68b8> (a java.lang.ref.ReferenceQueue$Lock)
        at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:127)
        at 
org.eclipse.jface.action.ActionContributionItem$ImageCache$ReferenceC
leanerThread.run(ActionContributionItem.java:207)

"Start Level Event Dispatcher" daemon prio=5 tid=0x00a22480 nid=0xbf8 in 
Object.
wait() [30cf000..30cfd8c]
        at java.lang.Object.wait(Native Method)
        - waiting on <0x127e8f28> (a 
org.eclipse.osgi.framework.eventmgr.EventTh
read)
        at java.lang.Object.wait(Object.java:429)
        at org.eclipse.osgi.framework.eventmgr.EventThread.getNextEvent
(EventThr
ead.java:162)
        - locked <0x127e8f28> (a 
org.eclipse.osgi.framework.eventmgr.EventThread
)
        at org.eclipse.osgi.framework.eventmgr.EventThread.run
(EventThread.java:
100)

"Framework Event Dispatcher" daemon prio=5 tid=0x00a1f838 nid=0xbfc in 
Object.wa
it() [308f000..308fd8c]
        at java.lang.Object.wait(Native Method)
        - waiting on <0x127e9010> (a 
org.eclipse.osgi.framework.eventmgr.EventTh
read)
        at java.lang.Object.wait(Object.java:429)
        at org.eclipse.osgi.framework.eventmgr.EventThread.getNextEvent
(EventThr
ead.java:162)
        - locked <0x127e9010> (a 
org.eclipse.osgi.framework.eventmgr.EventThread
)
        at org.eclipse.osgi.framework.eventmgr.EventThread.run
(EventThread.java:
100)

"Signal Dispatcher" daemon prio=10 tid=0x0003d808 nid=0xbb0 waiting on 
condition
 [0..0]

"Finalizer" daemon prio=9 tid=0x009c04e0 nid=0x47c in Object.wait() 
[2d4f000..2d
4fd8c]
        at java.lang.Object.wait(Native Method)
        at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:111)
        - locked <0x1277a5d0> (a java.lang.ref.ReferenceQueue$Lock)
        at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:127)
        at java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:159)

"Reference Handler" daemon prio=10 tid=0x009bf028 nid=0xbb8 in Object.wait() 
[2d
0f000..2d0fd8c]
        at java.lang.Object.wait(Native Method)
        at java.lang.Object.wait(Object.java:429)
        at java.lang.ref.Reference$ReferenceHandler.run(Reference.java:115)
        - locked <0x1277a638> (a java.lang.ref.Reference$Lock)

"main" prio=7 tid=0x00035240 nid=0xa84 runnable [7f000..7fc3c]
        at org.eclipse.swt.internal.win32.OS.WaitMessage(Native Method)
        at org.eclipse.swt.widgets.Display.sleep(Display.java:3036)
        at org.eclipse.ui.application.WorkbenchAdvisor.eventLoopIdle
(WorkbenchAd
visor.java:344)
        at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:1376)
        at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:1346)
        at org.eclipse.ui.internal.Workbench.createAndRunWorkbench
(Workbench.jav
a:252)
        at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:141)
        at org.eclipse.ui.internal.ide.IDEApplication.run
(IDEApplication.java:96
)
        at org.eclipse.core.internal.runtime.PlatformActivator$1.run
(PlatformAct
ivator.java:335)
        at org.eclipse.core.runtime.adaptor.EclipseStarter.run
(EclipseStarter.ja
va:272)
        at org.eclipse.core.runtime.adaptor.EclipseStarter.run
(EclipseStarter.ja
va:128)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke
(NativeMethodAccessorImpl.
java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke
(DelegatingMethodAcces
sorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:324)
        at org.eclipse.core.launcher.Main.basicRun(Main.java:186)
        at org.eclipse.core.launcher.Main.run(Main.java:647)
        at org.eclipse.core.launcher.Main.main(Main.java:631)

"VM Thread" prio=5 tid=0x009fb720 nid=0xbc4 runnable

"VM Periodic Task Thread" prio=10 tid=0x009fc040 nid=0x73c waiting on condition

"Suspend Checker Thread" prio=10 tid=0x009c2a78 nid=0xbcc runnable
Comment 47 Tod Creasey CLA 2004-06-21 17:32:26 EDT
**** BEGIN DUMP JOB MANAGER INFORMATION ****
Process monitor(4340) state: RUNNING
Periodic workspace save.(4) state: SLEEPING
Decoration Calculation(15) state: SLEEPING
**** END DUMP JOB MANAGER INFORMATION ****
Comment 48 Dirk Baeumer CLA 2004-06-21 18:00:01 EDT
*** Bug 68107 has been marked as a duplicate of this bug. ***
Comment 49 Tod Creasey CLA 2004-06-22 10:30:59 EDT
I could not append a patched workbench.jar but I am running this morning with 
this patch.

If you want to try it out apply it to the DecorationScheduler, generate a new 
workbench.jar from org.eclipse.ui.workbench and replace the one in your 
plugin.xml.

Index: DecorationScheduler.java
===================================================================
RCS file: /home/eclipse/org.eclipse.ui.workbench/Eclipse 
UI/org/eclipse/ui/internal/decorators/DecorationScheduler.java,v
retrieving revision 1.39
diff -u -r1.39 DecorationScheduler.java
--- DecorationScheduler.java	20 Apr 2004 17:45:55 -0000	1.39
+++ DecorationScheduler.java	22 Jun 2004 14:24:50 -0000
@@ -128,6 +128,8 @@
 			awaitingDecoration.add(element);
 			if (shutdown)
 				return;
+			if(decorationJob.getState() == Job.SLEEPING)
+				decorationJob.wakeUp();
 			decorationJob.schedule();
 		}
 		
Comment 50 Tod Creasey CLA 2004-06-22 10:35:40 EDT
*** Bug 68162 has been marked as a duplicate of this bug. ***
Comment 51 Michael Valenta CLA 2004-06-22 10:36:58 EDT
*** Bug 62113 has been marked as a duplicate of this bug. ***
Comment 52 Tod Creasey CLA 2004-06-22 11:37:31 EDT
This workaround has been released for the 2004-0622-1300 build
Comment 53 Tod Creasey CLA 2004-06-22 12:15:11 EDT
Marking fixed for the verfication pass.
Comment 54 Tod Creasey CLA 2004-06-23 18:53:21 EDT
Marking verified.
Comment 55 Tod Creasey CLA 2004-06-30 11:27:03 EDT
*** Bug 68945 has been marked as a duplicate of this bug. ***
Comment 56 Victor Costan CLA 2004-06-30 13:32:27 EDT
Re: the latest duplicate bug

This shouldn't be marked as fixed then, should it?
Comment 57 John Arthorne CLA 2004-06-30 13:44:38 EDT
The latest duplicate was reported against build 200406111814, but the workaround
was only released for the 0622 build. Therefore, it is quite possible that it is
a duplicate. For all people who have reported this, we would like to hear
feedback from anyone who has experienced this problem with the 3.0 release.
Comment 58 Neil Swingler CLA 2004-06-30 15:10:31 EDT
I have used the integration build containing the fix and the actual 3.0 release
since Monday and have not seen the problem again.
Comment 59 Gabriele Garuglieri CLA 2004-07-01 01:56:46 EDT
No more occurrences since when using the 0622 build. Now i'm using the 3.0 final
release and it works really smooth.
Comment 60 David Mechner CLA 2004-07-09 12:12:41 EDT
Sorry to say this still seems to be a problem (though less frequent) in 3.0.0
final (Build id: 200406251208). 

Introducing errors by, for example, commenting out a method that's used by a
subclass sometimes doesn't cause appropriate error decorators to appear in the
package explorer. Cleaning the source and doing a full rebuild seems to restore
the proper decorations. 

Fixing the problem (by un-commenting the referenced methods) sometimes doesn't
remove the error decorations appropriately. Going to the file that references
the now-restored methods shows the greyed-out error decorations in the editor
(even though all files are saved), and the package explorer still shows an error
for the file. Cleaning the source and doing a rebuild fixes it. 

The only item I see in the Progress view is "Setting build path (Waiting)" which
never seems to go away. 

Comment 61 Dirk Baeumer CLA 2004-07-12 05:18:20 EDT
David, 

when this happens, what does the problems view show. Are the errors reported 
in the problems view ?

The waiting job might be related to bug 68505.
Comment 62 Tod Creasey CLA 2004-07-12 08:10:49 EDT
I'll reopen. It could be that the job setting the build path has a lock that 
may block your updates.
Comment 63 Tod Creasey CLA 2004-07-12 15:30:59 EDT
The issue in the progress view is Bug 68505 which was a general issue with 
user jobs (this one is from the BuildPathsPropertyPage) and is not related to 
your problem (you just managed to find 2 at once...).

As Dirk was saying if your problems view is correct this is an issue with the 
updating of decorations - if not it is likely a builder issue.
Comment 64 David Mechner CLA 2004-07-12 15:40:08 EDT
I was just at my co-worker's workstation trying to recreate this problem to
answer your question and realized his "Build Automatically" flag was off. I am
both happy (for you) and embarassed (for us) to say this may have been a false
bug report. I'll let you know if he encounters the error again in the next
couple of days. 
Comment 65 Tod Creasey CLA 2004-07-12 16:45:50 EDT
No problem David - you had reported a valid bug after all - Bug 68505.

I am going to close this - please reopen if the problem is really happening.
Comment 66 Tod Creasey CLA 2005-05-10 14:56:19 EDT
Marking closed