﻿id	summary	reporter	owner	description	type	status	priority	milestone	component	version	resolution	keywords	cc
3731	JOSM hangs during startup	avarab@…	avarab@…	"JOSM sometimes hands during startup lately. Starting it again makes the problem go away usually.

Here's the terminal output of me starting JOSM. Sending kill -QUIT to it when it was hanging, and strace output:

{{{
Revision: Manifest-Version: 1.0
Ant-Version: Apache Ant 1.7.1
Created-By: 14.2-b01 (Sun Microsystems Inc.)
Main-class: JOSM
Main-Version: 2296 SVN
Main-Date: 2009-10-17T13:40:11.263423Z
loading lakewalker
loading multipoly
Silent shortcut conflict: 'tools:multipoly' moved by 'tools:mirror' to 'Alt+Shift+M'.
loading openstreetbugs
loading openvisible
loading remotecontrol
RemoteControl::Accepting connections on port 8111
loading utilsplugin
loading validator
loading walkingpapers
loading wmsplugin
2009-10-17 13:47:16
Full thread dump Java HotSpot(TM) Server VM (14.2-b01 mixed mode):

""RemoteControl HTTP Server"" daemon prio=10 tid=0x6e76d400 nid=0x2e3d runnable [0x6effe000]
   java.lang.Thread.State: RUNNABLE
	at java.net.PlainSocketImpl.socketAccept(Native Method)
	at java.net.PlainSocketImpl.accept(PlainSocketImpl.java:390)
	- locked <0xadee2f58> (a java.net.SocksSocketImpl)
	at java.net.ServerSocket.implAccept(ServerSocket.java:453)
	at java.net.ServerSocket.accept(ServerSocket.java:421)
	at org.openstreetmap.josm.plugins.remotecontrol.HttpServer.run(HttpServer.java:51)

""AWT-EventQueue-0"" prio=10 tid=0x6ea90800 nid=0x2e3c waiting for monitor entry [0x6efad000]
   java.lang.Thread.State: BLOCKED (on object monitor)
	at java.awt.Component.invalidate(Component.java:2768)
	- waiting to lock <0x742804a8> (a java.awt.Component$AWTTreeLock)
	at java.awt.Container.invalidate(Container.java:1446)
	at javax.swing.JComponent.revalidate(JComponent.java:4789)
	at javax.swing.plaf.basic.BasicTextUI$RootView.preferenceChanged(BasicTextUI.java:1394)
	at javax.swing.text.View.preferenceChanged(View.java:272)
	at javax.swing.text.BoxView.preferenceChanged(BoxView.java:269)
	at javax.swing.text.View.preferenceChanged(View.java:272)
	at javax.swing.text.BoxView.preferenceChanged(BoxView.java:269)
	at javax.swing.text.View.preferenceChanged(View.java:272)
	at javax.swing.text.BoxView.preferenceChanged(BoxView.java:269)
	at javax.swing.text.View.preferenceChanged(View.java:272)
	at javax.swing.text.View.preferenceChanged(View.java:272)
	at javax.swing.text.GlyphView.removeUpdate(GlyphView.java:910)
	at javax.swing.text.html.InlineView.removeUpdate(InlineView.java:64)
	at javax.swing.text.View.forwardUpdateToView(View.java:1188)
	at javax.swing.text.FlowView$LogicalView.forwardUpdateToView(FlowView.java:778)
	at javax.swing.text.View.forwardUpdate(View.java:1161)
	at javax.swing.text.View.removeUpdate(View.java:726)
	at javax.swing.text.FlowView.removeUpdate(FlowView.java:252)
	at javax.swing.text.View.forwardUpdateToView(View.java:1188)
	at javax.swing.text.View.forwardUpdate(View.java:1161)
	at javax.swing.text.BoxView.forwardUpdate(BoxView.java:223)
	at javax.swing.text.View.removeUpdate(View.java:726)
	at javax.swing.text.View.forwardUpdateToView(View.java:1188)
	at javax.swing.text.View.forwardUpdate(View.java:1161)
	at javax.swing.text.BoxView.forwardUpdate(BoxView.java:223)
	at javax.swing.text.View.removeUpdate(View.java:726)
	at javax.swing.plaf.basic.BasicTextUI$RootView.removeUpdate(BasicTextUI.java:1604)
	at javax.swing.plaf.basic.BasicTextUI$UpdateHandler.removeUpdate(BasicTextUI.java:1864)
	at javax.swing.text.AbstractDocument.fireRemoveUpdate(AbstractDocument.java:243)
	at javax.swing.text.AbstractDocument.handleRemove(AbstractDocument.java:608)
	at javax.swing.text.AbstractDocument.remove(AbstractDocument.java:576)
	at javax.swing.JEditorPane.setText(JEditorPane.java:1495)
	at org.openstreetmap.josm.gui.GettingStarted$1$1.run(GettingStarted.java:109)
	at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:209)
	at java.awt.EventQueue.dispatchEvent(EventQueue.java:597)
	at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
	at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
	at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161)
	at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)

