Bug 386171 - JPA Java Change Event Handler (Waiting)
Summary: JPA Java Change Event Handler (Waiting)
Status: VERIFIED FIXED
Alias: None
Product: Dali JPA Tools
Classification: WebTools
Component: JPA (show other bugs)
Version: 3.2   Edit
Hardware: PC All
: P3 major with 14 votes (vote)
Target Milestone: 3.2.1   Edit
Assignee: Karen Butzke CLA
QA Contact:
URL:
Whiteboard:
Keywords:
: 387455 (view as bug list)
Depends on: 386358 397778
Blocks:
  Show dependency tree
 
Reported: 2012-07-27 17:36 EDT by Kieran Shaw CLA
Modified: 2023-07-16 10:03 EDT (History)
38 users (show)

See Also:


Attachments
Empty progress tab but full progress blocker (369.07 KB, image/png)
2012-11-29 08:20 EST, Gregor Magdolen CLA
no flags Details
Eclipse 4.2.1 Config Dump (98.04 KB, application/x-gzip)
2013-01-02 17:05 EST, Eric Dalquist CLA
no flags Details
Example user operation waiting dialog (109.97 KB, image/png)
2013-08-09 11:20 EDT, Dan Nimick CLA
no flags Details
Progress dialog with nothing but many JPA change event (7.35 KB, image/png)
2013-08-09 13:16 EDT, Dan Nimick CLA
no flags Details
progress with jpa (49.11 KB, image/png)
2014-09-19 15:02 EDT, Warren Goldman CLA
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Kieran Shaw CLA 2012-07-27 17:36:27 EDT
I have just upgraded to Eclipse Juno 4.2. I have a completely clean new workspace, but have imported projects that have previously been used in Eclipse 3.7 and therefore have some Eclipse metadata in them.

When moving to 4.2 I converted a project to use "Project Facets". The only Facet enabled is "Java".

However, I regularly get "JPA Java Change Event Handler (Waiting)" appearing in my progress view. I do have JPA annotated classes within the project, but I do not have the JPA facet enabled.

So...why am I getting these tasks being run by Eclipse?
Comment 1 Stephan Herrmann CLA 2012-07-28 06:48:27 EDT
Moving to the JPA experts.
Comment 2 Isabel Losada CLA 2012-08-08 09:36:05 EDT
I have the same issue 
Upgraded to Eclipse Juno 4.2. with clean new workspace.

I'm developing with salesforce plugin coding apex classes, don't use JPA, but every time I save and upload code to the server get "JPA Java Change Event Handler (Waiting)" appearing in my progress view.
Comment 3 Karen Butzke CLA 2012-08-08 12:37:32 EDT
I am attempting to get this fixed in the JDT Text component with bug 386358. I would like to still have the JPA Java completion proposal computers activate the JPA plug-ins, but only when a JPA facet exists on the project. This would prevent our plug-ins from being loaded into a workspace that does not use JPA.

This is my preferred solution to this bug rather than setting our completion proposal computers to activate="false". That could lead to someone using the JPA facet only for Java content-assist not being able to get our plug-ins activated.
Comment 4 Karen Butzke CLA 2012-08-14 17:22:23 EDT
JDT has nicely fixed this problem for 3.8.1. I have committed a few things for clarity: added comments and set out second proposal computer to activate = "true".

For Juno SR1 
R3_2_maintenance-
http://git.eclipse.org/c/dali/webtools.dali.git/commit/?id=250b5cad594eb91d084bbec2ec7bfd3560b92c23


For Kepler 
master-
http://git.eclipse.org/c/dali/webtools.dali.git/commit/?id=24bb681479ef95f9aee821c9f32c047935bec7d3
Comment 5 Neil Hauge CLA 2012-08-20 10:57:53 EDT
*** Bug 387455 has been marked as a duplicate of this bug. ***
Comment 6 Karen Butzke CLA 2012-08-29 17:32:08 EDT
verified in 3.2.1 and kepler
Comment 7 Gregor Magdolen CLA 2012-11-22 09:17:20 EST
I can still replicate this bug using STS Version: 3.1.0.RELEASE Build Id: 201210061306 with Eclipse Juno 4.2.1.v20120814-120134-9JF7BHVGFyMveli1uX6aTH0q-eAap6PAgOP5mO and Dali JPA Tools 3.2.1.v201208222210-7M7J78F7RZHQYJAQsS4SVFD7 on Windows 7 x64 and 8GB ram.

Project's only facets are Dynamic Web Module, Java, JavaScript and Utility module. On almost every change Progress shows about 10 JPA Project Change Event Handlers that are either unable to cancel (as with each chancelled one or two more will appear) to "kill" or to let them pass as they all are waiting.

Only help for me is either by killing JVM and restarting eclipse or to click Cancel Operation until eclipse decides not to add any more events to the queue and cancel them all. Sometimes when I click "Remove All Finished Operations" on Progress tab all removed JPA Project Change Events are returned back to the queue.

