You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@harmony.apache.org by Gregory Shimansky <gs...@gmail.com> on 2007/09/25 15:08:31 UTC

Re: [jira] Updated: (HARMONY-4823) [jdktools][jdwp] 2 jdtdebug tests fail with similar messages in EUT 3.2

Hello

Yesterday I've created a patch that fixes a bug in JDWP agent. The agent 
didn't handle StepRequest command when there is no line number 
information in the method to step. JDWP spec states [1] that in this 
case StepRequest has to work in the MIN mode (stepping on every 
bytecode). The patch makes it possible, so in case currentLine == -1, it 
would fire out the event every time.

I would like to commit this fix for M3 because there may be quite a lot 
of cases when java classes lack line number information, bug people 
would still want debugging to work correctly.

[1] 
http://java.sun.com/j2se/1.5.0/docs/guide/jpda/jdwp/jdwp-protocol.html#JDWP_StepSize

Gregory Shimansky (JIRA) wrote:
>      [ https://issues.apache.org/jira/browse/HARMONY-4823?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
> 
> Gregory Shimansky updated HARMONY-4823:
> ---------------------------------------
> 
>     Attachment: HARMONY-4823.patch
> 
> Actually I think that one of the checks in my patch is redundant. I attach a shorter versions. It seems to be working ok.
> 
>> [jdktools][jdwp] 2 jdtdebug tests fail with similar messages in EUT 3.2
>> -----------------------------------------------------------------------
>>
>>                 Key: HARMONY-4823
>>                 URL: https://issues.apache.org/jira/browse/HARMONY-4823
>>             Project: Harmony
>>          Issue Type: Bug
>>          Components: JDK
>>         Environment: All
>>            Reporter: Ilya Berezhniuk
>>            Assignee: Gregory Shimansky
>>         Attachments: HARMONY-4823.patch, HARMONY-4823.patch, StepIntoSelectionClass.java
>>
>>
>> When massive failures with 'did not suspend' error (HARMONY-4631) do not occur, 2 tests fail in EUT 3.2 jdt debug suite with following close error messages:
>> ------------------------------------------
>> org.eclipse.jdt.debug.tests.core.StepIntoSelectionTests.testStepIntoBinaryMethod
>> Should be in method 'addElement' expected:<addElement> but was:<step>
>> junit.framework.ComparisonFailure: Should be in method 'addElement' expected:<addElement> but was:<step>
>>     at org.eclipse.jdt.debug.tests.core.StepIntoSelectionTests.testStepIntoBinaryMethod(StepIntoSelectionTests.java:174)
>>     at java.lang.reflect.VMReflection.invokeMethod(Native Method)
>>     at org.eclipse.jdt.debug.tests.DebugSuite$1.run(DebugSuite.java:53)
>>     at java.lang.Thread.run(Unknown Source)
>> ------------------------------------------
>> org.eclipse.jdt.debug.tests.core.StepIntoSelectionTests.testStepIntoBinaryConstructor
>> Should be in constructor expected:<<init>> but was:<step>
>> junit.framework.ComparisonFailure: Should be in constructor expected:<<init>> but was:<step>
>>     at org.eclipse.jdt.debug.tests.core.StepIntoSelectionTests.testStepIntoBinaryConstructor(StepIntoSelectionTests.java:209)
>>     at java.lang.reflect.VMReflection.invokeMethod(Native Method)
>>     at org.eclipse.jdt.debug.tests.DebugSuite$1.run(DebugSuite.java:53)
>>     at java.lang.Thread.run(Unknown Source)
>> ------------------------------------------
>> Looks like it can be a regression in JVMTI stepping algorithm.
>> To reproduce failures:
>> 1) Use Harmony JDK from http://people.apache.org/builds/harmony/snapshots/r576550/apache-harmony-jdk-r576550-windows-x86-32-snapshot.zip
>> 2) Download http://mirrors.nsa.co.il/eclipse/eclipse/downloads/drops/R-3.2-200606291905/eclipse-Automated-Tests-3.2.zip
>> 3) To run with script or command line, use instructions in eclipse-testing/readme.html from eclipse-Automated-Tests-3.2.zip archive
>> 4) To run from Eclipse GUI follow the instruction in http://wiki.apache.org/harmony/Eclipse_Unit_Tests_Pass_on_DRLVM#How_to_run_EUT_individual
> 


-- 
Gregory


Re: [jira] Updated: (HARMONY-4823) [jdktools][jdwp] 2 jdtdebug tests fail with similar messages in EUT 3.2

