misto/Sourcecloud

Analysis stuck (never finishes)

Opened this issue · 5 comments

I ran the latest Sourcecloud on a Java project but it seems to get stuck a the end. The "Progress Information" dialog shows "Analyzing..." and the progress bar is at 100% but it doesn't finish. There is no CPU load. I'll try to attach a thread dump.

2012-03-08 09:49:32
Full thread dump Java HotSpot(TM) Server VM (20.4-b02 mixed mode):

"RMI TCP Connection(2)-10.43.4.80" daemon prio=6 tid=0x528e5000 nid=0xfc8 in Object.wait() [0x56d9f000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
    at java.lang.Object.wait(Native Method)
    at com.sun.jmx.remote.internal.ArrayNotificationBuffer.fetchNotifications(ArrayNotificationBuffer.java:417)
    - locked <0x42e42410> (a com.sun.jmx.remote.internal.ArrayNotificationBuffer)
    at com.sun.jmx.remote.internal.ArrayNotificationBuffer$ShareBuffer.fetchNotifications(ArrayNotificationBuffer.java:209)
    at com.sun.jmx.remote.internal.ServerNotifForwarder.fetchNotifs(ServerNotifForwarder.java:258)
    at javax.management.remote.rmi.RMIConnectionImpl$2.run(RMIConnectionImpl.java:1227)
    at javax.management.remote.rmi.RMIConnectionImpl$2.run(RMIConnectionImpl.java:1225)
    at javax.management.remote.rmi.RMIConnectionImpl.fetchNotifications(RMIConnectionImpl.java:1231)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:303)
    at sun.rmi.transport.Transport$1.run(Transport.java:159)
    at java.security.AccessController.doPrivileged(Native Method)
    at sun.rmi.transport.Transport.serviceCall(Transport.java:155)
    at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:535)
    at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:790)
    at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:649)
    at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
    at java.lang.Thread.run(Thread.java:662)

   Locked ownable synchronizers:
    - <0x42b2c020> (a java.util.concurrent.locks.ReentrantLock$NonfairSync)

"JMX server connection timeout 109" daemon prio=6 tid=0x528e5c00 nid=0xfb8 in Object.wait() [0x56d7f000]
   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(ServerCommunicatorAdmin.java:150)
    - locked <0x42c0dc88> (a [I)
    at java.lang.Thread.run(Thread.java:662)

   Locked ownable synchronizers:
    - None

"RMI Scheduler(0)" daemon prio=6 tid=0x528e6400 nid=0xdf4 waiting on condition [0x56d5f000]
   java.lang.Thread.State: TIMED_WAITING (parking)
    at sun.misc.Unsafe.park(Native Method)
    - parking to wait for  <0x428983a0> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
    at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:196)
    at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2025)
    at java.util.concurrent.DelayQueue.take(DelayQueue.java:164)
    at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:609)
    at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:602)
    at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:947)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:907)
    at java.lang.Thread.run(Thread.java:662)

   Locked ownable synchronizers:
    - None

"RMI TCP Connection(1)-10.43.4.80" daemon prio=6 tid=0x528e5800 nid=0x1750 runnable [0x56d3f000]
   java.lang.Thread.State: RUNNABLE
    at java.net.SocketInputStream.socketRead0(Native Method)
    at java.net.SocketInputStream.read(SocketInputStream.java:129)
    at java.io.BufferedInputStream.fill(BufferedInputStream.java:218)
    at java.io.BufferedInputStream.read(BufferedInputStream.java:237)
    - locked <0x42bc6ff0> (a java.io.BufferedInputStream)
    at java.io.FilterInputStream.read(FilterInputStream.java:66)
    at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:517)
    at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:790)
    at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:649)
    at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
    at java.lang.Thread.run(Thread.java:662)

   Locked ownable synchronizers:
    - <0x42b2a380> (a java.util.concurrent.locks.ReentrantLock$NonfairSync)

"RMI TCP Accept-0" daemon prio=6 tid=0x528e4400 nid=0x1248 runnable [0x56d1f000]
   java.lang.Thread.State: RUNNABLE
    at java.net.PlainSocketImpl.socketAccept(Native Method)
    at java.net.PlainSocketImpl.accept(PlainSocketImpl.java:408)
    - locked <0x428a6df8> (a java.net.SocksSocketImpl)
    at java.net.ServerSocket.implAccept(ServerSocket.java:462)
    at java.net.ServerSocket.accept(ServerSocket.java:430)
    at sun.management.jmxremote.LocalRMIServerSocketFactory$1.accept(LocalRMIServerSocketFactory.java:34)
    at sun.rmi.transport.tcp.TCPTransport$AcceptLoop.executeAcceptLoop(TCPTransport.java:369)
    at sun.rmi.transport.tcp.TCPTransport$AcceptLoop.run(TCPTransport.java:341)
    at java.lang.Thread.run(Thread.java:662)

   Locked ownable synchronizers:
    - None