Can you turn off those events when JPA facet is not active?
Comment 8 Brian Vosburgh CLA 2012-11-26 14:47:47 EST
(In reply to comment #7)
> Only help for me is either by killing JVM and restarting eclipse or to click
> Cancel Operation until eclipse decides not to add any more events to the
> queue and cancel them all. Sometimes when I click "Remove All Finished
> Operations" on Progress tab all removed JPA Project Change Events are
> returned back to the queue.

When you say you "kill" the JVM, do you do that because the workspace is deadlocked? Or are you just being impatient?

> Can you turn off those events when JPA facet is not active?

If *any* project in your workspace has the JPA facet, these events will occur. Can you provide steps to replicate your issues in a new workspace?
Comment 9 Gregor Magdolen CLA 2012-11-29 08:19:52 EST
(In reply to comment #8)
> (In reply to comment #7)
> > Only help for me is either by killing JVM and restarting eclipse or to click
> > Cancel Operation until eclipse decides not to add any more events to the
> > queue and cancel them all. Sometimes when I click "Remove All Finished
> > Operations" on Progress tab all removed JPA Project Change Events are
> > returned back to the queue.
> 
> When you say you "kill" the JVM, do you do that because the workspace is
> deadlocked? Or are you just being impatient?

Most of the time I am impatient. Sorry but waiting 10 minutes on x64 with 8GB RAM because eclipse deciced to run same 10 events on java file save is ridiculous. The worst part is when Progress tab shows no events at all, but on any action later a progress blocker window will appear full of these processes. See attached screenshot.

> 
> > Can you turn off those events when JPA facet is not active?
> 
> If *any* project in your workspace has the JPA facet, these events will
> occur. Can you provide steps to replicate your issues in a new workspace?

No opened project has JPA facet configured. Actually most of them are not configured to even use facets.

I'll try to do my best to simulate this error on clean workspace during weekend and I'll let you know.
Comment 10 Gregor Magdolen CLA 2012-11-29 08:20:52 EST
Created attachment 224102 [details]
Empty progress tab but full progress blocker
Comment 11 Karen Butzke CLA 2012-11-29 08:42:47 EST
What is the 'System: Animation start' process? From your screenshot, it shows the the 'Refresh' and 'Building Workspace' jobs are waiting on that first job.
Comment 12 Gregor Magdolen CLA 2012-11-29 08:52:07 EST
(In reply to comment #11)
> What is the 'System: Animation start' process? From your screenshot, it
> shows the the 'Refresh' and 'Building Workspace' jobs are waiting on that
> first job.

The 'System: Animation start' always appears with 'JPA Project Change Event Handler'. Any time I try to cancel them or remove finished this process appears. The workspace is either stuck on that or 'JPA Project Change Event Handler (Finished)'. And it is able to just 'be' there for another 10-15 minutes...

Isn't it weird that tab shows different processes than window, mostly no JPA events shown in Progress tab?
Comment 13 Karen Butzke CLA 2012-11-29 11:07:34 EST
(In reply to comment #12)
> (In reply to comment #11)
> > What is the 'System: Animation start' process? From your screenshot, it
> > shows the the 'Refresh' and 'Building Workspace' jobs are waiting on that
> > first job.
> 
> The 'System: Animation start' always appears with 'JPA Project Change Event
> Handler'. Any time I try to cancel them or remove finished this process
> appears. The workspace is either stuck on that or 'JPA Project Change Event
> Handler (Finished)'. And it is able to just 'be' there for another 10-15
> minutes...

The dialog you showed is saying that the Refresh job is attempting to run, but it is waiting on the 'System: Animation start'. That is not related to JPA, we just happen to also be in the list of jobs waiting. Could you attach a thread dump when this happens? You can use Java JVisualVM to do that.

> Isn't it weird that tab shows different processes than window, mostly no JPA
> events shown in Progress tab?

I agree that's weird, but I don't know why Eclipse is doing that.
Comment 14 Dietrich Schulten CLA 2012-12-28 07:02:27 EST
The problem still exists in Juno 4.2 SR1, no project has JPA facet enabled.
Eclipse Java EE IDE for Web Developers.

Version: Juno Release
Build id: 20120614-1722

Even with JPA facet enabled, it is not good that so many events are triggered, without any JPA related change!

The events effectively block the IDE almost after each code change.

Is removing all jpt related plugins and features a possible workaround?
Comment 15 Neil Hauge CLA 2012-12-28 09:50:22 EST
(In reply to comment #14)
> The problem still exists in Juno 4.2 SR1, no project has JPA facet enabled.
> Eclipse Java EE IDE for Web Developers.
> 
> Version: Juno Release
> Build id: 20120614-1722

This is the build ID for the original Juno, not SR1.  If this is the build ID showing up in the about dialog you do not have SR1.

> Even with JPA facet enabled, it is not good that so many events are
> triggered, without any JPA related change!

The events are JDT events.
Comment 16 Eric Dalquist CLA 2013-01-02 17:05:50 EST
Created attachment 225151 [details]
Eclipse 4.2.1 Config Dump

I'm still seeing this issue with:

Version: Juno Service Release 1
Build id: 20121004-1855

Whenever I use the refactor tools I get flooded with "JPA Project Change Event Handler" tasks that end up using an entire core of CPU usage time.
Comment 17 Karen Butzke CLA 2013-01-03 15:25:56 EST
Eric,
Do you have any JPA faceted projects? Might not sound related, but do you use content assist in any XML files?

(In reply to comment #16)
> Created attachment 225151 [details]
> Eclipse 4.2.1 Config Dump
> 
> I'm still seeing this issue with:
> 
> Version: Juno Service Release 1
> Build id: 20121004-1855
> 
> Whenever I use the refactor tools I get flooded with "JPA Project Change
> Event Handler" tasks that end up using an entire core of CPU usage time.
Comment 18 Karen Butzke CLA 2013-01-10 13:33:01 EST
We have fixed 3 more bugs for Juno SR2 that can cause this: bug 397606, bug 397778, bug 386393
Comment 19 Eric Dalquist CLA 2013-01-24 11:31:49 EST
I'm not sure on the JPA facet, I'm using M2E + Spring plugins which handle most of the project configuration. I do have projects that use JPA and use XML content assist, primarily Spring XML files.

Let me know if you need additional information.

(In reply to comment #17)
> Eric,
> Do you have any JPA faceted projects? Might not sound related, but do you
> use content assist in any XML files?
> 
> (In reply to comment #16)
> > Created attachment 225151 [details]
> > Eclipse 4.2.1 Config Dump
> > 
> > I'm still seeing this issue with:
> > 
> > Version: Juno Service Release 1
> > Build id: 20121004-1855
> > 
> > Whenever I use the refactor tools I get flooded with "JPA Project Change
> > Event Handler" tasks that end up using an entire core of CPU usage time.
Comment 20 Paris Apostolopoulos CLA 2013-06-05 08:39:16 EDT
Hi my details are the following

*** System properties:
applicationXMI=org.eclipse.ui.workbench/LegacyIDE.e4xmi
awt.toolkit=sun.lwawt.macosx.LWCToolkit
eclipse.application=org.eclipse.ui.ide.workbench
eclipse.buildId=M20130204-1200
eclipse.commands=-os
macosx
-ws
cocoa
-arch
x86_64
-launcher
/Applications/eclipse-juno-sr2/Eclipse.app/Contents/MacOS/eclipse

Unfortunately I still have SERIOUS delays and hangs by the JPA event handler.
Comment 21 Neil Hauge CLA 2013-06-07 17:30:24 EDT
(In reply to comment #20)

> Unfortunately I still have SERIOUS delays and hangs by the JPA event handler.

Does this involve a project with JPA faceted projects?  Can you attach a screen shot of the Progress view and/or a thread dump when you are experiencing these issues.  Unless you have large JPA projects in your workspace, it is unlikely that the delays you are experiencing are related to the JPA event handler.  It has a tendency to look guilty at a glance but in fact is innocent.  See comment #13.
Comment 22 Paris Apostolopoulos CLA 2013-06-08 08:50:59 EDT
My apologies for not being clear - my mistake. 

So, yes one of the maven modules is containing JPA code, and the Facet was enabled automatically. It is not a huge project but it is not just a few java sources small project, typical Jee application with a couple of well defined layers.

The JPA event handling - functionality/behavuor really made very close to switch IDE last week, eventually I almost did, with Netbeans. One of my colleagues suggested to - disable the JPA facet, and only then I could really get back to work.

The behavior is really problematic, when ever I do a small change in the source or in the poms the JPA event kicks in and the delays are close to a minute. It just happens that I can live with no JPA facet and I really don't care, but some other colleagues on the same project that do really want the facet and the related functionality, do hurt on productivity and still have lots of problems. 

Prior to disabling the Facet I tried switching to Kepler (rc2) hoping that it would have resolved this annoying waiting, but things are the same. 

My setup is 

MacOSX 10.8.3
Eclipse Juno SR2 or Kepler RC2
JDK 7
MacBookPro (Core2Duo 2,53), 8GB ram and the project/eclipse running on SSD)

When I have some free time I will re-enable the facet and post some waiting screenshots. 

Many many thanks for your prompt reply anyway :)
Comment 23 Neil Hauge CLA 2013-06-08 14:36:03 EDT
That's very interesting. I'm not sure if your issue is related to this bug but it is certainly something we need to investigate. I wonder if there is something about your project that is causing Dali to misbehave.  Would be interesting if you could create a test case based on your project that could reproduce this result.  A thread dump would also be very helpful.  Thanks got your help in debugging this issue.
Comment 24 Dan Nimick CLA 2013-08-07 17:55:33 EDT
I'm seeing this on Kepler, too.  Build id: 20130614-0229

For me, I get either the original reporter's:

"JPA Java Change Event Handler (Waiting)"

or

"JPA Project Change Event Handler (Waiting)"

and it always seems to be associated with

"Remote System Explorer Operation"

I don't know if the progress view has a limit on the number of rows displayed, but these always seem to happen in sets of 4.  It will alternate between a set of one of the JPA ones and the Remote ones every few seconds for up to a few minutes, during which time my system CPU is very high, and I can't do much of anything in Eclipse.

I've tried unchecking the JPA items under Java -> Editor -> Content Assist -> Advanced but it didn't help.
Comment 25 Neil Hauge CLA 2013-08-08 16:06:12 EDT
(In reply to comment #24)

> and it always seems to be associated with
> 
> "Remote System Explorer Operation"

You are seeing the JPA Event Handler only because it is waiting for the other operation to complete, at which point it will likely do nothing depending on the context.  A screenshot or series of screenshots would be helpful in confirming this, but that is my suspicion.  There appears to be a number of reports on the web of people dealing with performance problems caused by the Remote System Explorer Operation, which is performed by a 3rd party plugin.
Comment 26 Paris Apostolopoulos CLA 2013-08-09 02:36:40 EDT
Hi again, I am following this post with great interest. I think I might be in this case where the 'Remote System Explore Operation' is blocking the JPA module, and we are sort of confused on who is blocking who. Is there any chance any member of the Eclipse dev team, to indicate which is this this 'Remote System' module, so that the community can address issues correctly. I mean it is like, a hidden ghost. Unless it is part of the Eclipse internals (life cycle) .
Any hint to to right direction would be much appreciated.
Comment 27 Dan Nimick CLA 2013-08-09 06:42:52 EDT
I think I may have discovered the source of the "Remote System Explorer Operation" that seems to be blocking the JPA change event handler, at least in my case.  

I uninstalled the Maven Connectors (m2e connector for openjpa) plugin that is installed (manually, not part of base Eclipse) from this site

http://openjpa-maven-connector.googlecode.com/svn/trunk/openjpa-connector-update-site

I ran all day yesterday without getting the Remote System block once.  With that plugin installed I was getting it very frequently.

The benefit of that plugin is pretty much flawless enhancement of JPA entities.  So with it removed I'm back to having to do Project -> Clean on my JPA projects pretty frequently.  But at least that's under my control, whereas the Explorer Operation is not, so I'll live with it this way for now...
Comment 28 Neil Hauge CLA 2013-08-09 10:50:40 EDT
I need to correct an earlier statement that the Remote System Explorer is a 3rd party plugin.  It is actually an Eclipse.org plugin hosted in the Target Management project[1].  I don't think this plugin is included by default in any of the main Eclipse.org package downloads, but a number of 3rd party tools bundle this functionality into their products, and as a result it appears to be coming from those 3rd party bundles.  In either case, it does seem to be at the root of some performance related issues (likely due to network latency/timeouts) while using Eclipse, and removing the 3rd party plugins would solve the problem, but at the cost of losing the added capabilities. 

I think it would be worthwhile to inquire about possible performance problems directly with the TM project on their forum[2] to see if there are ways to address these issues without loss of functionality.

[1] http://www.eclipse.org/tm/
[2] http://www.eclipse.org/forums/eclipse.tm

RSE FAQ - http://wiki.eclipse.org/TM_and_RSE_FAQ
Comment 29 Dan Nimick CLA 2013-08-09 11:18:15 EDT
Neil,  Thanks for the clarification.  And I have a correction of my own.  While it is true that I ran all day yesterday without this plague, it is back today :-(

I'll add a screenshot of the User action is blocked dialog (but I think you understand well without that)
Comment 30 Dan Nimick CLA 2013-08-09 11:20:23 EDT
Created attachment 234268 [details]
Example user operation waiting dialog
Comment 31 Dan Nimick CLA 2013-08-09 13:16:17 EDT
Created attachment 234270 [details]
Progress dialog with nothing but many JPA change event

And I'm still not convinced the waiting JPA event handlers are completely due to the remote system explorer.  I just had an instance where there were many entries in the Progress view.  I don't know how many total entries there were.  Every time I tried to scroll it immediately bounced back to the top as one had finished and another started.

As shown in the attachment, as soon as one finished the next started.  My 4 core system was pegged on all 4 for about a minute until they finished.  There could well have been over 100 total.

So regardless of whether the remote system explorer should or should not be running, something is launching way, way too many JPA event handlers...
Comment 32 Neil Hauge CLA 2013-08-09 15:40:22 EDT
That does sound interesting.  Something must be changing one or many resources (a lot) in your JPA faceted project.  Perhaps something that would be manipulating many resources at once?  Any ideas on what that could be?  The openjpa maven connecter says that it refreshes target folders to prevent sync problems in the workspace.  Perhaps this could cause a large number of resources to be changed?  Trying to think of what could be causing this behavior.  If you have a number of 3rd party tools installed it may be hard to identify the cause.  Would be interesting to see if you could reproduce this with say the Kepler Java EE Pacakge with no external plugins added, just to further isolate the possible cause.
Comment 33 Dan Nimick CLA 2013-08-09 16:45:52 EDT
All I know for certain is that it's triggered by a save of a single file.  Doesn't have to be a JPA entity that's being saved.  It *feels* like it's worse after save of an applicationContext file, but I don't have proof of that.  Perhaps related, a colleague of mine found this

http://forum.springsource.org/showthread.php?138682-STS-3-3-0-m2-and-Remote-System-Explorer-Poor-performances

We are pretty dependent on the Spring STS.  I may try uninstalling it at some point.

Regarding the m2e openjpa connector, I didn't have it installed at the time of my most recent screen shot.
Comment 34 Eric Dalquist CLA 2013-08-09 16:49:01 EDT
Also semi-anecdotal evidence is I notice this problem is significantly worse when using automated refactoring to change any externally visible part of a class. So renaming, moving, and changing a non private method or field. That always seems to trigger the huge pile up of JPA and Remote System events.
Comment 35 Neil Hauge CLA 2013-08-09 17:19:15 EDT
Thanks for the additional info guys.  A couple of thoughts.  Just to check, are any of you generating JPA metamodel classes?  I don't think this would be related, but trying to think of anyway that we could be contributing to the problem.  Also it is interesting that there aren't any JPA related jobs in the list that would indicate that we are doing actual work (like building a JPA project, updating a project, syncing a project, etc).  Something out there is making a bunch of resource changes that we have to evaluate to determine whether our model should be updated or not based on the change.  And it would seem that that evaluation is always indicating that we do not need to update our model, as no other related jobs are being created.  

One thing that might be helpful would be a thread dump when in the state described in comment 31.  This could indicate what else might be going on that leads to this problem.  It may be that whatever created all the resource change events has already finished and gone, but perhaps we can get a hint as to what might be causing the issue.

See http://wiki.eclipse.org/How_to_report_a_deadlock on how to obtain a thread dump, if needed.
Comment 36 Eric Dalquist CLA 2013-08-09 17:26:09 EDT
Yes my project is doing meta-model generation. I'm in the middle of moving but when I'm done I'll try to provide more dumps.

I believe I only see this when I take the J2EE version of eclipse and add STS + M2E and the required M2E connectors. The big project I have problems with is: https://github.com/jasig/uPortal

Like I said though, I'll try to reproduce this next week and provide some dumps.
Comment 37 Paris Apostolopoulos CLA 2013-08-10 09:16:13 EDT
Hi, in my case I am not generating anything within eclipse, I enhancing JPA enabled entities using a maven task. (I actually through this post found out that there was an ecliplse plug in for this). 

Now when it comes to 'who might be triggering' the remote system exploration, is m2e or the related Maven plugin a possible answer? I guess in maven based projects where the maven facet and the maven builder are activated, + Build Automatically is enabled, is a good candidate on spawning related events or requesting 'remote system exploration.

One extra question? is there any chance the option 'Refresh file status using native hook - polls' to be involved in the workspace settings?

Thanks, and greetings to all
Comment 38 Neil Hauge CLA 2013-08-12 16:15:26 EDT
(In reply to comment #36)
> Yes my project is doing meta-model generation. I'm in the middle of moving
> but when I'm done I'll try to provide more dumps.

It would be interesting to see if things change if meta-model generation is  disabled.  If you have a large model, this could result in a certain amount of churn.

> 
> I believe I only see this when I take the J2EE version of eclipse and add
> STS + M2E and the required M2E connectors. The big project I have problems
> with is: https://github.com/jasig/uPortal
> 
> Like I said though, I'll try to reproduce this next week and provide some
> dumps.

Thanks for the info.  I'll see if I can reproduce the behavior.
Comment 39 Neil Hauge CLA 2013-08-12 16:30:41 EDT
(In reply to comment #37)

> Now when it comes to 'who might be triggering' the remote system
> exploration, is m2e or the related Maven plugin a possible answer? I guess
> in maven based projects where the maven facet and the maven builder are
> activated, + Build Automatically is enabled, is a good candidate on spawning
> related events or requesting 'remote system exploration.

There is some possibility there.  I can try to dig in this area a bit.

> One extra question? is there any chance the option 'Refresh file status
> using native hook - polls' to be involved in the workspace settings?

This could certainly cause performance issues, especially if a remote filesystem is involved.  This is off by default but if on could certainly cause issues.
Comment 40 Paris Apostolopoulos CLA 2013-08-12 16:35:55 EDT
Hi Neil, thanks for your reply. I will keep some notes based on this thread and - re-check my overall workspace settings tomorrow- especially the native hooks (I think I might disable them after all). Thanks again for your tips.

Greetings from Athens,Greece.
Comment 41 Nikolas Falco CLA 2014-02-03 05:10:55 EST
Hi, i use kepler with org.eclipse.jpt.jpa.eclipselink.feature 3.3.1.v201308261920 and problem still persist. I have a lot of "JPA change event handler" jobs ever time I do somethings, sometimes I wait untill a minute when save a file (automatic build off).
Comment 42 Sascha Vujevic CLA 2014-07-01 07:26:37 EDT
Hi, 
i have also the same problem.

i use kepler with org.eclipse.jpt.jpa.eclipselink.feature 3.3.2.v201401172016.
A lot of "JPA change event handler"-processes are waiting to finish.

Is there a solution for that behaviour ?

Thank you for your help.
Comment 43 Warren Goldman CLA 2014-09-17 16:14:36 EDT
The JPA Project Change Event Handler tasks are firing off for me, consume about 2-3 minutes, every time I do a project build.

Version: 3.6.0.RELEASE
Build Id: 201407101106
Platform: Eclipse Luna (4.4)
Comment 44 Neil Hauge CLA 2014-09-18 10:10:42 EDT
Can you attach a screen shot of your progress window where these JPA Event Handlers are taking time to process.  Also, what is the general size of your Java project that is affected?
Comment 45 Warren Goldman CLA 2014-09-19 14:59:56 EDT
Guess it was during a maven update, the proejct is large.
Comment 46 Warren Goldman CLA 2014-09-19 15:02:20 EDT
Created attachment 247250 [details]
progress with jpa
Comment 47 Neil Hauge CLA 2014-09-19 15:38:19 EDT
So from the screenshot we can see that the Eclipse IDE is not being held up by the JPA Project Change Event Handler.  Our jobs are stacked up waiting to execute at this point, and are not causing any delay or using any CPU cycles.  In this case, you are waiting on the Maven job.  The JPA Handler jobs will likely execute very quickly depending on the root change being processed.
Comment 48 Warren Goldman CLA 2014-09-19 15:47:37 EDT
sometimes it is quickly, other times it is a couple minutes (120 seconds). If I perform one save function it will queue, after that I will need to wait for them to finish.
Comment 49 Ivano Vingiani CLA 2014-09-26 09:15:49 EDT
We have the same problem in Kepler when running the SonarQube plugin.
After the analysis we get stuck with 6-8 Remote System Explorer Operation processes.

The only solution is to restart Eclipse.
Comment 50 Neil Hauge CLA 2014-09-26 10:18:23 EDT
(In reply to Ivano Vingiani from comment #49)

Just to confirm, by "problem", you mean the fact that Remote System Explorer is taking forever to complete?  Or are you suggesting a deadlock has occurred that is related to JPA Change Event Handlers?  If so, a thread dump would be useful.
Comment 51 Warren Goldman CLA 2014-10-13 15:10:10 EDT
Is there some work around for this issue, seems like today these events are running more than previous, it is causing a delay. If I save a file or do more than one action, like save a file and build ( or save a file and then do a second save), the second action is required to wait for these to finish. At present time these tasks started 4 minutes ago and as I am writing this they are still running...

Version: 3.6.0.RELEASE
Build Id: 201407101106
Platform: Eclipse Luna (4.4)
Comment 52 Warren Goldman CLA 2014-10-13 15:14:18 EDT
they just finished now.
Comment 53 Neil Hauge CLA 2014-10-14 12:02:35 EDT
There is no workaround that I am aware of other than creating a new install without the Dali plugins installed.  That said, in many cases, Dali isn't the culprit.  Could you send a screen shot of these Change Event Handler jobs running so I can confirm that this is indeed related to Dali?  If so, then a thread dump would be useful to see what is going on.

-Launch the JDK's jvisualvm tool.
-Connect to Eclipse by double clicking the process.
-Switch to the Threads tab.
-Click the "Thread Dump" button in upper right.
Comment 54 Warren Goldman CLA 2014-10-14 16:26:09 EDT
Sorry did not know this bug was specific to a plugin. I do not even know what a DALI plugin is, so guessing this does not pertain to me.
Comment 55 Ole Jørgen CLA 2014-11-03 09:00:31 EST
I still get the endless JPS Project CHnage Event Handler in Luna. JPA facet is OFF. Noticable slowdown. My feeling is that this has gotten worse in Luna compared to lates SR of Kepler.

We use aspectJ, maybe that has some relevance?
Comment 56 Ian Moore CLA 2014-11-07 10:10:27 EST
You may have a point...
This has started happening to me since I added a project that contained some aspectJ. Was not having the issue within the workspace before. I have been using this workspace with a different development application for three months without this issue, so it is only the inclusion of a existing project that has affected it. 

I am using Version: 4.3.2

After starting up eclipse, seems to be reasonably stable for a while and then (and more likely after any Spring config file has been edited), many "JPA Java Change Event Handler (Waiting)" processes start appearing and seriously affecting performance (high CPU, other tasks such a file save being held up), until it becomes unusable.
Comment 57 Neil Hauge CLA 2014-11-07 10:19:10 EST
It's possible that some actor is causing a lot of resource change events that the JPA listener is responding to.  It would be great to have some screen shots and especially thread dumps of when this is happening (when things seem really bogged down).  

How to easily get a thread dump:
-Launch the JDK's jvisualvm tool.
-Connect to Eclipse by double clicking the process.
-Switch to the Threads tab.
-Click the "Thread Dump" button in upper right.
Comment 58 Vahap Oguz TOKMAK CLA 2015-05-12 11:03:38 EDT
The problem still continues on Spring Tool Suite
Version: 3.6.4.RELEASE
Build Id: 201503100339
Platform: Eclipse Luna SR1 (4.4.2)

Problem arises when Spring Nature (org.springframework.ide.eclipse.core.springnature) is active. Here is a thread dump taken with jvisualvm just after saving applicationContext.xml


2015-05-12 17:51:45
Full thread dump Java HotSpot(TM) 64-Bit Server VM (25.20-b23 mixed mode):

"Background Thread-12 (Spring IDE/3.6.4)" #12070 daemon prio=5 os_prio=0 tid=0x000000003c85a800 nid=0x22d4 waiting on condition [0x000000003fdcf000]
   java.lang.Thread.State: TIMED_WAITING (parking)
	at sun.misc.Unsafe.park(Native Method)
	- parking to wait for  <0x00000000a07ebeb8> (a java.util.concurrent.SynchronousQueue$TransferStack)
	at java.util.concurrent.locks.LockSupport.parkNanos(Unknown Source)
	at java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(Unknown Source)
	at java.util.concurrent.SynchronousQueue$TransferStack.transfer(Unknown Source)
	at java.util.concurrent.SynchronousQueue.poll(Unknown Source)
	at java.util.concurrent.ThreadPoolExecutor.getTask(Unknown Source)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
	at java.lang.Thread.run(Unknown Source)

   Locked ownable synchronizers:
	- None

"Worker-778" #12032 prio=5 os_prio=0 tid=0x000000003c867800 nid=0x2a24 in Object.wait() [0x00000000441df000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	at org.eclipse.core.internal.jobs.WorkerPool.sleep(WorkerPool.java:188)
	- locked <0x000000009e398a60> (a org.eclipse.core.internal.jobs.WorkerPool)
	at org.eclipse.core.internal.jobs.WorkerPool.startJob(WorkerPool.java:220)
	at org.eclipse.core.internal.jobs.Worker.run(Worker.java:51)

   Locked ownable synchronizers:
	- None

"Worker-777" #12031 prio=5 os_prio=0 tid=0x000000003c878800 nid=0x1a24 in Object.wait() [0x00000000440df000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	at org.eclipse.core.internal.jobs.WorkerPool.sleep(WorkerPool.java:188)
	- locked <0x000000009e398a60> (a org.eclipse.core.internal.jobs.WorkerPool)
	at org.eclipse.core.internal.jobs.WorkerPool.startJob(WorkerPool.java:220)
	at org.eclipse.core.internal.jobs.Worker.run(Worker.java:51)

   Locked ownable synchronizers:
	- None

"Worker-776" #12030 prio=5 os_prio=0 tid=0x000000003c869000 nid=0x2794 in Object.wait() [0x0000000043e4f000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	at org.eclipse.core.internal.jobs.WorkerPool.sleep(WorkerPool.java:188)
	- locked <0x000000009e398a60> (a org.eclipse.core.internal.jobs.WorkerPool)
	at org.eclipse.core.internal.jobs.WorkerPool.startJob(WorkerPool.java:220)
	at org.eclipse.core.internal.jobs.Worker.run(Worker.java:51)

   Locked ownable synchronizers:
	- None

"Worker-775" #12029 prio=5 os_prio=0 tid=0x000000003c878000 nid=0x2434 in Object.wait() [0x0000000043d4f000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	at org.eclipse.core.internal.jobs.WorkerPool.sleep(WorkerPool.java:188)
	- locked <0x000000009e398a60> (a org.eclipse.core.internal.jobs.WorkerPool)
	at org.eclipse.core.internal.jobs.WorkerPool.startJob(WorkerPool.java:220)
	at org.eclipse.core.internal.jobs.Worker.run(Worker.java:51)

   Locked ownable synchronizers:
	- None

"Worker-774" #12028 prio=5 os_prio=0 tid=0x000000003c877000 nid=0x750 in Object.wait() [0x0000000043c4f000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	at org.eclipse.core.internal.jobs.WorkerPool.sleep(WorkerPool.java:188)
	- locked <0x000000009e398a60> (a org.eclipse.core.internal.jobs.WorkerPool)
	at org.eclipse.core.internal.jobs.WorkerPool.startJob(WorkerPool.java:220)
	at org.eclipse.core.internal.jobs.Worker.run(Worker.java:51)

   Locked ownable synchronizers:
	- None

"Worker-773" #12025 prio=5 os_prio=0 tid=0x000000003c885800 nid=0x2570 in Object.wait() [0x0000000043b4f000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	at org.eclipse.core.internal.jobs.WorkerPool.sleep(WorkerPool.java:188)
	- locked <0x000000009e398a60> (a org.eclipse.core.internal.jobs.WorkerPool)
	at org.eclipse.core.internal.jobs.WorkerPool.startJob(WorkerPool.java:220)
	at org.eclipse.core.internal.jobs.Worker.run(Worker.java:51)

   Locked ownable synchronizers:
	- None

"Worker-772" #12024 prio=5 os_prio=0 tid=0x000000003c875800 nid=0x2a7c in Object.wait() [0x000000004390f000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	at org.eclipse.core.internal.jobs.WorkerPool.sleep(WorkerPool.java:188)
	- locked <0x000000009e398a60> (a org.eclipse.core.internal.jobs.WorkerPool)
	at org.eclipse.core.internal.jobs.WorkerPool.startJob(WorkerPool.java:220)
	at org.eclipse.core.internal.jobs.Worker.run(Worker.java:51)

   Locked ownable synchronizers:
	- None

"Worker-771" #12023 prio=5 os_prio=0 tid=0x000000003c863800 nid=0x29c0 in Object.wait() [0x0000000043a4f000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	at org.eclipse.core.internal.jobs.WorkerPool.sleep(WorkerPool.java:188)
	- locked <0x000000009e398a60> (a org.eclipse.core.internal.jobs.WorkerPool)
	at org.eclipse.core.internal.jobs.WorkerPool.startJob(WorkerPool.java:220)
	at org.eclipse.core.internal.jobs.Worker.run(Worker.java:51)

   Locked ownable synchronizers:
	- None

"Worker-770" #12022 prio=5 os_prio=0 tid=0x000000003c86e000 nid=0x2b58 in Object.wait() [0x000000004380f000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	at org.eclipse.core.internal.jobs.WorkerPool.sleep(WorkerPool.java:188)
	- locked <0x000000009e398a60> (a org.eclipse.core.internal.jobs.WorkerPool)
	at org.eclipse.core.internal.jobs.WorkerPool.startJob(WorkerPool.java:220)
	at org.eclipse.core.internal.jobs.Worker.run(Worker.java:51)

   Locked ownable synchronizers:
	- None

"Worker-769" #12021 prio=5 os_prio=0 tid=0x000000003c876800 nid=0x5f4 in Object.wait() [0x000000004370f000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	at org.eclipse.core.internal.jobs.WorkerPool.sleep(WorkerPool.java:188)
	- locked <0x000000009e398a60> (a org.eclipse.core.internal.jobs.WorkerPool)
	at org.eclipse.core.internal.jobs.WorkerPool.startJob(WorkerPool.java:220)
	at org.eclipse.core.internal.jobs.Worker.run(Worker.java:51)

   Locked ownable synchronizers:
	- None

"Worker-768" #12020 prio=5 os_prio=0 tid=0x000000003c875000 nid=0x1dd0 in Object.wait() [0x000000004360f000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	at org.eclipse.core.internal.jobs.WorkerPool.sleep(WorkerPool.java:188)
	- locked <0x000000009e398a60> (a org.eclipse.core.internal.jobs.WorkerPool)
	at org.eclipse.core.internal.jobs.WorkerPool.startJob(WorkerPool.java:220)
	at org.eclipse.core.internal.jobs.Worker.run(Worker.java:51)

   Locked ownable synchronizers:
	- None

"Worker-767" #12019 prio=5 os_prio=0 tid=0x000000003c863000 nid=0x504 in Object.wait() [0x000000004350f000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	at org.eclipse.core.internal.jobs.WorkerPool.sleep(WorkerPool.java:188)
	- locked <0x000000009e398a60> (a org.eclipse.core.internal.jobs.WorkerPool)
	at org.eclipse.core.internal.jobs.WorkerPool.startJob(WorkerPool.java:220)
	at org.eclipse.core.internal.jobs.Worker.run(Worker.java:51)

   Locked ownable synchronizers:
	- None

"Worker-766" #12018 prio=5 os_prio=0 tid=0x000000003c872000 nid=0x1b2c in Object.wait() [0x000000004340f000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	at org.eclipse.core.internal.jobs.WorkerPool.sleep(WorkerPool.java:188)
	- locked <0x000000009e398a60> (a org.eclipse.core.internal.jobs.WorkerPool)
	at org.eclipse.core.internal.jobs.WorkerPool.startJob(WorkerPool.java:220)
	at org.eclipse.core.internal.jobs.Worker.run(Worker.java:51)

   Locked ownable synchronizers:
	- None

"Worker-765" #12017 prio=5 os_prio=0 tid=0x000000003c859800 nid=0x2320 in Object.wait() [0x000000004330f000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	at org.eclipse.core.internal.jobs.WorkerPool.sleep(WorkerPool.java:188)
	- locked <0x000000009e398a60> (a org.eclipse.core.internal.jobs.WorkerPool)
	at org.eclipse.core.internal.jobs.WorkerPool.startJob(WorkerPool.java:220)
	at org.eclipse.core.internal.jobs.Worker.run(Worker.java:51)

   Locked ownable synchronizers:
	- None

"Worker-764" #12016 prio=5 os_prio=0 tid=0x000000003c884800 nid=0x2868 in Object.wait() [0x000000004320f000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	at org.eclipse.core.internal.jobs.WorkerPool.sleep(WorkerPool.java:188)
	- locked <0x000000009e398a60> (a org.eclipse.core.internal.jobs.WorkerPool)
	at org.eclipse.core.internal.jobs.WorkerPool.startJob(WorkerPool.java:220)
	at org.eclipse.core.internal.jobs.Worker.run(Worker.java:51)

   Locked ownable synchronizers:
	- None

"Worker-763" #12015 prio=5 os_prio=0 tid=0x000000003c85b800 nid=0x2290 in Object.wait() [0x000000004310f000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	at org.eclipse.core.internal.jobs.WorkerPool.sleep(WorkerPool.java:188)
	- locked <0x000000009e398a60> (a org.eclipse.core.internal.jobs.WorkerPool)
	at org.eclipse.core.internal.jobs.WorkerPool.startJob(WorkerPool.java:220)
	at org.eclipse.core.internal.jobs.Worker.run(Worker.java:51)

   Locked ownable synchronizers:
	- None

"Worker-762" #12014 prio=5 os_prio=0 tid=0x000000003c893000 nid=0x2648 in Object.wait() [0x000000004300f000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	at org.eclipse.core.internal.jobs.WorkerPool.sleep(WorkerPool.java:188)
	- locked <0x000000009e398a60> (a org.eclipse.core.internal.jobs.WorkerPool)
	at org.eclipse.core.internal.jobs.WorkerPool.startJob(WorkerPool.java:220)
	at org.eclipse.core.internal.jobs.Worker.run(Worker.java:51)

   Locked ownable synchronizers:
	- None

"Worker-761" #12013 prio=5 os_prio=0 tid=0x000000003c889000 nid=0x26e0 in Object.wait() [0x0000000042f0f000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	at org.eclipse.core.internal.jobs.WorkerPool.sleep(WorkerPool.java:188)
	- locked <0x000000009e398a60> (a org.eclipse.core.internal.jobs.WorkerPool)
	at org.eclipse.core.internal.jobs.WorkerPool.startJob(WorkerPool.java:220)
	at org.eclipse.core.internal.jobs.Worker.run(Worker.java:51)

   Locked ownable synchronizers:
	- None

"Worker-760" #12012 prio=5 os_prio=0 tid=0x000000003c88d000 nid=0x20 in Object.wait() [0x0000000042e0f000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	at org.eclipse.core.internal.jobs.WorkerPool.sleep(WorkerPool.java:188)
	- locked <0x000000009e398a60> (a org.eclipse.core.internal.jobs.WorkerPool)
	at org.eclipse.core.internal.jobs.WorkerPool.startJob(WorkerPool.java:220)
	at org.eclipse.core.internal.jobs.Worker.run(Worker.java:51)

   Locked ownable synchronizers:
	- None

"Worker-759" #12011 prio=5 os_prio=0 tid=0x000000003c888800 nid=0x28a8 in Object.wait() [0x0000000042d0f000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	at org.eclipse.core.internal.jobs.WorkerPool.sleep(WorkerPool.java:188)
	- locked <0x000000009e398a60> (a org.eclipse.core.internal.jobs.WorkerPool)
	at org.eclipse.core.internal.jobs.WorkerPool.startJob(WorkerPool.java:220)
	at org.eclipse.core.internal.jobs.Worker.run(Worker.java:51)

   Locked ownable synchronizers:
	- None

"Worker-758" #12010 prio=5 os_prio=0 tid=0x000000003c88a000 nid=0x2244 in Object.wait() [0x0000000042c0f000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	at org.eclipse.core.internal.jobs.WorkerPool.sleep(WorkerPool.java:188)
	- locked <0x000000009e398a60> (a org.eclipse.core.internal.jobs.WorkerPool)
	at org.eclipse.core.internal.jobs.WorkerPool.startJob(WorkerPool.java:220)
	at org.eclipse.core.internal.jobs.Worker.run(Worker.java:51)

   Locked ownable synchronizers:
	- None

"Worker-757" #12009 prio=5 os_prio=0 tid=0x000000003c892800 nid=0x29fc runnable [0x0000000042b0e000]
   java.lang.Thread.State: RUNNABLE
	at java.io.WinNTFileSystem.getBooleanAttributes(Native Method)
	at java.io.File.isDirectory(Unknown Source)
	at org.eclipse.jst.j2ee.classpathdep.ClasspathDependencyUtil.isClassFolderEntry(ClasspathDependencyUtil.java:490)
	at org.eclipse.jst.j2ee.classpathdep.ClasspathDependencyUtil.getArchiveName(ClasspathDependencyUtil.java:647)
	at org.eclipse.jst.j2ee.componentcore.J2EEModuleVirtualComponent.getJavaClasspathReferences(J2EEModuleVirtualComponent.java:344)
	at org.eclipse.jst.j2ee.componentcore.J2EEModuleVirtualComponent.getNonManifestRefs(J2EEModuleVirtualComponent.java:242)
	at org.eclipse.jst.j2ee.componentcore.J2EEModuleVirtualComponent.getReferences(J2EEModuleVirtualComponent.java:166)
	at org.eclipse.jst.j2ee.componentcore.J2EEModuleVirtualComponent.getReferences(J2EEModuleVirtualComponent.java:214)
	at org.eclipse.jst.j2ee.componentcore.J2EEModuleVirtualComponent.getReferences(J2EEModuleVirtualComponent.java:207)
	at org.eclipse.m2e.wtp.overlay.internal.servers.OverlayResourceChangeListener.hasOverlayChanged(OverlayResourceChangeListener.java:149)
	at org.eclipse.m2e.wtp.overlay.internal.servers.OverlayResourceChangeListener.resourceChanged(OverlayResourceChangeListener.java:78)
	at org.eclipse.core.internal.events.NotificationManager$1.run(NotificationManager.java:291)
	at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
	at org.eclipse.core.internal.events.NotificationManager.notify(NotificationManager.java:285)
	at org.eclipse.core.internal.events.NotificationManager.broadcastChanges(NotificationManager.java:149)
	at org.eclipse.core.internal.resources.Workspace.broadcastPostChange(Workspace.java:378)
	at org.eclipse.core.internal.resources.Workspace.endOperation(Workspace.java:1498)
	at org.eclipse.core.internal.resources.Marker.delete(Marker.java:71)
	at org.springframework.ide.eclipse.aop.core.util.AopReferenceModelMarkerUtils.deleteProblemMarkers(AopReferenceModelMarkerUtils.java:150)
	at org.springframework.ide.eclipse.aop.core.internal.model.builder.AopReferenceModelBuilderJob$MarkerModifyingJob.run(AopReferenceModelBuilderJob.java:617)
	at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54)

   Locked ownable synchronizers:
	- None

"Worker-756" #12008 prio=5 os_prio=0 tid=0x000000003c897000 nid=0x17cc in Object.wait() [0x0000000042a0f000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	at org.eclipse.core.internal.jobs.WorkerPool.sleep(WorkerPool.java:188)
	- locked <0x000000009e398a60> (a org.eclipse.core.internal.jobs.WorkerPool)
	at org.eclipse.core.internal.jobs.WorkerPool.startJob(WorkerPool.java:220)
	at org.eclipse.core.internal.jobs.Worker.run(Worker.java:51)

   Locked ownable synchronizers:
	- None

"Worker-755" #12007 prio=5 os_prio=0 tid=0x000000003c896000 nid=0x286c in Object.wait() [0x000000004290f000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	at org.eclipse.core.internal.jobs.WorkerPool.sleep(WorkerPool.java:188)
	- locked <0x000000009e398a60> (a org.eclipse.core.internal.jobs.WorkerPool)
	at org.eclipse.core.internal.jobs.WorkerPool.startJob(WorkerPool.java:220)
	at org.eclipse.core.internal.jobs.Worker.run(Worker.java:51)

   Locked ownable synchronizers:
	- None

"Worker-754" #12006 prio=5 os_prio=0 tid=0x000000003c891800 nid=0x22f4 in Object.wait() [0x000000004270f000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	at org.eclipse.core.internal.jobs.WorkerPool.sleep(WorkerPool.java:188)
	- locked <0x000000009e398a60> (a org.eclipse.core.internal.jobs.WorkerPool)
	at org.eclipse.core.internal.jobs.WorkerPool.startJob(WorkerPool.java:220)
	at org.eclipse.core.internal.jobs.Worker.run(Worker.java:51)

   Locked ownable synchronizers:
	- None

"Worker-753" #12005 prio=5 os_prio=0 tid=0x000000003c894800 nid=0x2338 in Object.wait() [0x000000004260f000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	at org.eclipse.core.internal.jobs.WorkerPool.sleep(WorkerPool.java:188)
	- locked <0x000000009e398a60> (a org.eclipse.core.internal.jobs.WorkerPool)
	at org.eclipse.core.internal.jobs.WorkerPool.startJob(WorkerPool.java:220)
	at org.eclipse.core.internal.jobs.Worker.run(Worker.java:51)

   Locked ownable synchronizers:
	- None

"Worker-752" #12004 prio=5 os_prio=0 tid=0x000000003c88b800 nid=0x998 in Object.wait() [0x00000000422ef000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	at org.eclipse.core.internal.jobs.WorkerPool.sleep(WorkerPool.java:188)
	- locked <0x000000009e398a60> (a org.eclipse.core.internal.jobs.WorkerPool)
	at org.eclipse.core.internal.jobs.WorkerPool.startJob(WorkerPool.java:220)
	at org.eclipse.core.internal.jobs.Worker.run(Worker.java:51)

   Locked ownable synchronizers:
	- None

"Worker-751" #12003 prio=5 os_prio=0 tid=0x000000003c88e000 nid=0x6ec in Object.wait() [0x00000000421ef000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	at org.eclipse.core.internal.jobs.WorkerPool.sleep(WorkerPool.java:188)
	- locked <0x000000009e398a60> (a org.eclipse.core.internal.jobs.WorkerPool)
	at org.eclipse.core.internal.jobs.WorkerPool.startJob(WorkerPool.java:220)
	at org.eclipse.core.internal.jobs.Worker.run(Worker.java:51)

   Locked ownable synchronizers:
	- None

"Worker-750" #12002 prio=5 os_prio=0 tid=0x000000003c894000 nid=0x2830 in Object.wait() [0x00000000420ef000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	at org.eclipse.core.internal.jobs.WorkerPool.sleep(WorkerPool.java:188)
	- locked <0x000000009e398a60> (a org.eclipse.core.internal.jobs.WorkerPool)
	at org.eclipse.core.internal.jobs.WorkerPool.startJob(WorkerPool.java:220)
	at org.eclipse.core.internal.jobs.Worker.run(Worker.java:51)

   Locked ownable synchronizers:
	- None

"Worker-749" #12001 prio=5 os_prio=0 tid=0x000000003c891000 nid=0x22f0 in Object.wait() [0x0000000041fef000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	at org.eclipse.core.internal.jobs.WorkerPool.sleep(WorkerPool.java:188)
	- locked <0x000000009e398a60> (a org.eclipse.core.internal.jobs.WorkerPool)
	at org.eclipse.core.internal.jobs.WorkerPool.startJob(WorkerPool.java:220)
	at org.eclipse.core.internal.jobs.Worker.run(Worker.java:51)

   Locked ownable synchronizers:
	- None

"Worker-748" #12000 prio=5 os_prio=0 tid=0x000000003c890000 nid=0xc0 in Object.wait() [0x0000000041eef000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	at org.eclipse.core.internal.jobs.WorkerPool.sleep(WorkerPool.java:188)
	- locked <0x000000009e398a60> (a org.eclipse.core.internal.jobs.WorkerPool)
	at org.eclipse.core.internal.jobs.WorkerPool.startJob(WorkerPool.java:220)
	at org.eclipse.core.internal.jobs.Worker.run(Worker.java:51)

   Locked ownable synchronizers:
	- None

"Worker-747" #11999 prio=5 os_prio=0 tid=0x000000003c895800 nid=0x2ae4 in Object.wait() [0x0000000041def000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	at org.eclipse.core.internal.jobs.WorkerPool.sleep(WorkerPool.java:188)
	- locked <0x000000009e398a60> (a org.eclipse.core.internal.jobs.WorkerPool)
	at org.eclipse.core.internal.jobs.WorkerPool.startJob(WorkerPool.java:220)
	at org.eclipse.core.internal.jobs.Worker.run(Worker.java:51)

   Locked ownable synchronizers:
	- None

"Worker-746" #11998 prio=5 os_prio=0 tid=0x000000003c88a800 nid=0x198c in Object.wait() [0x0000000041cef000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	at org.eclipse.core.internal.jobs.WorkerPool.sleep(WorkerPool.java:188)
	- locked <0x000000009e398a60> (a org.eclipse.core.internal.jobs.WorkerPool)
	at org.eclipse.core.internal.jobs.WorkerPool.startJob(WorkerPool.java:220)
	at org.eclipse.core.internal.jobs.Worker.run(Worker.java:51)

   Locked ownable synchronizers:
	- None

"Worker-745" #11997 prio=5 os_prio=0 tid=0x000000003c88f800 nid=0x2668 in Object.wait() [0x000000004121f000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	at org.eclipse.core.internal.jobs.WorkerPool.sleep(WorkerPool.java:188)
	- locked <0x000000009e398a60> (a org.eclipse.core.internal.jobs.WorkerPool)
	at org.eclipse.core.internal.jobs.WorkerPool.startJob(WorkerPool.java:220)
	at org.eclipse.core.internal.jobs.Worker.run(Worker.java:51)

   Locked ownable synchronizers:
	- None

"Worker-744" #11996 prio=5 os_prio=0 tid=0x000000003c88c800 nid=0x2740 in Object.wait() [0x000000004101f000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	at org.eclipse.core.internal.jobs.WorkerPool.sleep(WorkerPool.java:188)
	- locked <0x000000009e398a60> (a org.eclipse.core.internal.jobs.WorkerPool)
	at org.eclipse.core.internal.jobs.WorkerPool.startJob(WorkerPool.java:220)
	at org.eclipse.core.internal.jobs.Worker.run(Worker.java:51)

   Locked ownable synchronizers:
	- None

"Worker-743" #11995 prio=5 os_prio=0 tid=0x000000003c88e800 nid=0x20e4 in Object.wait() [0x0000000040f1f000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	at org.eclipse.core.internal.jobs.WorkerPool.sleep(WorkerPool.java:188)
	- locked <0x000000009e398a60> (a org.eclipse.core.internal.jobs.WorkerPool)
	at org.eclipse.core.internal.jobs.WorkerPool.startJob(WorkerPool.java:220)
	at org.eclipse.core.internal.jobs.Worker.run(Worker.java:51)

   Locked ownable synchronizers:
	- None

"Worker-742" #11994 prio=5 os_prio=0 tid=0x000000003034e000 nid=0x26dc in Object.wait() [0x000000004091f000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	at org.eclipse.core.internal.jobs.WorkerPool.sleep(WorkerPool.java:188)
	- locked <0x000000009e398a60> (a org.eclipse.core.internal.jobs.WorkerPool)
	at org.eclipse.core.internal.jobs.WorkerPool.startJob(WorkerPool.java:220)
	at org.eclipse.core.internal.jobs.Worker.run(Worker.java:51)

   Locked ownable synchronizers:
	- None

"Worker-741" #11993 prio=5 os_prio=0 tid=0x000000003034c000 nid=0xc84 in Object.wait() [0x000000004081f000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	at org.eclipse.core.internal.jobs.WorkerPool.sleep(WorkerPool.java:188)
	- locked <0x000000009e398a60> (a org.eclipse.core.internal.jobs.WorkerPool)
	at org.eclipse.core.internal.jobs.WorkerPool.startJob(WorkerPool.java:220)
	at org.eclipse.core.internal.jobs.Worker.run(Worker.java:51)

   Locked ownable synchronizers:
	- None

"Worker-740" #11992 prio=5 os_prio=0 tid=0x000000003034b000 nid=0x215c in Object.wait() [0x000000004071f000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	at org.eclipse.core.internal.jobs.WorkerPool.sleep(WorkerPool.java:188)
	- locked <0x000000009e398a60> (a org.eclipse.core.internal.jobs.WorkerPool)
	at org.eclipse.core.internal.jobs.WorkerPool.startJob(WorkerPool.java:220)
	at org.eclipse.core.internal.jobs.Worker.run(Worker.java:51)

   Locked ownable synchronizers:
	- None

"Worker-739" #11991 prio=5 os_prio=0 tid=0x0000000030349800 nid=0x2514 in Object.wait() [0x000000004061f000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	at org.eclipse.core.internal.jobs.WorkerPool.sleep(WorkerPool.java:188)
	- locked <0x000000009e398a60> (a org.eclipse.core.internal.jobs.WorkerPool)
	at org.eclipse.core.internal.jobs.WorkerPool.startJob(WorkerPool.java:220)
	at org.eclipse.core.internal.jobs.Worker.run(Worker.java:51)

   Locked ownable synchronizers:
	- None

"Worker-738" #11990 prio=5 os_prio=0 tid=0x0000000030352800 nid=0x296c in Object.wait() [0x000000004051f000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	at org.eclipse.core.internal.jobs.WorkerPool.sleep(WorkerPool.java:188)
	- locked <0x000000009e398a60> (a org.eclipse.core.internal.jobs.WorkerPool)
	at org.eclipse.core.internal.jobs.WorkerPool.startJob(WorkerPool.java:220)
	at org.eclipse.core.internal.jobs.Worker.run(Worker.java:51)

   Locked ownable synchronizers:
	- None

"Worker-737" #11989 prio=5 os_prio=0 tid=0x0000000030355800 nid=0x1de4 in Object.wait() [0x000000004041f000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	at org.eclipse.core.internal.jobs.WorkerPool.sleep(WorkerPool.java:188)
	- locked <0x000000009e398a60> (a org.eclipse.core.internal.jobs.WorkerPool)
	at org.eclipse.core.internal.jobs.WorkerPool.startJob(WorkerPool.java:220)
	at org.eclipse.core.internal.jobs.Worker.run(Worker.java:51)

   Locked ownable synchronizers:
	- None

"Worker-736" #11988 prio=5 os_prio=0 tid=0x0000000030352000 nid=0x2afc in Object.wait() [0x00000000401cf000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	at org.eclipse.core.internal.jobs.WorkerPool.sleep(WorkerPool.java:188)
	- locked <0x000000009e398a60> (a org.eclipse.core.internal.jobs.WorkerPool)
	at org.eclipse.core.internal.jobs.WorkerPool.startJob(WorkerPool.java:220)
	at org.eclipse.core.internal.jobs.Worker.run(Worker.java:51)

   Locked ownable synchronizers:
	- None

"Worker-735" #11987 prio=5 os_prio=0 tid=0x000000003034d800 nid=0x2250 in Object.wait() [0x00000000400cf000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	at org.eclipse.core.internal.jobs.WorkerPool.sleep(WorkerPool.java:188)
	- locked <0x000000009e398a60> (a org.eclipse.core.internal.jobs.WorkerPool)
	at org.eclipse.core.internal.jobs.WorkerPool.startJob(WorkerPool.java:220)
	at org.eclipse.core.internal.jobs.Worker.run(Worker.java:51)

   Locked ownable synchronizers:
	- None

"Worker-734" #11986 prio=5 os_prio=0 tid=0x0000000030353800 nid=0x550 in Object.wait() [0x000000003ffcf000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	at org.eclipse.core.internal.jobs.WorkerPool.sleep(WorkerPool.java:188)
	- locked <0x000000009e398a60> (a org.eclipse.core.internal.jobs.WorkerPool)
	at org.eclipse.core.internal.jobs.WorkerPool.startJob(WorkerPool.java:220)
	at org.eclipse.core.internal.jobs.Worker.run(Worker.java:51)

   Locked ownable synchronizers:
	- None

"Worker-733" #11483 prio=5 os_prio=0 tid=0x0000000030351000 nid=0x1dfc in Object.wait() [0x000000003ecef000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	at org.eclipse.core.internal.jobs.WorkerPool.sleep(WorkerPool.java:188)
	- locked <0x000000009e398a60> (a org.eclipse.core.internal.jobs.WorkerPool)
	at org.eclipse.core.internal.jobs.WorkerPool.startJob(WorkerPool.java:220)
	at org.eclipse.core.internal.jobs.Worker.run(Worker.java:51)

   Locked ownable synchronizers:
	- None

"Worker-732" #11482 prio=5 os_prio=0 tid=0x0000000030348000 nid=0x2768 in Object.wait() [0x000000003fccf000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	at org.eclipse.core.internal.jobs.WorkerPool.sleep(WorkerPool.java:188)
	- locked <0x000000009e398a60> (a org.eclipse.core.internal.jobs.WorkerPool)
	at org.eclipse.core.internal.jobs.WorkerPool.startJob(WorkerPool.java:220)
	at org.eclipse.core.internal.jobs.Worker.run(Worker.java:51)

   Locked ownable synchronizers:
	- None

"Worker-731" #11476 prio=5 os_prio=0 tid=0x0000000030356800 nid=0x2714 in Object.wait() [0x0000000039a4f000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	at org.eclipse.core.internal.jobs.WorkerPool.sleep(WorkerPool.java:188)
	- locked <0x000000009e398a60> (a org.eclipse.core.internal.jobs.WorkerPool)
	at org.eclipse.core.internal.jobs.WorkerPool.startJob(WorkerPool.java:220)
	at org.eclipse.core.internal.jobs.Worker.run(Worker.java:51)

   Locked ownable synchronizers:
	- None

"Worker-730" #11475 prio=5 os_prio=0 tid=0x000000003034c800 nid=0x267c in Object.wait() [0x00000000398af000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	at org.eclipse.core.internal.jobs.WorkerPool.sleep(WorkerPool.java:188)
	- locked <0x000000009e398a60> (a org.eclipse.core.internal.jobs.WorkerPool)
	at org.eclipse.core.internal.jobs.WorkerPool.startJob(WorkerPool.java:220)
	at org.eclipse.core.internal.jobs.Worker.run(Worker.java:51)

   Locked ownable synchronizers:
	- None

"JMX server connection timeout 11473" #11473 daemon prio=5 os_prio=0 tid=0x0000000030350800 nid=0x14a4 in Object.wait() [0x000000004a5ff000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	at com.sun.jmx.remote.internal.ServerCommunicatorAdmin$Timeout.run(Unknown Source)
	- locked <0x00000000fcdadaa0> (a [I)
	at java.lang.Thread.run(Unknown Source)

   Locked ownable synchronizers:
	- None

"RMI Scheduler(0)" #11472 daemon prio=5 os_prio=0 tid=0x0000000031f2f800 nid=0x2424 waiting on condition [0x000000004a46f000]
   java.lang.Thread.State: TIMED_WAITING (parking)
	at sun.misc.Unsafe.park(Native Method)
	- parking to wait for  <0x00000000fcdaef08> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
	at java.util.concurrent.locks.LockSupport.parkNanos(Unknown Source)
	at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(Unknown Source)
	at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(Unknown Source)
	at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(Unknown Source)
	at java.util.concurrent.ThreadPoolExecutor.getTask(Unknown Source)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
	at java.lang.Thread.run(Unknown Source)

   Locked ownable synchronizers:
	- None

"RMI TCP Connection(3)-192.168.56.1" #11471 daemon prio=5 os_prio=0 tid=0x0000000031f2f000 nid=0x1b88 runnable [0x0000000049b6f000]
   java.lang.Thread.State: RUNNABLE
	at java.net.SocketInputStream.socketRead0(Native Method)
	at java.net.SocketInputStream.read(Unknown Source)
	at java.net.SocketInputStream.read(Unknown Source)
	at java.io.BufferedInputStream.fill(Unknown Source)
	at java.io.BufferedInputStream.read(Unknown Source)
	- locked <0x00000000fdd10c10> (a java.io.BufferedInputStream)
	at java.io.FilterInputStream.read(Unknown Source)
	at sun.rmi.transport.tcp.TCPTransport.handleMessages(Unknown Source)
	at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(Unknown Source)
	at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(Unknown Source)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
	at java.lang.Thread.run(Unknown Source)

   Locked ownable synchronizers:
	- <0x00000000fdd61a10> (a java.util.concurrent.ThreadPoolExecutor$Worker)

"RMI TCP Accept-0" #11470 daemon prio=5 os_prio=0 tid=0x0000000031f29000 nid=0x2ad4 runnable [0x0000000045adf000]
   java.lang.Thread.State: RUNNABLE
	at java.net.DualStackPlainSocketImpl.accept0(Native Method)
	at java.net.DualStackPlainSocketImpl.socketAccept(Unknown Source)
	at java.net.AbstractPlainSocketImpl.accept(Unknown Source)
	at java.net.PlainSocketImpl.accept(Unknown Source)
	- locked <0x00000000fcdadbe0> (a java.net.SocksSocketImpl)
	at java.net.ServerSocket.implAccept(Unknown Source)
	at java.net.ServerSocket.accept(Unknown Source)
	at sun.management.jmxremote.LocalRMIServerSocketFactory$1.accept(Unknown Source)
	at sun.rmi.transport.tcp.TCPTransport$AcceptLoop.executeAcceptLoop(Unknown Source)
	at sun.rmi.transport.tcp.TCPTransport$AcceptLoop.run(Unknown Source)
	at java.lang.Thread.run(Unknown Source)

   Locked ownable synchronizers:
	- None

"Worker-673" #11413 prio=5 os_prio=0 tid=0x000000003c884000 nid=0x280c in Object.wait() [0x00000000445df000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	at org.eclipse.core.internal.jobs.WorkerPool.sleep(WorkerPool.java:188)
	- locked <0x000000009e398a60> (a org.eclipse.core.internal.jobs.WorkerPool)
	at org.eclipse.core.internal.jobs.WorkerPool.startJob(WorkerPool.java:220)
	at org.eclipse.core.internal.jobs.Worker.run(Worker.java:51)

   Locked ownable synchronizers:
	- None

"Worker-651" #11376 prio=5 os_prio=0 tid=0x000000003c869800 nid=0x2388 in Object.wait() [0x000000004280f000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	at org.eclipse.core.internal.jobs.WorkerPool.sleep(WorkerPool.java:188)
	- locked <0x000000009e398a60> (a org.eclipse.core.internal.jobs.WorkerPool)
	at org.eclipse.core.internal.jobs.WorkerPool.startJob(WorkerPool.java:220)
	at org.eclipse.core.internal.jobs.Worker.run(Worker.java:51)

   Locked ownable synchronizers:
	- None

"Worker-635" #10847 prio=5 os_prio=0 tid=0x000000003c85f000 nid=0x21a4 in Object.wait() [0x000000003fecf000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	at org.eclipse.core.internal.jobs.WorkerPool.sleep(WorkerPool.java:188)
	- locked <0x000000009e398a60> (a org.eclipse.core.internal.jobs.WorkerPool)
	at org.eclipse.core.internal.jobs.WorkerPool.startJob(WorkerPool.java:220)
	at org.eclipse.core.internal.jobs.Worker.run(Worker.java:51)

   Locked ownable synchronizers:
	- None

"org.eclipse.wst.sse.ui.internal.reconcile.StructuredRegionProcessor" #4375 daemon prio=1 os_prio=-2 tid=0x000000002b1a6800 nid=0x281c in Object.wait() [0x00000000387df000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	at org.eclipse.wst.sse.ui.internal.reconcile.DirtyRegionProcessor$BackgroundThread.run(DirtyRegionProcessor.java:667)
	- locked <0x00000000afd60d80> (a java.util.Collections$SynchronizedRandomAccessList)

   Locked ownable synchronizers:
	- None

"org.eclipse.jdt.internal.ui.text.JavaReconciler" #4026 daemon prio=1 os_prio=-2 tid=0x000000001d5ad800 nid=0x2440 in Object.wait() [0x0000000046a6f000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	at org.eclipse.jface.text.reconciler.AbstractReconciler$BackgroundThread.run(AbstractReconciler.java:179)
	- locked <0x00000000afa6f380> (a org.eclipse.jface.text.reconciler.DirtyRegionQueue)

   Locked ownable synchronizers:
	- None

"org.eclipse.jdt.internal.ui.text.JavaReconciler" #2760 daemon prio=1 os_prio=-2 tid=0x000000002fb4a800 nid=0x21f4 in Object.wait() [0x000000003418f000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	at org.eclipse.jface.text.reconciler.AbstractReconciler$BackgroundThread.run(AbstractReconciler.java:179)
	- locked <0x00000000af541a08> (a org.eclipse.jface.text.reconciler.DirtyRegionQueue)

   Locked ownable synchronizers:
	- None

"Worker-100" #1493 prio=5 os_prio=0 tid=0x0000000032345800 nid=0x16d0 waiting on condition [0x000000004140f000]
   java.lang.Thread.State: TIMED_WAITING (sleeping)
	at java.lang.Thread.sleep(Native Method)
	at org.eclipse.equinox.internal.p2.transport.ecf.FileReader$CancelHandler.run(FileReader.java:113)
	at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54)

   Locked ownable synchronizers:
	- None

"Worker-90" #1482 prio=5 os_prio=0 tid=0x0000000032350800 nid=0x324 waiting on condition [0x0000000040a1f000]
   java.lang.Thread.State: TIMED_WAITING (sleeping)
	at java.lang.Thread.sleep(Native Method)
	at org.eclipse.equinox.internal.p2.transport.ecf.FileReader$CancelHandler.run(FileReader.java:113)
	at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54)

   Locked ownable synchronizers:
	- None

"Worker-84" #1473 prio=5 os_prio=0 tid=0x000000003234e800 nid=0x14f0 waiting on condition [0x000000004031f000]
   java.lang.Thread.State: TIMED_WAITING (sleeping)
	at java.lang.Thread.sleep(Native Method)
	at org.eclipse.equinox.internal.p2.transport.ecf.FileReader$CancelHandler.run(FileReader.java:113)
	at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54)

   Locked ownable synchronizers:
	- None

"Worker-78" #1465 prio=5 os_prio=0 tid=0x000000002fb4b800 nid=0x16b0 waiting on condition [0x000000003fbcf000]
   java.lang.Thread.State: TIMED_WAITING (sleeping)
	at java.lang.Thread.sleep(Native Method)
	at org.eclipse.equinox.internal.p2.transport.ecf.FileReader$CancelHandler.run(FileReader.java:113)
	at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54)

   Locked ownable synchronizers:
	- None

"org.eclipse.jdt.internal.ui.text.JavaReconciler" #872 daemon prio=1 os_prio=-2 tid=0x000000001851a000 nid=0x128 in Object.wait() [0x000000002efcf000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	at org.eclipse.jface.text.reconciler.AbstractReconciler$BackgroundThread.run(AbstractReconciler.java:179)
	- locked <0x00000000acb47db0> (a org.eclipse.jface.text.reconciler.DirtyRegionQueue)

   Locked ownable synchronizers:
	- None

"org.eclipse.wst.sse.ui.internal.reconcile.StructuredRegionProcessor" #262 daemon prio=1 os_prio=-2 tid=0x0000000018524800 nid=0x970 in Object.wait() [0x000000002cd2f000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	at org.eclipse.wst.sse.ui.internal.reconcile.DirtyRegionProcessor$BackgroundThread.run(DirtyRegionProcessor.java:667)
	- locked <0x00000000ac0780b8> (a java.util.Collections$SynchronizedRandomAccessList)

   Locked ownable synchronizers:
	- None

"Worker-35" #255 prio=5 os_prio=0 tid=0x0000000028956000 nid=0x1db0 waiting on condition [0x000000002f0cf000]
   java.lang.Thread.State: TIMED_WAITING (sleeping)
	at java.lang.Thread.sleep(Native Method)
	at org.eclipse.equinox.internal.p2.transport.ecf.FileReader$CancelHandler.run(FileReader.java:113)
	at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54)

   Locked ownable synchronizers:
	- None

"Worker-34" #251 prio=5 os_prio=0 tid=0x0000000028954800 nid=0x27a4 waiting on condition [0x0000000030c5f000]
   java.lang.Thread.State: TIMED_WAITING (sleeping)
	at java.lang.Thread.sleep(Native Method)
	at org.eclipse.equinox.internal.p2.transport.ecf.FileReader$CancelHandler.run(FileReader.java:113)
	at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54)

   Locked ownable synchronizers:
	- None

"Worker-31" #218 prio=5 os_prio=0 tid=0x0000000028959800 nid=0x8fc waiting on condition [0x0000000025d3f000]
   java.lang.Thread.State: TIMED_WAITING (sleeping)
	at java.lang.Thread.sleep(Native Method)
	at org.eclipse.equinox.internal.p2.transport.ecf.FileReader$CancelHandler.run(FileReader.java:113)
	at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54)

   Locked ownable synchronizers:
	- None

"Worker-23" #155 prio=5 os_prio=0 tid=0x000000001fc56800 nid=0x568 waiting on condition [0x000000002d6ff000]
   java.lang.Thread.State: TIMED_WAITING (sleeping)
	at java.lang.Thread.sleep(Native Method)
	at org.eclipse.equinox.internal.p2.transport.ecf.FileReader$CancelHandler.run(FileReader.java:113)
	at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54)

   Locked ownable synchronizers:
	- None

"Reporting Thread-1 (Spring UAA/1.0.3)" #54 daemon prio=5 os_prio=0 tid=0x0000000018526000 nid=0x2354 waiting on condition [0x000000002aa6f000]
   java.lang.Thread.State: WAITING (parking)
	at sun.misc.Unsafe.park(Native Method)
	- parking to wait for  <0x00000000a25c04f8> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
	at java.util.concurrent.locks.LockSupport.park(Unknown Source)
	at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(Unknown Source)
	at java.util.concurrent.LinkedBlockingQueue.take(Unknown Source)
	at java.util.concurrent.ThreadPoolExecutor.getTask(Unknown Source)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
	at java.lang.Thread.run(Unknown Source)

   Locked ownable synchronizers:
	- None

"Event Batch Processing (Spring UAA/1.0.3)" #52 daemon prio=5 os_prio=0 tid=0x000000001d1f5800 nid=0x2174 waiting on condition [0x000000002acbf000]
   java.lang.Thread.State: TIMED_WAITING (sleeping)
	at java.lang.Thread.sleep(Native Method)
	at org.springframework.ide.eclipse.internal.uaa.client.QueueingUaaServiceExtension$QueueFlushingRunnable.run(QueueingUaaServiceExtension.java:307)
	at java.lang.Thread.run(Unknown Source)

   Locked ownable synchronizers:
	- None

"Synchronizer (Spring UAA/1.0.3)" #50 daemon prio=5 os_prio=0 tid=0x000000001d1f8000 nid=0x1c9c waiting on condition [0x000000002abbf000]
   java.lang.Thread.State: TIMED_WAITING (sleeping)
	at java.lang.Thread.sleep(Native Method)
	at org.springframework.uaa.client.internal.TransmissionAwareUaaServiceImpl$UaaTransmissionRunnable.run(TransmissionAwareUaaServiceImpl.java:397)
	at java.lang.Thread.run(Unknown Source)

   Locked ownable synchronizers:
	- None

"org.eclipse.wst.sse.ui.internal.reconcile.StructuredRegionProcessor" #43 daemon prio=1 os_prio=-2 tid=0x000000001a229000 nid=0x2348 in Object.wait() [0x000000002789f000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	at org.eclipse.wst.sse.ui.internal.reconcile.DirtyRegionProcessor$BackgroundThread.run(DirtyRegionProcessor.java:667)
	- locked <0x00000000a08fcf08> (a java.util.Collections$SynchronizedRandomAccessList)

   Locked ownable synchronizers:
	- None

"Provisioning Event Dispatcher" #42 daemon prio=5 os_prio=0 tid=0x0000000018521000 nid=0x2140 in Object.wait() [0x0000000025fcf000]
   java.lang.Thread.State: WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	at java.lang.Object.wait(Unknown Source)
	at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.getNextEvent(EventManager.java:400)
	- locked <0x00000000a1524520> (a org.eclipse.osgi.framework.eventmgr.EventManager$EventThread)
	at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:336)

   Locked ownable synchronizers:
	- None

"EventAdmin Async Event Dispatcher Thread" #38 daemon prio=6 os_prio=0 tid=0x0000000018529000 nid=0x217c in Object.wait() [0x000000002589f000]
   java.lang.Thread.State: WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	at java.lang.Object.wait(Unknown Source)
	at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.getNextEvent(EventManager.java:400)
	- locked <0x00000000a1066828> (a org.eclipse.osgi.framework.eventmgr.EventManager$EventThread)
	at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:336)

   Locked ownable synchronizers:
	- None

"JavaScript indexing" #34 daemon prio=4 os_prio=-1 tid=0x000000001851e000 nid=0x17d0 in Object.wait() [0x0000000023dff000]
   java.lang.Thread.State: WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	at java.lang.Object.wait(Unknown Source)
	at org.eclipse.wst.jsdt.internal.core.search.processing.JobManager.run(JobManager.java:370)
	- locked <0x000000009fae4830> (a org.eclipse.wst.jsdt.internal.core.search.indexing.IndexManager)
	at java.lang.Thread.run(Unknown Source)

   Locked ownable synchronizers:
	- None

"Java indexing" #30 daemon prio=4 os_prio=-1 tid=0x0000000018524000 nid=0x2578 in Object.wait() [0x00000000223af000]
   java.lang.Thread.State: WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	at java.lang.Object.wait(Unknown Source)
	at org.eclipse.jdt.internal.core.search.processing.JobManager.run(JobManager.java:382)
	- locked <0x000000009fae5178> (a org.eclipse.jdt.internal.core.search.indexing.IndexManager)
	at java.lang.Thread.run(Unknown Source)

   Locked ownable synchronizers:
	- None

"[ThreadPool Manager] - Idle Thread" #26 daemon prio=5 os_prio=0 tid=0x000000001a22a000 nid=0x229c in Object.wait() [0x0000000021eaf000]
   java.lang.Thread.State: WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	at java.lang.Object.wait(Unknown Source)
	at org.eclipse.equinox.internal.util.impl.tpt.threadpool.Executor.run(Executor.java:106)
	- locked <0x000000009e39d438> (a org.eclipse.equinox.internal.util.impl.tpt.threadpool.Executor)

   Locked ownable synchronizers:
	- None

"EMF Reference Cleaner" #25 daemon prio=5 os_prio=0 tid=0x000000001a224000 nid=0x31c in Object.wait() [0x000000001fe3f000]
   java.lang.Thread.State: WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	at java.lang.ref.ReferenceQueue.remove(Unknown Source)
	- locked <0x000000009e39df18> (a java.lang.ref.ReferenceQueue$Lock)
	at java.lang.ref.ReferenceQueue.remove(Unknown Source)
	at org.eclipse.emf.common.util.CommonUtil$1ReferenceClearingQueuePollingThread.run(CommonUtil.java:70)

   Locked ownable synchronizers:
	- None

"Thread-1" #20 daemon prio=1 os_prio=-2 tid=0x0000000019d8d000 nid=0x20e8 waiting on condition [0x000000001e19f000]
   java.lang.Thread.State: WAITING (parking)
	at sun.misc.Unsafe.park(Native Method)
	- parking to wait for  <0x000000009e3a3640> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
	at java.util.concurrent.locks.LockSupport.park(Unknown Source)
	at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(Unknown Source)
	at java.util.concurrent.ArrayBlockingQueue.take(Unknown Source)
	at org.eclipse.equinox.weaving.internal.caching.CacheWriter$1.run(Unknown Source)
	at java.lang.Thread.run(Unknown Source)

   Locked ownable synchronizers:
	- None

"Worker-JM" #19 prio=5 os_prio=0 tid=0x0000000019b42800 nid=0x730 in Object.wait() [0x000000001e90f000]
   java.lang.Thread.State: WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	at org.eclipse.core.internal.jobs.InternalWorker.run(InternalWorker.java:59)
	- locked <0x000000009e398d38> (a java.util.ArrayList)

   Locked ownable synchronizers:
	- None

"[Timer] - Main Queue Handler" #18 daemon prio=5 os_prio=0 tid=0x0000000019b0b000 nid=0x28 in Object.wait() [0x000000001de9f000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	at org.eclipse.equinox.internal.util.impl.tpt.timer.TimerImpl.run(TimerImpl.java:141)
	- locked <0x000000009e3a3d80> (a java.lang.Object)
	at java.lang.Thread.run(Unknown Source)

   Locked ownable synchronizers:
	- None

"Start Level: Equinox Container: 60bfefd2-7ff8-0014-1534-deb199e8bf66" #16 daemon prio=5 os_prio=0 tid=0x000000001c704800 nid=0x1a4c in Object.wait() [0x000000001e09f000]
   java.lang.Thread.State: WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	at java.lang.Object.wait(Unknown Source)
	at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.getNextEvent(EventManager.java:400)
	- locked <0x000000009e3a3f98> (a org.eclipse.osgi.framework.eventmgr.EventManager$EventThread)
	at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:336)

   Locked ownable synchronizers:
	- None

"Framework Event Dispatcher: Equinox Container: 60bfefd2-7ff8-0014-1534-deb199e8bf66" #15 daemon prio=5 os_prio=0 tid=0x000000001bcaa000 nid=0x262c in Object.wait() [0x000000001df9f000]
   java.lang.Thread.State: WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	at java.lang.Object.wait(Unknown Source)
	at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.getNextEvent(EventManager.java:400)
	- locked <0x000000009e5fb9a8> (a org.eclipse.osgi.framework.eventmgr.EventManager$EventThread)
	at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:336)

   Locked ownable synchronizers:
	- None

"Bundle File Closer" #14 daemon prio=5 os_prio=0 tid=0x000000001a572800 nid=0x2318 in Object.wait() [0x000000001ad2f000]
   java.lang.Thread.State: WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	at java.lang.Object.wait(Unknown Source)
	at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.getNextEvent(EventManager.java:400)
	- locked <0x000000009e019d88> (a org.eclipse.osgi.framework.eventmgr.EventManager$EventThread)
	at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:336)

   Locked ownable synchronizers:
	- None

"Active Thread: Equinox Container: 60bfefd2-7ff8-0014-1534-deb199e8bf66" #12 prio=5 os_prio=0 tid=0x0000000019a68800 nid=0x30 waiting on condition [0x000000001ac2f000]
   java.lang.Thread.State: TIMED_WAITING (parking)
	at sun.misc.Unsafe.park(Native Method)
	- parking to wait for  <0x000000009e01a200> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
	at java.util.concurrent.locks.LockSupport.parkNanos(Unknown Source)
	at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(Unknown Source)
	at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(Unknown Source)
	at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(Unknown Source)
	at java.util.concurrent.ThreadPoolExecutor.getTask(Unknown Source)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
	at java.lang.Thread.run(Unknown Source)

   Locked ownable synchronizers:
	- None

"Service Thread" #10 daemon prio=9 os_prio=0 tid=0x000000001822f800 nid=0x1c2c runnable [0x0000000000000000]
   java.lang.Thread.State: RUNNABLE

   Locked ownable synchronizers:
	- None

"C1 CompilerThread3" #9 daemon prio=9 os_prio=2 tid=0x00000000181cb000 nid=0x2558 waiting on condition [0x0000000000000000]
   java.lang.Thread.State: RUNNABLE

   Locked ownable synchronizers:
	- None

"C2 CompilerThread2" #8 daemon prio=9 os_prio=2 tid=0x00000000181c9800 nid=0x2660 waiting on condition [0x0000000000000000]
   java.lang.Thread.State: RUNNABLE

   Locked ownable synchronizers:
	- None

"C2 CompilerThread1" #7 daemon prio=9 os_prio=2 tid=0x00000000181c2000 nid=0x44c waiting on condition [0x0000000000000000]
   java.lang.Thread.State: RUNNABLE

   Locked ownable synchronizers:
	- None

"C2 CompilerThread0" #6 daemon prio=9 os_prio=2 tid=0x00000000181c0000 nid=0x2748 waiting on condition [0x0000000000000000]
   java.lang.Thread.State: RUNNABLE

   Locked ownable synchronizers:
	- None

"Attach Listener" #5 daemon prio=5 os_prio=2 tid=0x00000000161ae000 nid=0x1c4c waiting on condition [0x0000000000000000]
   java.lang.Thread.State: RUNNABLE

   Locked ownable synchronizers:
	- None

"Signal Dispatcher" #4 daemon prio=9 os_prio=2 tid=0x00000000161ad000 nid=0x2034 runnable [0x0000000000000000]
   java.lang.Thread.State: RUNNABLE

   Locked ownable synchronizers:
	- None

"Finalizer" #3 daemon prio=8 os_prio=1 tid=0x00000000021a6000 nid=0x17e8 in Object.wait() [0x000000001818f000]
   java.lang.Thread.State: WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	at java.lang.ref.ReferenceQueue.remove(Unknown Source)
	- locked <0x000000009d4233d8> (a java.lang.ref.ReferenceQueue$Lock)
	at java.lang.ref.ReferenceQueue.remove(Unknown Source)
	at java.lang.ref.Finalizer$FinalizerThread.run(Unknown Source)

   Locked ownable synchronizers:
	- None

"Reference Handler" #2 daemon prio=10 os_prio=2 tid=0x000000001619c000 nid=0x25c4 in Object.wait() [0x000000001808f000]
   java.lang.Thread.State: WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	at java.lang.Object.wait(Unknown Source)
	at java.lang.ref.Reference$ReferenceHandler.run(Unknown Source)
	- locked <0x000000009d198098> (a java.lang.ref.Reference$Lock)

   Locked ownable synchronizers:
	- None

"main" #1 prio=6 os_prio=0 tid=0x00000000020b2800 nid=0x1560 runnable [0x000000000013e000]
   java.lang.Thread.State: RUNNABLE
	at org.eclipse.swt.internal.win32.OS.WaitMessage(Native Method)
	at org.eclipse.swt.widgets.Display.sleep(Display.java:4701)
	at org.eclipse.ui.application.WorkbenchAdvisor.eventLoopIdle(WorkbenchAdvisor.java:368)
	at org.eclipse.ui.internal.ide.application.IDEWorkbenchAdvisor.eventLoopIdle(IDEWorkbenchAdvisor.java:918)
	at org.eclipse.ui.internal.Workbench$3.eventLoopIdle(Workbench.java:498)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$9.run(PartRenderingEngine.java:1155)
	at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1032)
	at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:148)
	at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:636)
	at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
	at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:579)
	at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:150)
	at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:135)
	at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:134)
	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:380)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:235)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
	at java.lang.reflect.Method.invoke(Unknown Source)
	at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:648)
	at org.eclipse.equinox.launcher.Main.basicRun(Main.java:603)
	at org.eclipse.equinox.launcher.Main.run(Main.java:1465)

   Locked ownable synchronizers:
	- None