""AWT-Shutdown"" prio=10 tid=0x6eaef800 nid=0x2e3b in Object.wait() [0x6ebfe000]
   java.lang.Thread.State: WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	- waiting on <0x7423e1c8> (a java.lang.Object)
	at java.lang.Object.wait(Object.java:485)
	at sun.awt.AWTAutoShutdown.run(AWTAutoShutdown.java:259)
	- locked <0x7423e1c8> (a java.lang.Object)
	at java.lang.Thread.run(Thread.java:619)

""AWT-XAWT"" daemon prio=10 tid=0x6f234c00 nid=0x2e34 runnable [0x6f3ac000]
   java.lang.Thread.State: RUNNABLE
	at sun.awt.X11.XToolkit.waitForEvents(Native Method)
	at sun.awt.X11.XToolkit.run(XToolkit.java:548)
	at sun.awt.X11.XToolkit.run(XToolkit.java:523)
	at java.lang.Thread.run(Thread.java:619)

""Java2D Disposer"" daemon prio=10 tid=0x08a5a800 nid=0x2e33 in Object.wait() [0x6f42f000]
   java.lang.Thread.State: WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	- waiting on <0x743a1128> (a java.lang.ref.ReferenceQueue$Lock)
	at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:118)
	- locked <0x743a1128> (a java.lang.ref.ReferenceQueue$Lock)
	at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:134)
	at sun.java2d.Disposer.run(Disposer.java:125)
	at java.lang.Thread.run(Thread.java:619)

""Low Memory Detector"" daemon prio=10 tid=0x08992400 nid=0x2e31 runnable [0x00000000]
   java.lang.Thread.State: RUNNABLE

""CompilerThread1"" daemon prio=10 tid=0x08990800 nid=0x2e30 waiting on condition [0x00000000]
   java.lang.Thread.State: RUNNABLE

""CompilerThread0"" daemon prio=10 tid=0x0898d800 nid=0x2e2f waiting on condition [0x00000000]
   java.lang.Thread.State: RUNNABLE

""Signal Dispatcher"" daemon prio=10 tid=0x0898c000 nid=0x2e2e waiting on condition [0x00000000]
   java.lang.Thread.State: RUNNABLE

""Finalizer"" daemon prio=10 tid=0x0897bc00 nid=0x2e2d in Object.wait() [0x6f9f8000]
   java.lang.Thread.State: WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	- waiting on <0x742e9b60> (a java.lang.ref.ReferenceQueue$Lock)
	at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:118)
	- locked <0x742e9b60> (a java.lang.ref.ReferenceQueue$Lock)
	at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:134)
	at java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:159)

""Reference Handler"" daemon prio=10 tid=0x08977400 nid=0x2e2c in Object.wait() [0x6fa49000]
   java.lang.Thread.State: WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	- waiting on <0x742e9b20> (a java.lang.ref.Reference$Lock)
	at java.lang.Object.wait(Object.java:485)
	at java.lang.ref.Reference$ReferenceHandler.run(Reference.java:116)
	- locked <0x742e9b20> (a java.lang.ref.Reference$Lock)

