Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Eclipse Projects » Remote Application Platform (RAP) » Application freezes occasionally
Application freezes occasionally [message #916092] Tue, 18 September 2012 14:13 Go to next message
Moritz Hanke is currently offline Moritz HankeFriend
Messages: 5
Registered: September 2012
Junior Member
Hello all,

we have a problem regarding RAP. Our web application freezes occasionally and we don't know how to determine the problem.
If we run the same application as an RCP application, we don't see any freezes at all.
The freezes occur at different locations and is only blocking the current session. All other sessions are running normally and if we reload the blocked session, it runs again without any problems (until the freeze happens again any time soon).
We already tried the release version of RAP 1.5 and milestone 1 of RAP 2.0, but both versions had the same problem.
We're running the web application with Tomcat 7.
We have a very big application, therefore it's not possible to post the application. We have no idea where the problem is located.

Can you give us a hint, how to trace and track down the problem?

Thank you very much in advance!

[Updated on: Mon, 24 September 2012 12:06]

Report message to a moderator

Re: Application freezes occasionally [message #916270 is a reply to message #916092] Tue, 18 September 2012 20:41 Go to previous messageGo to next message
Chris Fairhall is currently offline Chris FairhallFriend
Messages: 102
Registered: February 2011
Senior Member
I would suggest running the application in debug and when the application "freezes", suspend all the threads, find the UI thread for the frozen session and see what method it is stuck in. Perhaps you have a dead lock somewhere. Alternately you can do a thread dump with a tool like visualvm or jconsole
Re: Application freezes occasionally [message #918611 is a reply to message #916270] Fri, 21 September 2012 07:05 Go to previous messageGo to next message
Moritz Hanke is currently offline Moritz HankeFriend
Messages: 5
Registered: September 2012
Junior Member
Hi Chris,

thanks for your suggestion. It's really hard to reproduce the failure. In our eclipse we can't run the application so long that the problem occurs. I have started JMX Connection Support on the server to work with jvisualvm and get a thread dump.

[Updated on: Fri, 21 September 2012 08:26]

Report message to a moderator

Re: Application freezes occasionally [message #918894 is a reply to message #918611] Fri, 21 September 2012 13:01 Go to previous messageGo to next message
Moritz Hanke is currently offline Moritz HankeFriend
Messages: 5
Registered: September 2012
Junior Member
Now I have made a dump. At least one session was frozen. Here are all UIThreads:

"UIThread [D3C9416047D4C852BC195473C73BC75B.node1]" - Thread t@197
   java.lang.Thread.State: WAITING
	at java.lang.Object.wait(Native Method)
	- waiting on <1062c44> (a org.eclipse.rwt.internal.lifecycle.UIThread)
	at java.lang.Object.wait(Object.java:485)
	at org.eclipse.rwt.internal.lifecycle.UIThread.switchThread(UIThread.java:59)
	at org.eclipse.rwt.internal.lifecycle.RWTLifeCycle.sleep(RWTLifeCycle.java:232)
	at org.eclipse.swt.widgets.Display.sleep(Display.java:1176)
	at org.eclipse.jface.window.Window.runEventLoop(Window.java:842)
	at org.eclipse.jface.window.Window.open(Window.java:817)
	at de.vitaphone.isp.application.ui.ISPConfiguration.login(ISPConfiguration.java:45)
	at de.vitaphone.common.framework.ui.internal.Application.start(Application.java:35)
	at org.eclipse.rap.ui.internal.application.EntryPointApplicationWrapper.createUI(EntryPointApplicationWrapper.java:38)
	at org.eclipse.rwt.internal.lifecycle.RWTLifeCycle.createUI(RWTLifeCycle.java:177)
	at org.eclipse.rwt.internal.lifecycle.RWTLifeCycle$UIThreadController.run(RWTLifeCycle.java:289)
	at java.lang.Thread.run(Thread.java:662)
	at org.eclipse.rwt.internal.lifecycle.UIThread.run(UIThread.java:102)

   Locked ownable synchronizers:
	- None

"UIThread [26D0ACE921D64EA06B5739AB0623EA22.node1]" - Thread t@171
   java.lang.Thread.State: WAITING
	at java.lang.Object.wait(Native Method)
	- waiting on <3c9590> (a org.eclipse.rwt.internal.lifecycle.UIThread)
	at java.lang.Object.wait(Object.java:485)
	at org.eclipse.rwt.internal.lifecycle.UIThread.switchThread(UIThread.java:59)
	at org.eclipse.rwt.internal.lifecycle.RWTLifeCycle.sleep(RWTLifeCycle.java:232)
	at org.eclipse.swt.widgets.Display.sleep(Display.java:1176)
	at org.eclipse.ui.application.WorkbenchAdvisor.eventLoopIdle(WorkbenchAdvisor.java:361)
	at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2734)
	at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2694)
	at org.eclipse.ui.internal.Workbench.access$5(Workbench.java:2530)
	at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:702)
	at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
	at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:685)
	at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:157)
	at de.vitaphone.common.framework.ui.internal.Application.start(Application.java:38)
	at org.eclipse.rap.ui.internal.application.EntryPointApplicationWrapper.createUI(EntryPointApplicationWrapper.java:38)
	at org.eclipse.rwt.internal.lifecycle.RWTLifeCycle.createUI(RWTLifeCycle.java:177)
	at org.eclipse.rwt.internal.lifecycle.RWTLifeCycle$UIThreadController.run(RWTLifeCycle.java:289)
	at java.lang.Thread.run(Thread.java:662)
	at org.eclipse.rwt.internal.lifecycle.UIThread.run(UIThread.java:102)

   Locked ownable synchronizers:
	- None

