Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.
Bug 339156 - test builds hang for a long time
Summary: test builds hang for a long time
Status: RESOLVED FIXED
Alias: None
Product: MPC
Classification: Technology
Component: Install (show other bugs)
Version: unspecified   Edit
Hardware: PC Linux
: P3 normal (vote)
Target Milestone: 1.1   Edit
Assignee: Benjamin Muskalla CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2011-03-07 21:59 EST by Steffen Pingel CLA
Modified: 2011-04-21 12:34 EDT (History)
0 users

See Also:


Attachments
patch (1.58 KB, patch)
2011-04-20 15:50 EDT, Benjamin Muskalla CLA
no flags Details | Diff
mylyn/context/zip (43.65 KB, application/octet-stream)
2011-04-20 15:50 EDT, Benjamin Muskalla CLA
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Steffen Pingel CLA 2011-03-07 21:59:56 EST
Do a "mvn clean install" and the build can stall for a looooong time after tests finish executing:

"Worker-0" prio=10 tid=0x000000004268b800 nid=0x45a2 in Object.wait() [0x00007fd670ad5000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
        at java.lang.Object.wait(Native Method)
        - waiting on <0x00000000fcaed0d8> (a java.io.PipedInputStream)
        at java.io.PipedInputStream.awaitSpace(PipedInputStream.java:257)
        at java.io.PipedInputStream.receive(PipedInputStream.java:215)
        - locked <0x00000000fcaed0d8> (a java.io.PipedInputStream)
        at java.io.PipedOutputStream.write(PipedOutputStream.java:132)
        at org.eclipse.ecf.provider.filetransfer.retrieve.AbstractRetrieveFileTransfer.handleReceivedData(AbstractRetrieveFileTransfer.java:284)
        - locked <0x00000000fcaedd98> (a org.eclipse.ecf.provider.filetransfer.httpclient.HttpClientRetrieveFileTransfer)
        at org.eclipse.ecf.provider.filetransfer.retrieve.AbstractRetrieveFileTransfer$1.performFileTransfer(AbstractRetrieveFileTransfer.java:173)
        at org.eclipse.ecf.filetransfer.FileTransferJob.run(FileTransferJob.java:74)
        at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54)


"main" prio=10 tid=0x000000004128d800 nid=0x453a waiting for monitor entry [0x00007fd677388000]
   java.lang.Thread.State: BLOCKED (on object monitor)
        at org.eclipse.ecf.provider.filetransfer.httpclient.HttpClientRetrieveFileTransfer.cancel(HttpClientRetrieveFileTransfer.java:346)
        - waiting to lock <0x00000000fcaedd98> (a org.eclipse.ecf.provider.filetransfer.httpclient.HttpClientRetrieveFileTransfer)
        at org.eclipse.ecf.filetransfer.FileTransferJob.canceling(FileTransferJob.java:81)
        at org.eclipse.core.internal.jobs.JobManager.cancel(JobManager.java:320)
        at org.eclipse.core.internal.jobs.JobManager.doShutdown(JobManager.java:567)
        at org.eclipse.core.internal.jobs.JobManager.shutdown(JobManager.java:252)
        at org.eclipse.core.internal.jobs.JobActivator.stop(JobActivator.java:55)
        at org.eclipse.osgi.framework.internal.core.BundleContextImpl$2.run(BundleContextImpl.java:771)
        at java.security.AccessController.doPrivileged(Native Method)
        at org.eclipse.osgi.framework.internal.core.BundleContextImpl.stop(BundleContextImpl.java:764)
        at org.eclipse.osgi.framework.internal.core.BundleHost.stopWorker(BundleHost.java:509)
        at org.eclipse.osgi.framework.internal.core.AbstractBundle.suspend(AbstractBundle.java:566)
        at org.eclipse.osgi.framework.internal.core.Framework.suspendBundle(Framework.java:1160)
        at org.eclipse.osgi.framework.internal.core.StartLevelManager.decFWSL(StartLevelManager.java:595)
        at org.eclipse.osgi.framework.internal.core.StartLevelManager.doSetStartLevel(StartLevelManager.java:257)
        - locked <0x00000000f05a6ac8> (a java.lang.Object)
        at org.eclipse.osgi.framework.internal.core.StartLevelManager.shutdown(StartLevelManager.java:215)
        at org.eclipse.osgi.framework.internal.core.InternalSystemBundle.suspend(InternalSystemBundle.java:284)
        at org.eclipse.osgi.framework.internal.core.Framework.shutdown(Framework.java:690)
        - locked <0x00000000f0493728> (a org.eclipse.osgi.framework.internal.core.Framework)
        at org.eclipse.osgi.framework.internal.core.Framework.close(Framework.java:597)
        - locked <0x00000000f0493728> (a org.eclipse.osgi.framework.internal.core.Framework)
        at org.eclipse.core.runtime.adaptor.EclipseStarter.shutdown(EclipseStarter.java:390)
        at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:198)
        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)
Comment 1 Steffen Pingel CLA 2011-03-16 14:14:01 EDT
Benjamin, have you had a chance to look into this? It hangs the release build every time.
Comment 2 Benjamin Muskalla CLA 2011-03-16 17:19:17 EDT
I'm able to reproduce it but didn't had a chance/idea yet how to fix.
Comment 3 Benjamin Muskalla CLA 2011-04-20 15:50:44 EDT
Created attachment 193749 [details]
patch

Forgotten stream :)

Steffen, I suggest to add findbugs for the the tests bundle too.
Comment 4 Benjamin Muskalla CLA 2011-04-20 15:50:47 EDT
Created attachment 193750 [details]
mylyn/context/zip
Comment 5 Steffen Pingel CLA 2011-04-20 16:34:47 EDT
Interesting. The problems with tests is that FindBugs tends to yield a large number of false positives but certainly makes sense in this case.
Comment 6 Benjamin Muskalla CLA 2011-04-20 18:50:44 EDT
Pushed to master, build time reduced by 50%. Still wondering why the build takes ~15mins compared to 4mins on my local machine. Steffen, is the eclipse.org hudson always that slow or do you still see opportunities for improvement?
Comment 7 Steffen Pingel CLA 2011-04-20 19:52:36 EDT
According to https://hudson.eclipse.org/hudson/job/epp-mpc-e3.6/32/  the last build took 2min? The release build signs bundles and such which takes a bit longer.
Comment 8 Benjamin Muskalla CLA 2011-04-21 12:34:29 EDT
Yes, makes sense. Watched the build time of the release job as it runs the tests.
Think we're good here!