""main"" prio=10 tid=0x088f7000 nid=0x2e28 in Object.wait() [0xb732f000]
   java.lang.Thread.State: WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	- waiting on <0x742e3070> (a javax.swing.text.html.HTMLDocument)
	at java.lang.Object.wait(Object.java:485)
	at javax.swing.text.AbstractDocument.readLock(AbstractDocument.java:1372)
	- locked <0x742e3070> (a javax.swing.text.html.HTMLDocument)
	at javax.swing.plaf.basic.BasicTextUI.getPreferredSize(BasicTextUI.java:896)
	at javax.swing.JComponent.getPreferredSize(JComponent.java:1634)
	at javax.swing.JEditorPane.getPreferredSize(JEditorPane.java:1414)
	at javax.swing.ScrollPaneLayout.layoutContainer(ScrollPaneLayout.java:769)
	at java.awt.Container.layout(Container.java:1421)
	at java.awt.Container.doLayout(Container.java:1410)
	at java.awt.Container.validateTree(Container.java:1507)
	at java.awt.Container.validateTree(Container.java:1513)
	at java.awt.Container.validateTree(Container.java:1513)
	at java.awt.Container.validateTree(Container.java:1513)
	at java.awt.Container.validateTree(Container.java:1513)
	at java.awt.Container.validateTree(Container.java:1513)
	at java.awt.Container.validateTree(Container.java:1513)
	at java.awt.Container.validate(Container.java:1480)
	- locked <0x742804a8> (a java.awt.Component$AWTTreeLock)
	at java.awt.Window.show(Window.java:860)
	at java.awt.Component.show(Component.java:1563)
	at java.awt.Component.setVisible(Component.java:1515)
	at java.awt.Window.setVisible(Window.java:841)
	at org.openstreetmap.josm.gui.MainApplication.main(MainApplication.java:152)

""VM Thread"" prio=10 tid=0x08973400 nid=0x2e2b runnable 

""GC task thread#0 (ParallelGC)"" prio=10 tid=0x088fd800 nid=0x2e29 runnable 

""GC task thread#1 (ParallelGC)"" prio=10 tid=0x088ff000 nid=0x2e2a runnable 

""VM Periodic Task Thread"" prio=10 tid=0x08994400 nid=0x2e32 waiting on condition 

JNI global references: 3063

Heap
 PSYoungGen      total 16576K, used 3253K [0xacfe0000, 0xae7c0000, 0xb41a0000)
  eden space 15104K, 12% used [0xacfe0000,0xad1b7558,0xadea0000)
  from space 1472K, 92% used [0xadea0000,0xadff6048,0xae010000)
  to   space 1600K, 0% used [0xae630000,0xae630000,0xae7c0000)
 PSOldGen        total 9216K, used 6293K [0x741a0000, 0x74aa0000, 0xacfe0000)
  object space 9216K, 68% used [0x741a0000,0x747c54d0,0x74aa0000)
 PSPermGen       total 22528K, used 13095K [0x701a0000, 0x717a0000, 0x741a0000)
  object space 22528K, 58% used [0x701a0000,0x70e69cb8,0x717a0000)

2009-10-17 13:47:37
Full thread dump Java HotSpot(TM) Server VM (14.2-b01 mixed mode):

""RemoteControl HTTP Server"" daemon prio=10 tid=0x6e76d400 nid=0x2e3d runnable [0x6effe000]
   java.lang.Thread.State: RUNNABLE
	at java.net.PlainSocketImpl.socketAccept(Native Method)
	at java.net.PlainSocketImpl.accept(PlainSocketImpl.java:390)
	- locked <0xadee2f58> (a java.net.SocksSocketImpl)
	at java.net.ServerSocket.implAccept(ServerSocket.java:453)
	at java.net.ServerSocket.accept(ServerSocket.java:421)
	at org.openstreetmap.josm.plugins.remotecontrol.HttpServer.run(HttpServer.java:51)