"UIThread [2E5B310C0E9B0D57DFEC887315FB66AB.node1]" - Thread t@168
   java.lang.Thread.State: WAITING
	at java.lang.Object.wait(Native Method)
	- waiting on <10fb87d> (a org.eclipse.rwt.internal.lifecycle.UIThread)
	at java.lang.Object.wait(Object.java:485)
	at org.eclipse.rwt.internal.lifecycle.UIThread.switchThread(UIThread.java:59)
	at org.eclipse.rwt.internal.lifecycle.RWTLifeCycle.sleep(RWTLifeCycle.java:232)
	at org.eclipse.swt.widgets.Display.sleep(Display.java:1176)
	at org.eclipse.jface.window.Window.runEventLoop(Window.java:842)
	at org.eclipse.jface.window.Window.open(Window.java:817)
	at de.vitaphone.isp.application.ui.ISPConfiguration.login(ISPConfiguration.java:45)
	at de.vitaphone.common.framework.ui.internal.Application.start(Application.java:35)
	at org.eclipse.rap.ui.internal.application.EntryPointApplicationWrapper.createUI(EntryPointApplicationWrapper.java:38)
	at org.eclipse.rwt.internal.lifecycle.RWTLifeCycle.createUI(RWTLifeCycle.java:177)
	at org.eclipse.rwt.internal.lifecycle.RWTLifeCycle$UIThreadController.run(RWTLifeCycle.java:289)
	at java.lang.Thread.run(Thread.java:662)
	at org.eclipse.rwt.internal.lifecycle.UIThread.run(UIThread.java:102)

   Locked ownable synchronizers:
	- None

