Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.

Bug 366493

Summary: SteppingTests.testStepOverAntCallSepVM fails on Mac
Product: [Eclipse Project] Platform Reporter: Dani Megert <daniel_megert>
Component: AntAssignee: Satyam Kandula <satyam.kandula>
Status: RESOLVED FIXED QA Contact:
Severity: normal    
Priority: P3 CC: Michael_Rennie
Version: 3.7.1Flags: Michael_Rennie: review+
Target Milestone: 3.7.2   
Hardware: PC   
OS: Mac OS X - Carbon (unsup.)   
Whiteboard:
Attachments:
Description Flags
Patch for master none

Comment 1 Satyam Kandula CLA 2012-01-03 06:32:49 EST
I couldn't reproduce the problem on a Mac machine. The test passed in the subsequent build http://download.eclipse.org/eclipse/downloads/drops/M20111214-1406/testresults/html/org.eclipse.ant.tests.ui_macosx.cocoa.x86_5.0.html. 

There were some 'Program did not suspend' problems as in bug 294321, but the call stack is slightly different. bug 294321 takes care of the problem during launch. This seems to be happening during stepover. 
Mike, Do you think the problems are similar?
#########
junit.framework.AssertionFailedError: Program did not suspend.
at org.eclipse.ant.tests.ui.debug.AbstractAntDebugTest.stepOver(AbstractAntDebugTest.java:582)
at org.eclipse.ant.tests.ui.debug.SteppingTests.debugFrame(SteppingTests.java:141)
at org.eclipse.ant.tests.ui.debug.SteppingTests.debugStack(SteppingTests.java:123)
at org.eclipse.ant.tests.ui.debug.SteppingTests.testStepOverAntCallPastOtherAntCallsSepVm(SteppingTests.java:90)
at org.eclipse.ant.tests.ui.AbstractAntUIBuildTest.access$0(AbstractAntUIBuildTest.java:1)
at org.eclipse.ant.tests.ui.AbstractAntUIBuildTest$1.run(AbstractAntUIBuildTest.java:44)
at java.lang.Thread.run(Thread.java:680)
#########
Comment 2 Michael Rennie CLA 2012-01-04 15:37:44 EST
(In reply to comment #1)
 
> Mike, Do you think the problems are similar?

I reads as similar, the problem with all of the "program did not suspend" failures is that they are timing sensitive - by that I mean if a step / suspend / etc takes too long to respond the debugger times out, which causes these kinds of failures. 

The best way we found to alleviate these kinds of failures is to use the TestAgainException (from the JDT debug tests), which is thrown if a debugger test times out. The failing test is run again a set number of times to double check if it is really a failing tests or a timing issue.
Comment 3 Satyam Kandula CLA 2012-01-05 21:58:33 EST
Created attachment 209116 [details]
Patch for master

Used TestAgainException as per Michael's comments in comment 2. 
Mike, Please review.
Comment 4 Michael Rennie CLA 2012-01-10 12:24:08 EST
Tested the patch in master: +1 and pushed to http://git.eclipse.org/c/platform/eclipse.platform.git/commit/?id=b2694a05a04919831e643d14e3d2e9b68d280994
Comment 5 Michael Rennie CLA 2012-01-10 14:20:00 EST
Tested patch in 3.7.2: +1

Pushed changes to R3_7_maintenance: http://git.eclipse.org/c/platform/eclipse.platform.git/commit/?h=R3_7_maintenance&id=ab8f331125f4bbe1bb06a5fa637a1d4dd7024a10

Also updated bundle versions.