""AWT-EventQueue-0"" prio=10 tid=0x6ea90800 nid=0x2e3c waiting for monitor entry [0x6efad000]
   java.lang.Thread.State: BLOCKED (on object monitor)
	at java.awt.Component.invalidate(Component.java:2768)
	- waiting to lock <0x742804a8> (a java.awt.Component$AWTTreeLock)
	at java.awt.Container.invalidate(Container.java:1446)
	at javax.swing.JComponent.revalidate(JComponent.java:4789)
	at javax.swing.plaf.basic.BasicTextUI$RootView.preferenceChanged(BasicTextUI.java:1394)
	at javax.swing.text.View.preferenceChanged(View.java:272)
	at javax.swing.text.BoxView.preferenceChanged(BoxView.java:269)
	at javax.swing.text.View.preferenceChanged(View.java:272)
	at javax.swing.text.BoxView.preferenceChanged(BoxView.java:269)
	at javax.swing.text.View.preferenceChanged(View.java:272)
	at javax.swing.text.BoxView.preferenceChanged(BoxView.java:269)
	at javax.swing.text.View.preferenceChanged(View.java:272)
	at javax.swing.text.View.preferenceChanged(View.java:272)
	at javax.swing.text.GlyphView.removeUpdate(GlyphView.java:910)
	at javax.swing.text.html.InlineView.removeUpdate(InlineView.java:64)
	at javax.swing.text.View.forwardUpdateToView(View.java:1188)
	at javax.swing.text.FlowView$LogicalView.forwardUpdateToView(FlowView.java:778)
	at javax.swing.text.View.forwardUpdate(View.java:1161)
	at javax.swing.text.View.removeUpdate(View.java:726)
	at javax.swing.text.FlowView.removeUpdate(FlowView.java:252)
	at javax.swing.text.View.forwardUpdateToView(View.java:1188)
	at javax.swing.text.View.forwardUpdate(View.java:1161)
	at javax.swing.text.BoxView.forwardUpdate(BoxView.java:223)
	at javax.swing.text.View.removeUpdate(View.java:726)
	at javax.swing.text.View.forwardUpdateToView(View.java:1188)
	at javax.swing.text.View.forwardUpdate(View.java:1161)
	at javax.swing.text.BoxView.forwardUpdate(BoxView.java:223)
	at javax.swing.text.View.removeUpdate(View.java:726)
	at javax.swing.plaf.basic.BasicTextUI$RootView.removeUpdate(BasicTextUI.java:1604)
	at javax.swing.plaf.basic.BasicTextUI$UpdateHandler.removeUpdate(BasicTextUI.java:1864)
	at javax.swing.text.AbstractDocument.fireRemoveUpdate(AbstractDocument.java:243)
	at javax.swing.text.AbstractDocument.handleRemove(AbstractDocument.java:608)
	at javax.swing.text.AbstractDocument.remove(AbstractDocument.java:576)
	at javax.swing.JEditorPane.setText(JEditorPane.java:1495)
	at org.openstreetmap.josm.gui.GettingStarted$1$1.run(GettingStarted.java:109)
	at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:209)
	at java.awt.EventQueue.dispatchEvent(EventQueue.java:597)
	at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
	at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
	at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161)
	at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)

""AWT-Shutdown"" prio=10 tid=0x6eaef800 nid=0x2e3b in Object.wait() [0x6ebfe000]
   java.lang.Thread.State: WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	- waiting on <0x7423e1c8> (a java.lang.Object)
	at java.lang.Object.wait(Object.java:485)
	at sun.awt.AWTAutoShutdown.run(AWTAutoShutdown.java:259)
	- locked <0x7423e1c8> (a java.lang.Object)
	at java.lang.Thread.run(Thread.java:619)

""AWT-XAWT"" daemon prio=10 tid=0x6f234c00 nid=0x2e34 runnable [0x6f3ac000]
   java.lang.Thread.State: RUNNABLE
	at sun.awt.X11.XToolkit.waitForEvents(Native Method)
	at sun.awt.X11.XToolkit.run(XToolkit.java:548)
	at sun.awt.X11.XToolkit.run(XToolkit.java:523)
	at java.lang.Thread.run(Thread.java:619)

""Java2D Disposer"" daemon prio=10 tid=0x08a5a800 nid=0x2e33 in Object.wait() [0x6f42f000]
   java.lang.Thread.State: WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	- waiting on <0x743a1128> (a java.lang.ref.ReferenceQueue$Lock)
	at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:118)
	- locked <0x743a1128> (a java.lang.ref.ReferenceQueue$Lock)
	at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:134)
	at sun.java2d.Disposer.run(Disposer.java:125)
	at java.lang.Thread.run(Thread.java:619)

""Low Memory Detector"" daemon prio=10 tid=0x08992400 nid=0x2e31 runnable [0x00000000]
   java.lang.Thread.State: RUNNABLE

""CompilerThread1"" daemon prio=10 tid=0x08990800 nid=0x2e30 waiting on condition [0x00000000]
   java.lang.Thread.State: RUNNABLE

""CompilerThread0"" daemon prio=10 tid=0x0898d800 nid=0x2e2f waiting on condition [0x00000000]
   java.lang.Thread.State: RUNNABLE

""Signal Dispatcher"" daemon prio=10 tid=0x0898c000 nid=0x2e2e waiting on condition [0x00000000]
   java.lang.Thread.State: RUNNABLE