"Worker-16" prio=6 tid=0x528e3c00 nid=0x160c in Object.wait() [0x556bf000]
   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 <0x27fd1a20> (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:50)

   Locked ownable synchronizers:
    - None

"Worker-15" prio=6 tid=0x528e6800 nid=0x11b8 in Object.wait() [0x5545f000]
   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 <0x27fd1a20> (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:50)

   Locked ownable synchronizers:
    - None

"[ThreadPool Manager] - Idle Thread" daemon prio=6 tid=0x5397d800 nid=0x5dc in Object.wait() [0x5975f000]
   java.lang.Thread.State: WAITING (on object monitor)
    at java.lang.Object.wait(Native Method)
    at java.lang.Object.wait(Object.java:485)
    at org.eclipse.equinox.internal.util.impl.tpt.threadpool.Executor.run(Executor.java:106)
    - locked <0x2bd6fdf8> (a org.eclipse.equinox.internal.util.impl.tpt.threadpool.Executor)

   Locked ownable synchronizers:
    - None

"SVN Kit 1.2 Connector" prio=6 tid=0x5397d000 nid=0xf48 in Object.wait() [0x58adf000]
   java.lang.Thread.State: WAITING (on object monitor)
    at java.lang.Object.wait(Native Method)
    at java.lang.Object.wait(Object.java:485)
    at org.polarion.team.svn.connector.svnkit.SVNKitConnector$ProgressMonitorThread.run(SVNKitConnector.java:1617)
    - locked <0x2c0db418> (a java.util.ArrayList)

   Locked ownable synchronizers:
    - None

"Thread-7" daemon prio=6 tid=0x5397cc00 nid=0x9b8 in Object.wait() [0x58abf000]
   java.lang.Thread.State: WAITING (on object monitor)
    at java.lang.Object.wait(Native Method)
    at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:118)
    - locked <0x2c1e6990> (a java.lang.ref.ReferenceQueue$Lock)
    at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:134)
    at org.tmatesoft.svn.core.javahl.SVNClientImplTracker.run(SVNClientImplTracker.java:65)
    at java.lang.Thread.run(Thread.java:662)

   Locked ownable synchronizers:
    - None

"DLTK indexing" daemon prio=4 tid=0x528e8400 nid=0x1474 in Object.wait() [0x58a1f000]
   java.lang.Thread.State: WAITING (on object monitor)
    at java.lang.Object.wait(Native Method)
    at java.lang.Object.wait(Object.java:485)
    at org.eclipse.dltk.internal.core.search.processing.JobManager.run(JobManager.java:445)
    - locked <0x2b693b78> (a org.eclipse.dltk.core.search.indexing.IndexManager)
    at java.lang.Thread.run(Thread.java:662)

   Locked ownable synchronizers:
    - None

"JRebel License Expiration Notification Checker" prio=6 tid=0x528e7c00 nid=0x1440 waiting on condition [0x589ff000]
   java.lang.Thread.State: TIMED_WAITING (sleeping)
    at java.lang.Thread.sleep(Native Method)
    at org.zeroturnaround.eclipse.notifications.AbstractDailyWatcher.run(AbstractDailyWatcher.java:29)
    at java.lang.Thread.run(Thread.java:662)

   Locked ownable synchronizers:
    - None

"JRebel Statistics Watcher" prio=6 tid=0x528e7400 nid=0x2ec waiting on condition [0x589df000]
   java.lang.Thread.State: TIMED_WAITING (sleeping)
    at java.lang.Thread.sleep(Native Method)
    at org.zeroturnaround.eclipse.notifications.RebelStatsFileWatcher.run(RebelStatsFileWatcher.java:43)
    at java.lang.Thread.run(Thread.java:662)

   Locked ownable synchronizers:
    - None