"UIThread [07D87F7551A46D53E16E660D98634839.node1]" - Thread t@167
   java.lang.Thread.State: WAITING
	at java.lang.Object.wait(Native Method)
	- waiting on <18d1669> (a org.eclipse.rwt.internal.lifecycle.UIThread)
	at java.lang.Object.wait(Object.java:485)
	at org.eclipse.rwt.internal.lifecycle.UIThread.switchThread(UIThread.java:59)
	at org.eclipse.rwt.internal.lifecycle.RWTLifeCycle.sleep(RWTLifeCycle.java:232)
	at org.eclipse.swt.widgets.Display.sleep(Display.java:1176)
	at org.eclipse.ui.application.WorkbenchAdvisor.eventLoopIdle(WorkbenchAdvisor.java:361)
	at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2734)
	at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2694)
	at org.eclipse.ui.internal.Workbench.access$5(Workbench.java:2530)
	at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:702)
	at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
	at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:685)
	at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:157)
	at de.vitaphone.common.framework.ui.internal.Application.start(Application.java:38)
	at org.eclipse.rap.ui.internal.application.EntryPointApplicationWrapper.createUI(EntryPointApplicationWrapper.java:38)
	at org.eclipse.rwt.internal.lifecycle.RWTLifeCycle.createUI(RWTLifeCycle.java:177)
	at org.eclipse.rwt.internal.lifecycle.RWTLifeCycle$UIThreadController.run(RWTLifeCycle.java:289)
	at java.lang.Thread.run(Thread.java:662)
	at org.eclipse.rwt.internal.lifecycle.UIThread.run(UIThread.java:102)

   Locked ownable synchronizers:
	- None

[Updated on: Fri, 21 September 2012 13:02]

Report message to a moderator

Re: Application freezes occasionally [message #921559 is a reply to message #918894] Mon, 24 September 2012 08:15 Go to previous messageGo to next message
Ralf Sternberg is currently offline Ralf SternbergFriend
Messages: 1296
Registered: July 2009
Senior Member

Hi Moritz,

at least this part of the thread dump looks completely sane. All
UIThreads are waiting in Display#sleep for the next request.

Could you describe the symptoms of this freeze? Does the browser send a
request that does not get a response? In this case it would also be
interesting to look at the particular request thread. It's not a
UIThread but one from the servlet container's thread pool. Could you
provide the entire thread dump?

Regards, Ralf


--
Ralf Sternberg

Twitter: @EclipseRAP
Blog: http://eclipsesource.com/blogs/

Professional services for RAP and RCP?
http://eclipsesource.com/services/rap/
Re: Application freezes occasionally [message #921766 is a reply to message #921559] Mon, 24 September 2012 12:04 Go to previous messageGo to next message
Moritz Hanke is currently offline Moritz HankeFriend
Messages: 5
Registered: September 2012
Junior Member
Hi Ralf,

here is the full dump. Yes I think that the browser send a request and wait for a request. When we use a loadbalancer between the browser and the tomcat, you can see a error log in the LB when you close the browser.
In the first post I have made a mistake: We use Tomcat 7.

Regards, Moritz

[Updated on: Mon, 24 September 2012 12:28]

Report message to a moderator

Re: Application freezes occasionally [message #921921 is a reply to message #921766] Mon, 24 September 2012 14:53 Go to previous messageGo to next message
Ralf Sternberg is currently offline Ralf SternbergFriend
Messages: 1296
Registered: July 2009
Senior Member

I can't spot anything suspicious. Again, could you describe the symptoms
of this freeze?

Regards, Ralf

--
Ralf Sternberg

Twitter: @EclipseRAP
Blog: http://eclipsesource.com/blogs/

Professional services for RAP and RCP?
http://eclipsesource.com/services/rap/
Re: Application freezes occasionally [message #922873 is a reply to message #921921] Tue, 25 September 2012 12:19 Go to previous message
Moritz Hanke is currently offline Moritz HankeFriend
Messages: 5
Registered: September 2012
Junior Member
If you work with the application, it stops working at some time. You can see the pointer with the hourglass. The browser still works. You can also klick to the buttons and see a click effect, but nothing happens. We can't see any similarities and we can't reproduce it so fast. I think that the browser wait for a request because we can see the message in the loadbalancer. I don't have the message at this time, when I get it, I will post it.
Previous Topic:Painting background color for Combo box
Next Topic:Open view in new browser window
Goto Forum:
  


Current Time: Fri Dec 19 17:43:19 GMT 2014

Powered by FUDForum. Page generated in 0.01997 seconds
.:: Contact :: Home ::.

Powered by: FUDforum 3.0.2.
Copyright ©2001-2010 FUDforum Bulletin Board Software