""Finalizer"" daemon prio=10 tid=0x0897bc00 nid=0x2e2d in Object.wait() [0x6f9f8000]
   java.lang.Thread.State: WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	- waiting on <0x742e9b60> (a java.lang.ref.ReferenceQueue$Lock)
	at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:118)
	- locked <0x742e9b60> (a java.lang.ref.ReferenceQueue$Lock)
	at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:134)
	at java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:159)

""Reference Handler"" daemon prio=10 tid=0x08977400 nid=0x2e2c in Object.wait() [0x6fa49000]
   java.lang.Thread.State: WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	- waiting on <0x742e9b20> (a java.lang.ref.Reference$Lock)
	at java.lang.Object.wait(Object.java:485)
	at java.lang.ref.Reference$ReferenceHandler.run(Reference.java:116)
	- locked <0x742e9b20> (a java.lang.ref.Reference$Lock)

""main"" prio=10 tid=0x088f7000 nid=0x2e28 in Object.wait() [0xb732f000]
   java.lang.Thread.State: WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	- waiting on <0x742e3070> (a javax.swing.text.html.HTMLDocument)
	at java.lang.Object.wait(Object.java:485)
	at javax.swing.text.AbstractDocument.readLock(AbstractDocument.java:1372)
	- locked <0x742e3070> (a javax.swing.text.html.HTMLDocument)
	at javax.swing.plaf.basic.BasicTextUI.getPreferredSize(BasicTextUI.java:896)
	at javax.swing.JComponent.getPreferredSize(JComponent.java:1634)
	at javax.swing.JEditorPane.getPreferredSize(JEditorPane.java:1414)
	at javax.swing.ScrollPaneLayout.layoutContainer(ScrollPaneLayout.java:769)
	at java.awt.Container.layout(Container.java:1421)
	at java.awt.Container.doLayout(Container.java:1410)
	at java.awt.Container.validateTree(Container.java:1507)
	at java.awt.Container.validateTree(Container.java:1513)
	at java.awt.Container.validateTree(Container.java:1513)
	at java.awt.Container.validateTree(Container.java:1513)
	at java.awt.Container.validateTree(Container.java:1513)
	at java.awt.Container.validateTree(Container.java:1513)
	at java.awt.Container.validateTree(Container.java:1513)
	at java.awt.Container.validate(Container.java:1480)
	- locked <0x742804a8> (a java.awt.Component$AWTTreeLock)
	at java.awt.Window.show(Window.java:860)
	at java.awt.Component.show(Component.java:1563)
	at java.awt.Component.setVisible(Component.java:1515)
	at java.awt.Window.setVisible(Window.java:841)
	at org.openstreetmap.josm.gui.MainApplication.main(MainApplication.java:152)

""VM Thread"" prio=10 tid=0x08973400 nid=0x2e2b runnable 

""GC task thread#0 (ParallelGC)"" prio=10 tid=0x088fd800 nid=0x2e29 runnable 

""GC task thread#1 (ParallelGC)"" prio=10 tid=0x088ff000 nid=0x2e2a runnable 

""VM Periodic Task Thread"" prio=10 tid=0x08994400 nid=0x2e32 waiting on condition 

JNI global references: 3063

Heap
 PSYoungGen      total 16576K, used 3253K [0xacfe0000, 0xae7c0000, 0xb41a0000)
  eden space 15104K, 12% used [0xacfe0000,0xad1b7558,0xadea0000)
  from space 1472K, 92% used [0xadea0000,0xadff6048,0xae010000)
  to   space 1600K, 0% used [0xae630000,0xae630000,0xae7c0000)
 PSOldGen        total 9216K, used 6293K [0x741a0000, 0x74aa0000, 0xacfe0000)
  object space 9216K, 68% used [0x741a0000,0x747c54d0,0x74aa0000)
 PSPermGen       total 22528K, used 13095K [0x701a0000, 0x717a0000, 0x741a0000)
  object space 22528K, 58% used [0x701a0000,0x70e69cb8,0x717a0000)
}}}

JOSM is hanging on futex()

{{{
$ sudo strace -p 11815
Process 11815 attached - interrupt to quit
futex(0xb7330bd8, FUTEX_WAIT, 11816, NULL
}}}"	defect	closed	major		Core	latest	worksforme		