"VM Thread" os_prio=2 tid=0x0000000016198800 nid=0x2650 runnable 

"GC task thread#0 (ParallelGC)" os_prio=0 tid=0x00000000020c7800 nid=0xc88 runnable 

"GC task thread#1 (ParallelGC)" os_prio=0 tid=0x00000000020c9000 nid=0x237c runnable 

"GC task thread#2 (ParallelGC)" os_prio=0 tid=0x00000000020ca800 nid=0x2464 runnable 

"GC task thread#3 (ParallelGC)" os_prio=0 tid=0x00000000020cd000 nid=0x26f8 runnable 

"GC task thread#4 (ParallelGC)" os_prio=0 tid=0x00000000020ce000 nid=0xa18 runnable 

"GC task thread#5 (ParallelGC)" os_prio=0 tid=0x00000000020cf000 nid=0x20e0 runnable 

"GC task thread#6 (ParallelGC)" os_prio=0 tid=0x00000000020d2800 nid=0x15b4 runnable 

"GC task thread#7 (ParallelGC)" os_prio=0 tid=0x00000000020d3800 nid=0x154c runnable 

"VM Periodic Task Thread" os_prio=2 tid=0x0000000018238800 nid=0x1dd8 waiting on condition 

JNI global references: 490
Comment 59 Neil Hauge CLA 2015-05-12 12:04:04 EDT
(In reply to Vahap Oguz TOKMAK from comment #58)

There is no "jpt" (Dali) code in this thread dump.  At a glance, your hang/delay is likely happening here due to a remote file system or other bottleneck:

"Worker-757" #12009 prio=5 os_prio=0 tid=0x000000003c892800 nid=0x29fc runnable [0x0000000042b0e000]
   java.lang.Thread.State: RUNNABLE
	at java.io.WinNTFileSystem.getBooleanAttributes(Native Method)
	at java.io.File.isDirectory(Unknown Source)
	at org.eclipse.jst.j2ee.classpathdep.ClasspathDependencyUtil.isClassFolderEntry(ClasspathDependencyUtil.java:490)
Comment 60 Angel Vera CLA 2018-04-19 10:00:13 EDT
Although I can understand this problem might be happening in another component, I think there is a need to identify the issue with the help of the Dali experts and help move the issue forward. 

Doing some google search on the the text "JPA change event handler" certainly shows hits that make this issue still not be resolved.

More recent to when this bug was closed, there is still people reporting this problem:

https://www.eclipse.org/forums/index.php/t/1089217/
Comment 61 Alexander Wessel CLA 2018-08-03 22:53:58 EDT
(In reply to Angel Vera from comment #60)
> More recent to when this bug was closed, there is still people reporting
> this problem:

Oh I sure still have this problem in 4.8 Photon! This bug is NOT resolved at all, whether the assignment in the "Product" field is correct or not.
Comment 62 Oliver Libutzki CLA 2019-07-17 05:56:04 EDT
The occurence of the "JPA Java Change Event Handler" job is not just annoying. In our IDE it leads to endless loops while building incrementally.

The job causes autobuild jobs to be cancelled, thos autobuild jobs are restarted and cancelled again by the "JPA Java Change Event Handler" job. Again and again... so please take this issue seriously as it might paralyze the whole Eclipse IDE.
Comment 63 Can Türker CLA 2019-09-26 09:18:58 EDT
I am using the newest Eclipse 2019-09. "Building JPA Project" works often endlessly. Sometimes it is finished after an hour. Since "Building JPA Project" is triggered after some save operations and imports (although all validations are suppressed), Eclipse becomes unusable. This problem is persistent since having included the first plugins (Payara/GlassFish) into the Eclipse IDE.

In this form, Eclipse is not usable anymore in daily business. An urgent fix is required!
Comment 64 Milind Rao CLA 2019-09-30 00:08:18 EDT
I'm running into the same issue.  Most definitely not fixed.  Running Eclipse 2018-09.  It just locks up Eclipse until "Building JPA Project" is done.  And that can take minutes.  I have a 8th gen core i7 with 32GB RAM and a 1TB SSD and I'm twidling my thumbs until this gets done.  If there's anything I can provide, I'd be happy to do that.  But please fix this.
Comment 65 Johannes Becker CLA 2020-02-27 10:37:21 EST
Definitely not fixed in Version: 2019-12 (4.14.0) Build id: 20191212-1212

I sometimes have to kill the Eclipse-Process since it becomes unresponsive. Occurs to everybody in our team (6 people).
Comment 66 nimo mayr CLA 2021-01-04 13:03:23 EST
I have


Eclipse IDE for Enterprise Java Developers
Version: 2020-12 (4.18.0)

with JPA Faced enabled.

 
The process "JPA Project Change Event Handler" comes every time I save a file or a file is saved by eclipse (by autosave) or jump from one filelocation to another. It needs 2-5 seconds to finish before and I cannot edit or use the IDE in this meantime because "JPA Project Change Event Handler" is a blocking task. Please improve this. Maybe you can make the process "JPA Project Change Event Handler" faster or at least asynchron. Thanks.
Comment 67 Nicolas Dumont CLA 2021-02-04 04:48:15 EST
Problem still exists and I find it getting worse. Everyday Eclipse freezes and i have to restart the program.

I have Eclipse IDE for Enterprise Java Developers with Version: 2020-12 (4.18.0).

Please do something about it. I'm starting to find it unbearable to work with Eclipse.
Comment 68 Johannes Becker CLA 2021-02-19 08:12:53 EST
For gods sake, somebody at Eclipse please do something about it or document how to disable this handler.

It has become watching the circle of death. Seems to be kind of infinite loop, since sometimes you have to kill Eclipse, since you can't shut it down normally since more and more of these freaking handlers appear.
Comment 69 Nobody - feel free to take it CLA 2021-03-29 03:25:52 EDT
My machine also has this problem on a regular basis. Currently, I am waiting for it since 10 Minutes or so, and the only thread which seems to do any work at all is the "main" thread, which seems to be handling some UI stuff:

"main" #1 prio=6 os_prio=0 tid=0x0000000003ace000 nid=0x3ec4 runnable [0x00000000006fa000]
   java.lang.Thread.State: RUNNABLE
	at org.eclipse.swt.internal.win32.OS.SendMessage(Native Method)
	at org.eclipse.swt.widgets.TreeItem.getParentItem(TreeItem.java:885)
	at org.eclipse.jface.viewers.TreeViewer.getParentItem(TreeViewer.java:226)
	at org.eclipse.jface.viewers.AbstractTreeViewer.getTreePathFromItem(AbstractTreeViewer.java:2957)
	at org.eclipse.jface.viewers.AbstractTreeViewer.isExpandable(AbstractTreeViewer.java:2193)
	at org.eclipse.jface.viewers.AbstractTreeViewer.updatePlus(AbstractTreeViewer.java:2880)
	at org.eclipse.jface.viewers.TreeViewer.updatePlus(TreeViewer.java:794)
	at org.eclipse.jface.viewers.AbstractTreeViewer.updateChildren(AbstractTreeViewer.java:2770)
	at org.eclipse.jface.viewers.AbstractTreeViewer.internalRefreshStruct(AbstractTreeViewer.java:1953)
	at org.eclipse.jface.viewers.TreeViewer.internalRefreshStruct(TreeViewer.java:677)
	at org.eclipse.jface.viewers.AbstractTreeViewer.internalRefreshStruct(AbstractTreeViewer.java:1959)
	at org.eclipse.jface.viewers.TreeViewer.internalRefreshStruct(TreeViewer.java:677)
	at org.eclipse.jface.viewers.AbstractTreeViewer.internalRefreshStruct(AbstractTreeViewer.java:1959)
	at org.eclipse.jface.viewers.TreeViewer.internalRefreshStruct(TreeViewer.java:677)
	at org.eclipse.jface.viewers.AbstractTreeViewer.internalRefreshStruct(AbstractTreeViewer.java:1959)
	at org.eclipse.jface.viewers.TreeViewer.internalRefreshStruct(TreeViewer.java:677)
	at org.eclipse.jface.viewers.AbstractTreeViewer.internalRefreshStruct(AbstractTreeViewer.java:1959)
	at org.eclipse.jface.viewers.TreeViewer.internalRefreshStruct(TreeViewer.java:677)
	at org.eclipse.jface.viewers.AbstractTreeViewer.internalRefreshStruct(AbstractTreeViewer.java:1959)
	at org.eclipse.jface.viewers.TreeViewer.internalRefreshStruct(TreeViewer.java:677)
	at org.eclipse.jface.viewers.AbstractTreeViewer.internalRefresh(AbstractTreeViewer.java:1929)
	at org.eclipse.jface.viewers.AbstractTreeViewer.internalRefresh(AbstractTreeViewer.java:1886)
	at org.eclipse.ui.navigator.CommonViewer.internalRefresh(CommonViewer.java:532)
	at org.eclipse.jface.viewers.StructuredViewer.lambda$3(StructuredViewer.java:1533)
	at org.eclipse.jface.viewers.StructuredViewer$$Lambda$454/1530835421.run(Unknown Source)
	at org.eclipse.jface.viewers.StructuredViewer.preservingSelection(StructuredViewer.java:1449)
	at org.eclipse.jface.viewers.TreeViewer.preservingSelection(TreeViewer.java:363)
	at org.eclipse.jface.viewers.StructuredViewer.preservingSelection(StructuredViewer.java:1410)
	at org.eclipse.jface.viewers.StructuredViewer.refresh(StructuredViewer.java:1533)
	at org.eclipse.jface.viewers.ColumnViewer.refresh(ColumnViewer.java:538)
	at org.eclipse.ui.navigator.CommonViewer.refresh(CommonViewer.java:349)
	at org.eclipse.ui.navigator.CommonViewer.refresh(CommonViewer.java:495)
	at org.eclipse.jst.jee.ui.internal.navigator.JEE5ContentProvider$1.run(JEE5ContentProvider.java:145)
	at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:40)
	at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:185)
	- locked <0x000000070b9eec50> (a org.eclipse.swt.widgets.RunnableLock)
	at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:3919)
	at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3550)
	at org.eclipse.jface.operation.ModalContext$ModalContextThread.block(ModalContext.java:168)
	at org.eclipse.jface.operation.ModalContext.run(ModalContext.java:372)