Posted by Alexei Zakharov <al...@gmail.com>.
I don't really think there are many people who use Harmony for
debugging Java class files  without line information currently. So IMO
this patch can hardly break out stability. +1 for the commit.

Regards,
Alexei

2007/9/25, Gregory Shimansky <gs...@gmail.com>:
> Hello
>
> Yesterday I've created a patch that fixes a bug in JDWP agent. The agent
> didn't handle StepRequest command when there is no line number
> information in the method to step. JDWP spec states [1] that in this
> case StepRequest has to work in the MIN mode (stepping on every
> bytecode). The patch makes it possible, so in case currentLine == -1, it
> would fire out the event every time.
>
> I would like to commit this fix for M3 because there may be quite a lot
> of cases when java classes lack line number information, bug people
> would still want debugging to work correctly.
>
> [1]
> http://java.sun.com/j2se/1.5.0/docs/guide/jpda/jdwp/jdwp-protocol.html#JDWP_StepSize
>
> Gregory Shimansky (JIRA) wrote:
> >      [ https://issues.apache.org/jira/browse/HARMONY-4823?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
> >
> > Gregory Shimansky updated HARMONY-4823:
> > ---------------------------------------
> >
> >     Attachment: HARMONY-4823.patch
> >
> > Actually I think that one of the checks in my patch is redundant. I attach a shorter versions. It seems to be working ok.
> >
> >> [jdktools][jdwp] 2 jdtdebug tests fail with similar messages in EUT 3.2
> >> -----------------------------------------------------------------------
> >>
> >>                 Key: HARMONY-4823
> >>                 URL: https://issues.apache.org/jira/browse/HARMONY-4823
> >>             Project: Harmony
> >>          Issue Type: Bug
> >>          Components: JDK
> >>         Environment: All
> >>            Reporter: Ilya Berezhniuk
> >>            Assignee: Gregory Shimansky
> >>         Attachments: HARMONY-4823.patch, HARMONY-4823.patch, StepIntoSelectionClass.java
> >>
> >>
> >> When massive failures with 'did not suspend' error (HARMONY-4631) do not occur, 2 tests fail in EUT 3.2 jdt debug suite with following close error messages:
> >> ------------------------------------------
> >> org.eclipse.jdt.debug.tests.core.StepIntoSelectionTests.testStepIntoBinaryMethod
> >> Should be in method 'addElement' expected:<addElement> but was:<step>
> >> junit.framework.ComparisonFailure: Should be in method 'addElement' expected:<addElement> but was:<step>
> >>     at org.eclipse.jdt.debug.tests.core.StepIntoSelectionTests.testStepIntoBinaryMethod(StepIntoSelectionTests.java:174)
> >>     at java.lang.reflect.VMReflection.invokeMethod(Native Method)
> >>     at org.eclipse.jdt.debug.tests.DebugSuite$1.run(DebugSuite.java:53)
> >>     at java.lang.Thread.run(Unknown Source)
> >> ------------------------------------------
> >> org.eclipse.jdt.debug.tests.core.StepIntoSelectionTests.testStepIntoBinaryConstructor
> >> Should be in constructor expected:<<init>> but was:<step>
> >> junit.framework.ComparisonFailure: Should be in constructor expected:<<init>> but was:<step>
> >>     at org.eclipse.jdt.debug.tests.core.StepIntoSelectionTests.testStepIntoBinaryConstructor(StepIntoSelectionTests.java:209)
> >>     at java.lang.reflect.VMReflection.invokeMethod(Native Method)
> >>     at org.eclipse.jdt.debug.tests.DebugSuite$1.run(DebugSuite.java:53)
> >>     at java.lang.Thread.run(Unknown Source)
> >> ------------------------------------------
> >> Looks like it can be a regression in JVMTI stepping algorithm.
> >> To reproduce failures:
> >> 1) Use Harmony JDK from http://people.apache.org/builds/harmony/snapshots/r576550/apache-harmony-jdk-r576550-windows-x86-32-snapshot.zip
> >> 2) Download http://mirrors.nsa.co.il/eclipse/eclipse/downloads/drops/R-3.2-200606291905/eclipse-Automated-Tests-3.2.zip
> >> 3) To run with script or command line, use instructions in eclipse-testing/readme.html from eclipse-Automated-Tests-3.2.zip archive
> >> 4) To run from Eclipse GUI follow the instruction in http://wiki.apache.org/harmony/Eclipse_Unit_Tests_Pass_on_DRLVM#How_to_run_EUT_individual
> >