"JRebel Configuration Notification Checker" prio=6 tid=0x528e7000 nid=0x17f8 waiting on condition [0x589bf000]
   java.lang.Thread.State: TIMED_WAITING (sleeping)
    at java.lang.Thread.sleep(Native Method)
    at org.zeroturnaround.eclipse.notifications.AbstractDailyWatcher.run(AbstractDailyWatcher.java:29)
    at java.lang.Thread.run(Thread.java:662)

   Locked ownable synchronizers:
    - None

"Worker-5" prio=6 tid=0x528e4800 nid=0x143c in Object.wait() [0x56acf000]
   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 <0x27fd1a20> (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:50)

   Locked ownable synchronizers:
    - None

"Java indexing" daemon prio=4 tid=0x528e3000 nid=0x1630 in Object.wait() [0x56fbf000]
   java.lang.Thread.State: WAITING (on object monitor)
    at java.lang.Object.wait(Native Method)
    - waiting on <0x27febc98> (a org.eclipse.jdt.internal.core.search.indexing.IndexManager)
    at java.lang.Object.wait(Object.java:485)
    at org.eclipse.jdt.internal.core.search.processing.JobManager.run(JobManager.java:382)
    - locked <0x27febc98> (a org.eclipse.jdt.internal.core.search.indexing.IndexManager)
    at java.lang.Thread.run(Thread.java:662)

   Locked ownable synchronizers:
    - None

"org.eclipse.jface.text.reconciler.MonoReconciler" daemon prio=2 tid=0x528e2c00 nid=0xbec in Object.wait() [0x56e8f000]
   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 <0x2621d730> (a org.eclipse.jface.text.reconciler.DirtyRegionQueue)

   Locked ownable synchronizers:
    - None

"Bundle File Closer" daemon prio=6 tid=0x528e2400 nid=0x13ac in Object.wait() [0x56e0f000]
   java.lang.Thread.State: WAITING (on object monitor)
    at java.lang.Object.wait(Native Method)
    at java.lang.Object.wait(Object.java:485)
    at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.getNextEvent(EventManager.java:400)
    - locked <0x265ec050> (a org.eclipse.osgi.framework.eventmgr.EventManager$EventThread)
    at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:336)

   Locked ownable synchronizers:
    - None

"Worker-JM" prio=6 tid=0x53d8b400 nid=0x1128 in Object.wait() [0x5353f000]
   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:58)
    - locked <0x25944268> (a java.util.ArrayList)

   Locked ownable synchronizers:
    - None

"[Timer] - Main Queue Handler" daemon prio=6 tid=0x53a19000 nid=0x1438 in Object.wait() [0x5351f000]
   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 <0x2551e278> (a java.lang.Object)
    at java.lang.Thread.run(Thread.java:662)

   Locked ownable synchronizers:
    - None

"Framework Event Dispatcher" daemon prio=6 tid=0x53b21c00 nid=0x1174 in Object.wait() [0x534df000]
   java.lang.Thread.State: WAITING (on object monitor)
    at java.lang.Object.wait(Native Method)
    at java.lang.Object.wait(Object.java:485)
    at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.getNextEvent(EventManager.java:400)
    - locked <0x25944398> (a org.eclipse.osgi.framework.eventmgr.EventManager$EventThread)
    at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:336)

   Locked ownable synchronizers:
    - None

"Start Level Event Dispatcher" daemon prio=6 tid=0x53924000 nid=0x1160 in Object.wait() [0x5346f000]
   java.lang.Thread.State: WAITING (on object monitor)
    at java.lang.Object.wait(Native Method)
    - waiting on <0x2548c130> (a org.eclipse.osgi.framework.eventmgr.EventManager$EventThread)
    at java.lang.Object.wait(Object.java:485)
    at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.getNextEvent(EventManager.java:400)
    - locked <0x2548c130> (a org.eclipse.osgi.framework.eventmgr.EventManager$EventThread)
    at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:336)

   Locked ownable synchronizers:
    - None

"State Data Manager" daemon prio=6 tid=0x52e31c00 nid=0xbf8 waiting on condition [0x5344f000]
   java.lang.Thread.State: TIMED_WAITING (sleeping)
    at java.lang.Thread.sleep(Native Method)
    at org.eclipse.osgi.internal.baseadaptor.StateManager.run(StateManager.java:297)
    at java.lang.Thread.run(Thread.java:662)

   Locked ownable synchronizers:
    - None