I am using Eclipse 2018-12.
How can this ticket be in the "VERIFIED FIXED" state since 2013?
Comment 70 He Pengpai CLA 2022-06-09 02:26:40 EDT
Try this:
Preferences > Install/Update > Uninstall or update > Installed Software.
search Dali Java Persistence Tools - JPA Support.
Selected and then Click Uninstall > restart eclipse.
Version: 2022-03 (4.23.0)
Comment 71 Colin Sharples CLA 2022-06-30 16:38:51 EDT
Not fixed in 2022-06. Still have to manually cancel the jobs in the Progress view in order to let a build proceed.
Comment 72 Eclipse Genie CLA 2022-11-30 17:54:30 EST
New Gerrit change created: https://git.eclipse.org/r/c/dali/webtools.dali/+/197425
Comment 73 Lakshminarayana CLA 2022-11-30 18:21:23 EST
(In reply to Eclipse Genie from comment #72)
> New Gerrit change created:
> https://git.eclipse.org/r/c/dali/webtools.dali/+/197425

Why do we need to process the Non-JPA projects?

I believe this is the core fix to the bug. This code affects all the Non-JPA projects in the workspace.
The job is scheduling every change of file in non-JPA projects.

I believe this fix improves the performance of the product.

@Nitin @Neil @Nick
Please review the changes since you all have the better in this area. Please correct me if I am wrong.
Comment 74 Gert Matern CLA 2023-07-12 03:48:18 EDT
Why are plugins forced to run in non relevant projects? This generates a bad user experience and switch to other IDEs. Plugins are ok as long as they are configured to run on demand by user settings or required by project settings. Any other way is simply annoying stealing productivity time and let you think about changing to i.e IntelliJ IDEA., Netbeans etc. I'm an long term user of eclipse but this issue, the Wild West Developer change and other things that happenend with the plugin behaviour makes it worser every change that happens.
Either make restricting requirements policies and QA before integrating or updating plugins in eclipse or I'm gone...