Community
Participate
Working Groups
Created attachment 276286 [details] JUnit log from jdt.debug gerrit build 457. A gerrit job for bug 540132 aborted due to a timeout, see build https://ci.eclipse.org/jdt/job/eclipse.jdt.debug-Gerrit/457/ and attached logs. Neither the job log nor the Eclipse Error Log contain any stack traces. If e.g. a deadlock occurred, we have no way of knowing what exactly deadlocked. It would be great if all test projects (or as many as possible) can re-use code from the releng test runner org.eclipse.test.EclipseTestRunner, or at least do similar reporting of stack traces on timeout. It would also be nice to know when exactly EclipseTestRunner is used and for which test projects. Is it used for gerrit jobs at all, or only for integration builds?
Created attachment 276287 [details] Job log for jdt.debug gerrit build 457.
I can't help wondering if JDT's HIPP instance is being affected by one of the other users of hipp6. CDT used to share with OpenJ9 and our build times went up dramatically. Some build steps having long freezes in unusual places,and lots of builds would timeout - I could never identify exact cause but since OpenJ9 and JDT started sharing a lot more build instabilities seem to happen and CDT has been very stable again.
Hi Alexander, hi Mickael, I notice that e.g. JDT debug tests during integration builds run with the test applications in platform.releng (org.eclipse.test.uitestapplication). So the runner is EclipseTestRunner, which will report stack traces after a timeout occurs. The gerrit jobs for JDT debug (and most other test projects I checked) run with tycho surefire (the application is org.eclipse.tycho.surefire.osgibooter.uitest). I do see the following timeout parameter, which I assume is used: https://www.eclipse.org/tycho/sitedocs/tycho-surefire/tycho-surefire-plugin/test-mojo.html#forkedProcessTimeoutInSeconds However I find no information about stack trace dumps on timeout, such dumps are neither present nor do I find a tycho surefire parameter to enable them. Any ideas here? It would be great if the tycho test runner can dump stack traces similarly to the releng test runner. A sporadic hang in gerrit jobs is otherwise very difficult to understand. Best regards and thanks, Simeon
(In reply to Simeon Andreev from comment #3) > I notice that e.g. JDT debug tests during integration builds run with the > test applications in platform.releng (org.eclipse.test.uitestapplication). > So the runner is EclipseTestRunner, which will report stack traces after a > timeout occurs. That could be something to improve in the EclipseTestRunner and Tycho could pass a flag to enable it if it's not done by default. > However I find no information about stack trace dumps on timeout, such dumps > are neither present nor do I find a tycho surefire parameter to enable them. > Any ideas here? It would be great if the tycho test runner can dump stack > traces similarly to the releng test runner. A sporadic hang in gerrit jobs > is otherwise very difficult to understand. I don't think there is anything providing this at the moment. That's a feature request for Tycho (that should probably require also this addition to EclipseTestRunner).
(In reply to Mickael Istria from comment #4) > (In reply to Simeon Andreev from comment #3) > > I notice that e.g. JDT debug tests during integration builds run with the > > test applications in platform.releng (org.eclipse.test.uitestapplication). > > So the runner is EclipseTestRunner, which will report stack traces after a > > timeout occurs. > > That could be something to improve in the EclipseTestRunner and Tycho could > pass a flag to enable it if it's not done by default. I.e. the EclipseTestRunner is running with the Tycho application? The integration builds are passing the parameter: -timeout 7200000 This enables the dump. Would it be possible to add this with a value that is a bit lower than the Tycho surefire timeout?
(In reply to Simeon Andreev from comment #5) > I.e. the EclipseTestRunner is running with the Tycho application? The > integration builds are passing the parameter: -timeout 7200000 I'm not sure and cannot look at the code right now. I suggest you simply add the -DdebugPort=8000 to those tests and connect debugger to the application and see what's involved in the execution and timeout. Such an addition to dump stacks on timeout would be welcome in Tycho. Please open an enhancemnt request and consider submitting a patch (this part of Tycho isn't too hard to modify).
New Gerrit change created: https://git.eclipse.org/r/133787
I've debugged the test execution, unfortunately EclipseTestRunner is not used e.g. for jdt.debug.tests. So simply specifying -timeout will not be enough. I've created a change which copies the stack tracing dumping code from EclipseTestRunner to the Tycho test applications, see https://git.eclipse.org/r/#/c/133787/.
New Gerrit change created: https://git.eclipse.org/r/133831
New Gerrit change created: https://git.eclipse.org/r/133835
Gerrit change https://git.eclipse.org/r/133831 was merged to [master]. Commit: http://git.eclipse.org/c/platform/eclipse.platform.ui.git/commit/?id=cdcc79741db0732abcb522a44b33c590276344b1
New Gerrit change created: https://git.eclipse.org/r/134000
Gerrit change https://git.eclipse.org/r/134000 was merged to [master]. Commit: http://git.eclipse.org/c/platform/eclipse.platform.ui.git/commit/?id=c92282fa8011cd5399fbd4247e9cfe70279b9323
Any thing pending on this bug? Can this bug be resolved?
Please reopen if more work needs to be done here.
Still waiting for Tycho changes: https://git.eclipse.org/r/#/c/133787/
Tycho is a separate project from Platform. The current bug is attached to Platform project, the patch about Tycho should be tracked in another ticket.
The Tycho change should be moved to the Tycho bug.
Sorry, our changes just crossed.
Opened bug 544704.
(In reply to Simeon Andreev from comment #20) > Opened bug 544704. Isn't that already covered by bug 542876?
(In reply to Dani Megert from comment #21) > (In reply to Simeon Andreev from comment #20) > > Opened bug 544704. > Isn't that already covered by bug 542876? Sorry, didn't notice the link at all.
Gerrit change https://git.eclipse.org/r/133835 was merged to [master]. Commit: http://git.eclipse.org/c/platform/eclipse.platform.releng.git/commit/?id=8826465a27e42b05c961924b2907dde69882ed3b