"Framework Active Thread" prio=6 tid=0x53cca800 nid=0xcdc in Object.wait() [0x533df000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
    at java.lang.Object.wait(Native Method)
    at org.eclipse.osgi.framework.internal.core.Framework.run(Framework.java:1863)
    - locked <0x28011fd0> (a org.eclipse.osgi.framework.internal.core.Framework)
    at java.lang.Thread.run(Thread.java:662)

   Locked ownable synchronizers:
    - None

"Low Memory Detector" daemon prio=6 tid=0x012ff000 nid=0x12b8 runnable [0x00000000]
   java.lang.Thread.State: RUNNABLE

   Locked ownable synchronizers:
    - None

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

   Locked ownable synchronizers:
    - None

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

   Locked ownable synchronizers:
    - None

"Attach Listener" daemon prio=10 tid=0x012ee800 nid=0x10a8 waiting on condition [0x00000000]
   java.lang.Thread.State: RUNNABLE

   Locked ownable synchronizers:
    - None

"Signal Dispatcher" daemon prio=10 tid=0x012edc00 nid=0x1754 runnable [0x00000000]
   java.lang.Thread.State: RUNNABLE

   Locked ownable synchronizers:
    - None

"Finalizer" daemon prio=8 tid=0x012c5000 nid=0x179c in Object.wait() [0x003df000]
   java.lang.Thread.State: WAITING (on object monitor)
    at java.lang.Object.wait(Native Method)
    at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:118)
    - locked <0x265f22f8> (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)

   Locked ownable synchronizers:
    - None

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

   Locked ownable synchronizers:
    - None

"main" prio=6 tid=0x015ba000 nid=0x16bc runnable [0x001ff000]
   java.lang.Thread.State: RUNNABLE
    at org.eclipse.swt.internal.win32.OS.WaitMessage(Native Method)
    at org.eclipse.swt.widgets.Display.sleep(Display.java:4652)
    at org.eclipse.ui.application.WorkbenchAdvisor.eventLoopIdle(WorkbenchAdvisor.java:364)
    at org.eclipse.ui.internal.ide.application.IDEWorkbenchAdvisor.eventLoopIdle(IDEWorkbenchAdvisor.java:917)
    at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2702)
    at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2665)
    at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2499)
    at org.eclipse.ui.internal.Workbench$7.run(Workbench.java:679)
    at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
    at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:668)
    at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
    at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:124)
    at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
    at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110)
    at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79)
    at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:352)
    at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:622)
    at org.eclipse.equinox.launcher.Main.basicRun(Main.java:577)
    at org.eclipse.equinox.launcher.Main.run(Main.java:1410)
    at org.eclipse.equinox.launcher.Main.main(Main.java:1386)

   Locked ownable synchronizers:
    - None

"VM Thread" prio=10 tid=0x012ba000 nid=0x1204 runnable 

"GC task thread#0 (ParallelGC)" prio=6 tid=0x01214000 nid=0xa64 runnable 

"GC task thread#1 (ParallelGC)" prio=6 tid=0x01215400 nid=0x1330 runnable 

"VM Periodic Task Thread" prio=10 tid=0x528fd000 nid=0xb34 waiting on condition 

JNI global references: 2094


Just read your email now.

Which version of Eclipse are you using? Dump would be helpful.

--AA

On Mar 8, 2012, at 12:54 AM, Philippe Marschall wrote:

I ran the latest Sourcecloud on a Java project but it seems to get stuck a the end. The "Progress Information" dialog shows "Analyzing..." and the progress bar is at 100% but it doesn't finish. There is no CPU load. I'll try to attach a thread dump.


Reply to this email directly or view it on GitHub:
#1

It was a 3.8 milestone M4/5/6, don't remember anymore which one. The stack dump is attached above. I figured a heap dump would not be helpful.

I have a heap dump with it going out of memory on a medium sized project due to a huge thread local containing a lot of non-sense strings. That is 765 MB though. I can upload it if you have some place to put it.

Thank you!

That's, err, huge indeed :)

Maybe easier to just ping you when we have a new version, we're working on it anyway and lots will change.

--AA

On Apr 6, 2012, at 7:09 AM, Philippe Marschall wrote:

It was a 3.8 milestone M4/5/6, don't remember anymore which one. The stack dump is attached above. I figured a heap dump would not be helpful.

I have a heap dump with it going out of memory on a medium sized project due to a huge thread local containing a lot of non-sense strings. That is 765 MB though. I can upload it if you have some place to put it.


Reply to this email directly or view it on GitHub:
#1 (comment)

Sure, ping we when you have a new version out and I'll give it another try.