Modify

Opened 9 years ago

Closed 9 years ago

#11622 closed defect (duplicate)

Undeterministic livelocks on JOSM startup

Reported by: wiktorn Owned by: team
Priority: normal Milestone:
Component: Core Version: latest
Keywords: Cc: simon04

Description

From time to time (looks like more less - since [8526]) I observe livelocks during startup before splash screen is shown. Thread dump analysis shows following threads:

"AWT-EventQueue-0" prio=6 tid=0x000000000cb0c000 nid=0x156c waiting for monitor entry [0x000000000f14c000]
   java.lang.Thread.State: BLOCKED (on object monitor)
	at java.awt.Component.invalidate(Component.java:2920)
	- waiting to lock <0x00000000edbef688> (a java.awt.Component$AWTTreeLock)
	at java.awt.Container.invalidate(Container.java:1580)
	at javax.swing.JComponent.revalidate(JComponent.java:4862)
	at javax.swing.plaf.basic.BasicTextUI$RootView.preferenceChanged(BasicTextUI.java:1406)
	at javax.swing.text.View.preferenceChanged(View.java:289)
	at javax.swing.text.BoxView.preferenceChanged(BoxView.java:286)
	at javax.swing.text.View.preferenceChanged(View.java:289)
	at javax.swing.text.BoxView.preferenceChanged(BoxView.java:286)
	at javax.swing.text.View.preferenceChanged(View.java:289)
	at javax.swing.text.BoxView.preferenceChanged(BoxView.java:286)
	at javax.swing.text.View.preferenceChanged(View.java:289)
	at javax.swing.text.View.preferenceChanged(View.java:289)
	at javax.swing.text.GlyphView.removeUpdate(GlyphView.java:937)
	at javax.swing.text.html.InlineView.removeUpdate(InlineView.java:80)
	at javax.swing.text.View.forwardUpdateToView(View.java:1225)
	at javax.swing.text.FlowView$LogicalView.forwardUpdateToView(FlowView.java:795)
	at javax.swing.text.View.forwardUpdate(View.java:1158)
	at javax.swing.text.FlowView$LogicalView.forwardUpdate(FlowView.java:805)
	at javax.swing.text.View.removeUpdate(View.java:747)
	at javax.swing.text.FlowView.removeUpdate(FlowView.java:269)
	at javax.swing.text.View.forwardUpdateToView(View.java:1225)
	at javax.swing.text.View.forwardUpdate(View.java:1158)
	at javax.swing.text.BoxView.forwardUpdate(BoxView.java:240)
	at javax.swing.text.View.removeUpdate(View.java:747)
	at javax.swing.text.View.forwardUpdateToView(View.java:1225)
	at javax.swing.text.View.forwardUpdate(View.java:1158)
	at javax.swing.text.BoxView.forwardUpdate(BoxView.java:240)
	at javax.swing.text.View.removeUpdate(View.java:747)
	at javax.swing.plaf.basic.BasicTextUI$RootView.removeUpdate(BasicTextUI.java:1616)
	at javax.swing.plaf.basic.BasicTextUI$UpdateHandler.removeUpdate(BasicTextUI.java:1876)
	at javax.swing.text.AbstractDocument.fireRemoveUpdate(AbstractDocument.java:260)
	at javax.swing.text.AbstractDocument.handleRemove(AbstractDocument.java:623)
	at javax.swing.text.AbstractDocument.remove(AbstractDocument.java:591)
	at javax.swing.JEditorPane.setText(JEditorPane.java:1409)
	at org.openstreetmap.josm.gui.SplashScreen$SplashScreenProgressRenderer.setTasks(SplashScreen.java:391)
	at org.openstreetmap.josm.gui.SplashScreen$2.run(SplashScreen.java:127)
	at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:312)
	at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:745)
	at java.awt.EventQueue.access$300(EventQueue.java:103)
	at java.awt.EventQueue$3.run(EventQueue.java:706)
	at java.awt.EventQueue$3.run(EventQueue.java:704)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
	at java.awt.EventQueue.dispatchEvent(EventQueue.java:715)
	at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:242)
	at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:161)
	at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:150)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:146)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:138)
	at java.awt.EventDispatchThread.run(EventDispatchThread.java:91)

   Locked ownable synchronizers:
	- None

"main" prio=6 tid=0x00000000002ae800 nid=0x1158 in Object.wait() [0x000000000262e000]
   java.lang.Thread.State: WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	- waiting on <0x00000000eb996358> (a javax.swing.text.html.HTMLDocument)
	at java.lang.Object.wait(Object.java:503)
	at javax.swing.text.AbstractDocument.readLock(AbstractDocument.java:1387)
	- locked <0x00000000eb996358> (a javax.swing.text.html.HTMLDocument)
	at javax.swing.plaf.basic.BasicTextUI.getPreferredSize(BasicTextUI.java:908)
	at javax.swing.JComponent.getPreferredSize(JComponent.java:1661)
	at javax.swing.JEditorPane.getPreferredSize(JEditorPane.java:1332)
	at javax.swing.ScrollPaneLayout.layoutContainer(ScrollPaneLayout.java:790)
	at java.awt.Container.layout(Container.java:1503)
	at java.awt.Container.doLayout(Container.java:1492)
	at java.awt.Container.validateTree(Container.java:1688)
	at java.awt.Container.validateTree(Container.java:1697)
	at java.awt.Container.validateTree(Container.java:1697)
	at java.awt.Container.validateTree(Container.java:1697)
	at java.awt.Container.validateTree(Container.java:1697)
	at java.awt.Container.validateTree(Container.java:1697)
	at java.awt.Container.validateTree(Container.java:1697)
	at java.awt.Container.validate(Container.java:1623)
	- locked <0x00000000edbef688> (a java.awt.Component$AWTTreeLock)
	at java.awt.Container.validateUnconditionally(Container.java:1660)
	- locked <0x00000000edbef688> (a java.awt.Component$AWTTreeLock)
	at java.awt.Window.show(Window.java:1033)
	at java.awt.Component.show(Component.java:1655)
	at java.awt.Component.setVisible(Component.java:1607)
	at java.awt.Window.setVisible(Window.java:1014)
	at org.openstreetmap.josm.gui.MainApplication.main(MainApplication.java:413)

   Locked ownable synchronizers:
	- None

I've observed this also on computer with fresh JOSM installation so I don't suspect any of the preferences. It occurs from time to time, I haven't found a reliable way to reproduce it.

Build-Date: 2015-06-28 20:41:51
Revision: 8541
Is-Local-Build: true

Identification: JOSM/1.5 (8541 SVN en) Windows 7 64-Bit
Memory Usage: 337 MB / 910 MB (190 MB allocated, but free)
Java version: 1.7.0_80, Oracle Corporation, Java HotSpot(TM) 64-Bit Server VM
VM arguments: [-Dsun.net.http.allowRestrictedHeaders=true, -Dvisualvm.id=11306157799509, -Dfile.encoding=UTF-8]
Program arguments: [--debug]

Plugins:
- Mapillary (31282)
- commons-imaging (31241)
- geotools (31126)
- jts (31126)
- opendata (31241)
- photo_geotagging (31241)
- reverter (31241)
- utilsplugin2 (31241)

Attachments (0)

Change History (4)

comment:1 by wiktorn, 9 years ago

Just happened it again on: version 1.8.0_45, vendor Oracle Corporation.

Duplicate of #11591?

comment:2 by wiktorn, 9 years ago

After an evening with hacking on JOSM, on around 50-100 runs it occurred around 3-4 times. It might be due to the fact, that I moved to Java 1.8, that it's not so frequent, as I noticed earlier. Or maybe it's connected to network speed.

comment:3 by Don-vip, 9 years ago

Cc: simon04 added

I think it's the same problem as #11591. We didn't have such problems before implementing the new splash screen.

comment:4 by Don-vip, 9 years ago

Resolution: duplicate
Status: newclosed

Closed as duplicate of #11591.

Modify Ticket

Change Properties
Set your email in Preferences
Action
as closed The owner will remain team.
as The resolution will be set.
The resolution will be deleted. Next status will be 'reopened'.

Add Comment


E-mail address and name can be saved in the Preferences .
 
Note: See TracTickets for help on using tickets.