You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@harmony.apache.org by Wayne Beaton <wa...@eclipse.org> on 2007/04/19 15:32:01 UTC

Harmony+Eclipse and Scrapbook Pages

Greetings folks. I've been testing Harmony (April 18) with Eclipse 3.2.2.
Almost everything I've tried seems to just work (including the Eclipse
platform UI test suite). I finally managed to run into a problem with
Scrapbook pages. When I try to evaluate anything on a scrapbook page, I get
this message "Evaluation failed: internal error - unable to obtain an
execution context." There's nothing in the log.

Has this problem been encountered yet? I didn't see any discussion of it in
the mailing list archives or in JIRA. I did start to try and sort out the
problem (I assume that it has something to do with the communication between
JVMs), but debugging Eclipse in Harmony is pretty slow and after a couple of
crashes, I decided I'd see if anybody else had a track on this problem
before I spend any more cycles trying to sort it out.

FWIW, I've been testing Eclipse 3.2.2 and Web Tools 1.5.2 deploying against
Tomcat 5.5.9, all of it running quite flawlessly on Harmony. That is, until
I try and debug. I assume that the performance degradation of debug mode is
known and will be addressed at some point. Let me know if I am in error and
should dig into the cause of this.

Thanks,

Wayne
--
Wayne Beaton
The Eclipse Foundation
wayne.beaton@eclipse.org
Skype, YIM: waynebeaton
http://www.eclipse.org
http://wbeaton.blogspot.com/
http://www.planeteclipse.org/planet/


Re: Harmony+Eclipse and Scrapbook Pages

Posted by Ivan Popov <iv...@gmail.com>.
> Ah, I see.  I agree that this is unlikely the situation here, but it is
> worth opening a JIRA for that one.

There is already HARMONY-2889 submitted for this problem. I hope to
fix it in near future, but It's considered of low priority.

Thanks.
Ivan

On 4/20/07, Tim Ellison <t....@gmail.com> wrote:
> Ivan Popov wrote:
> > No, it does not hit the same breakpoint again.
> >
> > Actually, if we hit a breakpoint and then do step over, it will work
> > as expected and application will be suspended on the step event.
>
> That is what I would expect.  I didn't see the step event (STEP_END)
> being notified in the tracing I put in, but maybe I'm missing something.
>  I'll keep playing.
>
> > The difference is when we try to step to a line where breakpoint is
> > set. In this case application will be stopped on step event first. If
> > we step once more, then application will be stopped on breakpoint
> > event at the same line. And if we step again, application will be
> > stopped on step event at the next line.
> >
> > This differs from other JRE, but I don't think it caused those
> > problems with Scrapbook.
>
> Ah, I see.  I agree that this is unlikely the situation here, but it is
> worth opening a JIRA for that one.
>
> Regards,
> Tim
>

Re: Harmony+Eclipse and Scrapbook Pages

Posted by Tim Ellison <t....@gmail.com>.
Ivan Popov wrote:
> No, it does not hit the same breakpoint again.
> 
> Actually, if we hit a breakpoint and then do step over, it will work
> as expected and application will be suspended on the step event.

That is what I would expect.  I didn't see the step event (STEP_END)
being notified in the tracing I put in, but maybe I'm missing something.
 I'll keep playing.

> The difference is when we try to step to a line where breakpoint is
> set. In this case application will be stopped on step event first. If
> we step once more, then application will be stopped on breakpoint
> event at the same line. And if we step again, application will be
> stopped on step event at the next line.
> 
> This differs from other JRE, but I don't think it caused those
> problems with Scrapbook.

Ah, I see.  I agree that this is unlikely the situation here, but it is
worth opening a JIRA for that one.

Regards,
Tim

Re: Harmony+Eclipse and Scrapbook Pages

Posted by Ivan Popov <iv...@gmail.com>.
HARMONY-3730 is fixed and I checked that Eclipse Scrapbook now works
well with release build of Harmony JDK.

Debug build seems too slow for timeout hardcoded in Eclipse and it
still fails with error about inability to obtain execution context. I
think we can live with it.

Thanks.
Ivan

On 4/24/07, Ivan Popov <iv...@gmail.com> wrote:
> I submitted http://issues.apache.org/jira/browse/HARMONY-3730
>
> Thanks.
> Ivan
>
> On 4/23/07, Ivan Popov <iv...@gmail.com> wrote:
> > I've looked deeply at what happened in stepping over Scrapbook code,
> > and it seems that the problem is not in class loading due to JIT
> > algorithm, but because some JVMTI step events are not reported in JIT
> > mode.
> >
> > Scrapbook code attempts to load class in an infinite loop using URL
> > classloader. This classloader issues NoClassDefFoundError internally
> > while attempting to load class from several URLs, but it is never
> > exposed to the user code.
> >
> > The problem arises when this code is executed under debugger. After
> > application is stopped at breakpoint and debugger performs STEP OUT,
> > requested JVMTI step events are not reported until application goes to
> > a point where NoClassDefFoundError is thrown inside URLClassLoader
> > code and only here STEP event is generated and reported to Eclipse
> > debugger. It looks like Eclipse ignores such STEP event in unexpected
> > code and Scrapbook functionality fails.
> >
> > In -Xint mode JVMTI STEP events are not skipped and Harmony reports
> > STEP event at expected place and this works well with Eclipse.
> >
> > I'm going to file JIRA and provide simple test case to reproduce this problem.
> >
> > Thanks.
> > Ivan
> >
> >
> > On 4/23/07, Tim Ellison <t....@gmail.com> wrote:
> > > Mikhail Fursov wrote:
> > > > It proves that we have a bug here that can be fixed without lazy
> > > > resolution fixes. The only problem is to minimize the testcase.
> > >
> > > Let me know if I can be of any further help -- but it sounds like we
> > > need someone who understands the JITed stack walker, or other likely
> > > candidates for this bug.
> > >
> > > Running the snippet code in a simple test case passes ok for me, but it
> > > may not have been jitted.  What is the command-line option to force full
> > > optimized jitting eagerly?
> > >
> > > Regards,
> > > Tim
> > >
> >
>

Re: Harmony+Eclipse and Scrapbook Pages

Posted by Ivan Popov <iv...@gmail.com>.
I submitted http://issues.apache.org/jira/browse/HARMONY-3730

Thanks.
Ivan

On 4/23/07, Ivan Popov <iv...@gmail.com> wrote:
> I've looked deeply at what happened in stepping over Scrapbook code,
> and it seems that the problem is not in class loading due to JIT
> algorithm, but because some JVMTI step events are not reported in JIT
> mode.
>
> Scrapbook code attempts to load class in an infinite loop using URL
> classloader. This classloader issues NoClassDefFoundError internally
> while attempting to load class from several URLs, but it is never
> exposed to the user code.
>
> The problem arises when this code is executed under debugger. After
> application is stopped at breakpoint and debugger performs STEP OUT,
> requested JVMTI step events are not reported until application goes to
> a point where NoClassDefFoundError is thrown inside URLClassLoader
> code and only here STEP event is generated and reported to Eclipse
> debugger. It looks like Eclipse ignores such STEP event in unexpected
> code and Scrapbook functionality fails.
>
> In -Xint mode JVMTI STEP events are not skipped and Harmony reports
> STEP event at expected place and this works well with Eclipse.
>
> I'm going to file JIRA and provide simple test case to reproduce this problem.
>
> Thanks.
> Ivan
>
>
> On 4/23/07, Tim Ellison <t....@gmail.com> wrote:
> > Mikhail Fursov wrote:
> > > It proves that we have a bug here that can be fixed without lazy
> > > resolution fixes. The only problem is to minimize the testcase.
> >
> > Let me know if I can be of any further help -- but it sounds like we
> > need someone who understands the JITed stack walker, or other likely
> > candidates for this bug.
> >
> > Running the snippet code in a simple test case passes ok for me, but it
> > may not have been jitted.  What is the command-line option to force full
> > optimized jitting eagerly?
> >
> > Regards,
> > Tim
> >
>

Re: Harmony+Eclipse and Scrapbook Pages

Posted by Ivan Popov <iv...@gmail.com>.
I've looked deeply at what happened in stepping over Scrapbook code,
and it seems that the problem is not in class loading due to JIT
algorithm, but because some JVMTI step events are not reported in JIT
mode.

Scrapbook code attempts to load class in an infinite loop using URL
classloader. This classloader issues NoClassDefFoundError internally
while attempting to load class from several URLs, but it is never
exposed to the user code.

The problem arises when this code is executed under debugger. After
application is stopped at breakpoint and debugger performs STEP OUT,
requested JVMTI step events are not reported until application goes to
a point where NoClassDefFoundError is thrown inside URLClassLoader
code and only here STEP event is generated and reported to Eclipse
debugger. It looks like Eclipse ignores such STEP event in unexpected
code and Scrapbook functionality fails.

In -Xint mode JVMTI STEP events are not skipped and Harmony reports
STEP event at expected place and this works well with Eclipse.

I'm going to file JIRA and provide simple test case to reproduce this problem.

Thanks.
Ivan


On 4/23/07, Tim Ellison <t....@gmail.com> wrote:
> Mikhail Fursov wrote:
> > It proves that we have a bug here that can be fixed without lazy
> > resolution fixes. The only problem is to minimize the testcase.
>
> Let me know if I can be of any further help -- but it sounds like we
> need someone who understands the JITed stack walker, or other likely
> candidates for this bug.
>
> Running the snippet code in a simple test case passes ok for me, but it
> may not have been jitted.  What is the command-line option to force full
> optimized jitting eagerly?
>
> Regards,
> Tim
>

Re: Harmony+Eclipse and Scrapbook Pages

Posted by Eugene Ostrovsky <eu...@gmail.com>.
-Xem:opt
enables Jitrino.OPT which doesn't support jvmti debugging functions such as
breakpoints and single step. This functions work with interpreter and
Jitrino.JET.
By default harmonyVM started with jvmti agent (like any debuggee vm) uses
Jitrino.JET.

Re: Harmony+Eclipse and Scrapbook Pages

Posted by Egor Pasko <eg...@gmail.com>.
On the 0x2C0 day of Apache Harmony Tim Ellison wrote:
> Mikhail Fursov wrote:
> > It proves that we have a bug here that can be fixed without lazy
> > resolution fixes. The only problem is to minimize the testcase.
> 
> Let me know if I can be of any further help -- but it sounds like we
> need someone who understands the JITed stack walker, or other likely
> candidates for this bug.
> 
> Running the snippet code in a simple test case passes ok for me, but it
> may not have been jitted.  What is the command-line option to force full
> optimized jitting eagerly?

-Xem:opt

-- 
Egor Pasko


Re: Harmony+Eclipse and Scrapbook Pages

Posted by Tim Ellison <t....@gmail.com>.
Mikhail Fursov wrote:
> It proves that we have a bug here that can be fixed without lazy
> resolution fixes. The only problem is to minimize the testcase.

Let me know if I can be of any further help -- but it sounds like we
need someone who understands the JITed stack walker, or other likely
candidates for this bug.

Running the snippet code in a simple test case passes ok for me, but it
may not have been jitted.  What is the command-line option to force full
optimized jitting eagerly?

Regards,
Tim

Re: Harmony+Eclipse and Scrapbook Pages

Posted by Mikhail Fursov <mi...@gmail.com>.
It proves that we have a
bug here that can be fixed without lazy resolution fixes. The only
problem is to minimize the testcase.


On 4/21/07, Eugene Ostrovsky <eu...@gmail.com> wrote:
>
> Yes. jrockit-jdk1.5.0-windows-ia32 works fine.
>
> On 4/20/07, Mikhail Fursov <mi...@gmail.com> wrote:
> >
> > Yes, JIT mode and interpreter mode are different in class resolution
> > strategy.
> >
> > Here how it works:
> > With interpreter class resolution is initiated when the class is
> actually
> > needed: object of the class is created, a static field or a static
> > method is invoked. This is the same as SUN behaviour. (AFAIK they use
> > interpreter too)
> >
> > With JIT we have eager resolution today: all classes referred in a
> method
> > (and all inlined methods!) are resolved during compilation time. AFAIK
> BEA
> > works  this way too. At least, I can write tests that demonstrate it. If
> a
> > method has multiple references to a class and its resolution fails JIT
> > asks
> > again an again to resolve it. Moreover, if exception happened in
> > classloader
> > - it can be lost.
> >
> > Now I'm working on Lazy Resolution task and going to submit it to JIRA
> > right
> > after JavaOne is finished (there are a lot of changes and regressions
> are
> > possible). After it's done JIT will be able to work in either eager or
> > lazy
> > mode. And I hope most of the resolution related bugs will gone after it.
> >
> > BTW did you tried the same scenario with BEA?
> >
> >
> > On 4/21/07, Ivan Popov <iv...@gmail.com> wrote:
> > >
> > > Yes, in interpreter mode step works fine. I don't see second attempt
> > > to load class in classloader trace while step is performed.
> > >
> > > Is it possible that in JIT mode first invocation of a method of
> > > already loaded class may lead to compilation and attempt to load this
> > > class second time?
> > >
> > > Thanks.
> > > Ivan
> > >
> > > On 4/20/07, Eugene Ostrovsky <eu...@gmail.com> wrote:
> > > > BTW everything works fine with harmony VM in interpreter mode (-Xint
> > > option)
> > > >
> > > > On 4/20/07, Tim Ellison <t....@gmail.com> wrote:
> > > > >
> > > > > Ivan Popov wrote:
> > > > > > Thanks, Mikhail, It might be useful, but I dont know how to
> > specify
> > > > > > options for VM running Scrapbook code, it is started
> > automatically.
> > > > >
> > > > > Select the jpage page file and choose the properties option from
> the
> > > > > context menu (Alt+Enter), in there you can find a 'Scrapbook
> > Runtime'
> > > > > page where you can specify the VM and options etc it will use.
> > > > >
> > > > > Tim
> > > > >
> > > > >
> > > >
> > >
> >
> >
> >
> > --
> > Mikhail Fursov
> >
>



-- 
Mikhail Fursov

Re: Harmony+Eclipse and Scrapbook Pages

Posted by Eugene Ostrovsky <eu...@gmail.com>.
Yes. jrockit-jdk1.5.0-windows-ia32 works fine.

On 4/20/07, Mikhail Fursov <mi...@gmail.com> wrote:
>
> Yes, JIT mode and interpreter mode are different in class resolution
> strategy.
>
> Here how it works:
> With interpreter class resolution is initiated when the class is actually
> needed: object of the class is created, a static field or a static
> method is invoked. This is the same as SUN behaviour. (AFAIK they use
> interpreter too)
>
> With JIT we have eager resolution today: all classes referred in a method
> (and all inlined methods!) are resolved during compilation time. AFAIK BEA
> works  this way too. At least, I can write tests that demonstrate it. If a
> method has multiple references to a class and its resolution fails JIT
> asks
> again an again to resolve it. Moreover, if exception happened in
> classloader
> - it can be lost.
>
> Now I'm working on Lazy Resolution task and going to submit it to JIRA
> right
> after JavaOne is finished (there are a lot of changes and regressions are
> possible). After it's done JIT will be able to work in either eager or
> lazy
> mode. And I hope most of the resolution related bugs will gone after it.
>
> BTW did you tried the same scenario with BEA?
>
>
> On 4/21/07, Ivan Popov <iv...@gmail.com> wrote:
> >
> > Yes, in interpreter mode step works fine. I don't see second attempt
> > to load class in classloader trace while step is performed.
> >
> > Is it possible that in JIT mode first invocation of a method of
> > already loaded class may lead to compilation and attempt to load this
> > class second time?
> >
> > Thanks.
> > Ivan
> >
> > On 4/20/07, Eugene Ostrovsky <eu...@gmail.com> wrote:
> > > BTW everything works fine with harmony VM in interpreter mode (-Xint
> > option)
> > >
> > > On 4/20/07, Tim Ellison <t....@gmail.com> wrote:
> > > >
> > > > Ivan Popov wrote:
> > > > > Thanks, Mikhail, It might be useful, but I dont know how to
> specify
> > > > > options for VM running Scrapbook code, it is started
> automatically.
> > > >
> > > > Select the jpage page file and choose the properties option from the
> > > > context menu (Alt+Enter), in there you can find a 'Scrapbook
> Runtime'
> > > > page where you can specify the VM and options etc it will use.
> > > >
> > > > Tim
> > > >
> > > >
> > >
> >
>
>
>
> --
> Mikhail Fursov
>

Re: Harmony+Eclipse and Scrapbook Pages

Posted by Mikhail Fursov <mi...@gmail.com>.
Yes, JIT mode and interpreter mode are different in class resolution
strategy.

Here how it works:
With interpreter class resolution is initiated when the class is actually
needed: object of the class is created, a static field or a static
method is invoked. This is the same as SUN behaviour. (AFAIK they use
interpreter too)

With JIT we have eager resolution today: all classes referred in a method
(and all inlined methods!) are resolved during compilation time. AFAIK BEA
works  this way too. At least, I can write tests that demonstrate it. If a
method has multiple references to a class and its resolution fails JIT asks
again an again to resolve it. Moreover, if exception happened in classloader
- it can be lost.

Now I'm working on Lazy Resolution task and going to submit it to JIRA right
after JavaOne is finished (there are a lot of changes and regressions are
possible). After it's done JIT will be able to work in either eager or lazy
mode. And I hope most of the resolution related bugs will gone after it.

BTW did you tried the same scenario with BEA?


On 4/21/07, Ivan Popov <iv...@gmail.com> wrote:
>
> Yes, in interpreter mode step works fine. I don't see second attempt
> to load class in classloader trace while step is performed.
>
> Is it possible that in JIT mode first invocation of a method of
> already loaded class may lead to compilation and attempt to load this
> class second time?
>
> Thanks.
> Ivan
>
> On 4/20/07, Eugene Ostrovsky <eu...@gmail.com> wrote:
> > BTW everything works fine with harmony VM in interpreter mode (-Xint
> option)
> >
> > On 4/20/07, Tim Ellison <t....@gmail.com> wrote:
> > >
> > > Ivan Popov wrote:
> > > > Thanks, Mikhail, It might be useful, but I dont know how to specify
> > > > options for VM running Scrapbook code, it is started automatically.
> > >
> > > Select the jpage page file and choose the properties option from the
> > > context menu (Alt+Enter), in there you can find a 'Scrapbook Runtime'
> > > page where you can specify the VM and options etc it will use.
> > >
> > > Tim
> > >
> > >
> >
>



-- 
Mikhail Fursov

Re: Harmony+Eclipse and Scrapbook Pages

Posted by Ivan Popov <iv...@gmail.com>.
Yes, in interpreter mode step works fine. I don't see second attempt
to load class in classloader trace while step is performed.

Is it possible that in JIT mode first invocation of a method of
already loaded class may lead to compilation and attempt to load this
class second time?

Thanks.
Ivan

On 4/20/07, Eugene Ostrovsky <eu...@gmail.com> wrote:
> BTW everything works fine with harmony VM in interpreter mode (-Xint option)
>
> On 4/20/07, Tim Ellison <t....@gmail.com> wrote:
> >
> > Ivan Popov wrote:
> > > Thanks, Mikhail, It might be useful, but I dont know how to specify
> > > options for VM running Scrapbook code, it is started automatically.
> >
> > Select the jpage page file and choose the properties option from the
> > context menu (Alt+Enter), in there you can find a 'Scrapbook Runtime'
> > page where you can specify the VM and options etc it will use.
> >
> > Tim
> >
> >
>

Re: Harmony+Eclipse and Scrapbook Pages

Posted by Eugene Ostrovsky <eu...@gmail.com>.
BTW everything works fine with harmony VM in interpreter mode (-Xint option)

On 4/20/07, Tim Ellison <t....@gmail.com> wrote:
>
> Ivan Popov wrote:
> > Thanks, Mikhail, It might be useful, but I dont know how to specify
> > options for VM running Scrapbook code, it is started automatically.
>
> Select the jpage page file and choose the properties option from the
> context menu (Alt+Enter), in there you can find a 'Scrapbook Runtime'
> page where you can specify the VM and options etc it will use.
>
> Tim
>
>

Re: Harmony+Eclipse and Scrapbook Pages

Posted by Ivan Popov <iv...@gmail.com>.
Thanks, Tim. It definitely helps to investigate this problem. But I it
leads to the same problem with second loading of already loaded class.
I'd like if someone familiar with DRLVM classloading mechanism could
explain why this may happen, I have no ideas.

Thanks.
Ivan

On 4/20/07, Tim Ellison <t....@gmail.com> wrote:
> Ivan Popov wrote:
> > Thanks, Mikhail, It might be useful, but I dont know how to specify
> > options for VM running Scrapbook code, it is started automatically.
>
> Select the jpage page file and choose the properties option from the
> context menu (Alt+Enter), in there you can find a 'Scrapbook Runtime'
> page where you can specify the VM and options etc it will use.
>
> Tim
>
>

Re: Harmony+Eclipse and Scrapbook Pages

Posted by Tim Ellison <t....@gmail.com>.
Ivan Popov wrote:
> Thanks, Mikhail, It might be useful, but I dont know how to specify
> options for VM running Scrapbook code, it is started automatically.

Select the jpage page file and choose the properties option from the
context menu (Alt+Enter), in there you can find a 'Scrapbook Runtime'
page where you can specify the VM and options etc it will use.

Tim


Re: Harmony+Eclipse and Scrapbook Pages

Posted by Ivan Popov <iv...@gmail.com>.
Thanks, Mikhail, It might be useful, but I dont know how to specify
options for VM running Scrapbook code, it is started automatically.

But I was able to copy command line, launch it from command prompt,
attach with jdb and simulate the same process. I found out that
Harmony tries to load class ScrapbookMain1 second time after it was
successfully loaded and fails here with NoClassDefFoundError, which is
caught by debugger and reported to Eclipse in STEP event.

Below are details which shows difference between running this scenario
with Sun and Harmony VMs, and trace messages from Harmony classloader.
Anyone can explain why this happened?

Thanks.
Ivan

Running with Sun's VM (which works well with Eclipse Scrapbook):
---------------------------------------------------------------------------------------------------
Breakpoint hit: "thread=main",
org.eclipse.jdt.internal.debug.ui.snippeteditor.ScrapbookMain.nop(),
line=59 bci=0
main[1] where
  [1] org.eclipse.jdt.internal.debug.ui.snippeteditor.ScrapbookMain.nop
(ScrapbookMain.java:59)
  [2] sun.reflect.NativeMethodAccessorImpl.invoke0 (native method)
  [3] sun.reflect.NativeMethodAccessorImpl.invoke (null)
  [4] sun.reflect.DelegatingMethodAccessorImpl.invoke (null)
  [5] java.lang.reflect.Method.invoke (null)
  [6] org.eclipse.jdt.internal.debug.ui.snippeteditor.ScrapbookMain1.eval
(ScrapbookMain1.java:20)
  [7] sun.reflect.NativeMethodAccessorImpl.invoke0 (native method)
  [8] sun.reflect.NativeMethodAccessorImpl.invoke (null)
  [9] sun.reflect.DelegatingMethodAccessorImpl.invoke (null)
  [10] java.lang.reflect.Method.invoke (null)
  [11] org.eclipse.jdt.internal.debug.ui.snippeteditor.ScrapbookMain.evalLoop
(ScrapbookMain.java:54)
  [12] org.eclipse.jdt.internal.debug.ui.snippeteditor.ScrapbookMain.main
(ScrapbookMain.java:35)
main[1] step up
>
Step completed: "thread=main",
org.eclipse.jdt.internal.debug.ui.snippeteditor.ScrapbookMain1.eval(),
line=20 bci=20
main[1] where
  [1] org.eclipse.jdt.internal.debug.ui.snippeteditor.ScrapbookMain1.eval
(ScrapbookMain1.java:20)
  [2] sun.reflect.NativeMethodAccessorImpl.invoke0 (native method)
  [3] sun.reflect.NativeMethodAccessorImpl.invoke (null)
  [4] sun.reflect.DelegatingMethodAccessorImpl.invoke (null)
  [5] java.lang.reflect.Method.invoke (null)
  [6] org.eclipse.jdt.internal.debug.ui.snippeteditor.ScrapbookMain.evalLoop
(ScrapbookMain.java:54)
  [7] org.eclipse.jdt.internal.debug.ui.snippeteditor.ScrapbookMain.main
(ScrapbookMain.java:35)
---------------------------------------------------------------------------------------------------

Running the same with Harmony:
---------------------------------------------------------------------------------------------------
main[1] where
  [1] org.eclipse.jdt.internal.debug.ui.snippeteditor.ScrapbookMain.nop
(ScrapbookMain.java:59)
  [2] java.lang.reflect.VMReflection.invokeMethod (native method)
  [3] java.lang.reflect.Method.invoke (Method.java:381)
  [4] org.eclipse.jdt.internal.debug.ui.snippeteditor.ScrapbookMain1.eval
(ScrapbookMain1.java:20)
  [5] java.lang.reflect.VMReflection.invokeMethod (native method)
  [6] java.lang.reflect.Method.invoke (Method.java:381)
  [7] org.eclipse.jdt.internal.debug.ui.snippeteditor.ScrapbookMain.evalLoop
(ScrapbookMain.java:54)
  [8] org.eclipse.jdt.internal.debug.ui.snippeteditor.ScrapbookMain.main
(ScrapbookMain.java:35)
main[1] step up
>
Step completed: "thread=main",
java.lang.NoClassDefFoundError.<init>(), line=44 bci=0
main[1] where
  [1] java.lang.NoClassDefFoundError.<init> (NoClassDefFoundError.java:44)
  [2] java.lang.VMClassRegistry.loadBootstrapClass (native method)
  [3] java.lang.ClassLoader.loadClass (ClassLoader.java:546)
  [4] java.lang.ClassLoader.loadClass (ClassLoader.java:311)
  [5] org.eclipse.jdt.internal.debug.ui.snippeteditor.ScrapbookMain.evalLoop
(ScrapbookMain.java:52)
  [6] org.eclipse.jdt.internal.debug.ui.snippeteditor.ScrapbookMain.main
(ScrapbookMain.java:35)
main[1] locals
Method arguments:
detailMessage = "org/eclipse/jdt/internal/debug/ui/snippeteditor/ScrapbookMain1"
Local variables:
---------------------------------------------------------------------------------------------------

Messages from -Xtrace:classloader:
---------------------------------------------------------------------------------------------------
<...>
Defining class org/eclipse/jdt/internal/debug/ui/snippeteditor/ScrapbookMain1
with loader 0329A1C0
StartLoading class
org/eclipse/jdt/internal/debug/ui/snippeteditor/ScrapbookMain1 with
loader 0329A1C0
<...>
class org/eclipse/jdt/internal/debug/ui/snippeteditor/ScrapbookMain1 initialized
<... stepping ..>
StartLoading class java/lang/IllegalArgumentException with loader 0167E698
StartLoading class java/lang/InternalError with loader 0167E698
Loader (0167E698) find native function: java/lang/VMThreadManager.sleep(JI)I
StartLoading class [Ljava/security/ProtectionDomain; with loader 0167E698
Adding class loader 0329F9F0 (java/net/URLClassLoader@116BDBC4 :
java/net/URLClassLoader)
StartLoading class
org/eclipse/jdt/internal/debug/ui/snippeteditor/ScrapbookMain1 with
loader 0167E698
0167E698 016ABDB8 I
org/eclipse/jdt/internal/debug/ui/snippeteditor/ScrapbookMain1
Loader (0167E698) loading class:
org/eclipse/jdt/internal/debug/ui/snippeteditor/ScrapbookMain1...
StartLoading class java/lang/NoClassDefFoundError with loader 0167E698
<...>
---------------------------------------------------------------------------------------------------

Re: Harmony+Eclipse and Scrapbook Pages

Posted by Mikhail Fursov <mi...@gmail.com>.
In debug build you can use -Xtrace:classloader VM option.

On 4/20/07, Ivan Popov <iv...@gmail.com> wrote:
>
> I traced debug events sent from Harmony to Eclipse and see that it
> sends both BREAKPOINT and STEP events. However, the first STEP event
> is generated for method java.lang.NoClassDefFoundError.<init>. It
> seems that Eclipse ignores such STEP event, resumes execution and hits
> breakpoint again.
>
> I think the problem is that Harmony cannot find particular class while
> execution code generated for Scrapbook snippet. Is it possible to look
> at the generated code to understand what is the problem with class
> loading?
>
> Thanks.
> Ivan
>
> On 4/20/07, Ivan Popov <iv...@gmail.com> wrote:
> > I reproduced this problem and I'm investigating now what events are
> > generated by Harmony in this case.
> >
> > Ivan.
> >
> > On 4/20/07, Tim Ellison <t....@gmail.com> wrote:
> > > Ivan Popov wrote:
> > > > This differs from other JRE, but I don't think it caused those
> > > > problems with Scrapbook.
> > >
> > > Both are hitting the breakpoint, then when stepping over, the IBM/Sun
> > > VMs seem to be producing:
> > >
> > > DebugEvent[..., RESUME, STEP_RETURN]
> > > DebugEvent[..., SUSPEND, STEP_END]
> > >
> > > On DRLVM I see the STEP_RETURN but I don't see the STEP_END event,
> which
> > > is described in the Eclipse code as "Indicates a thread was suspended
> > > due to the completion of a step action"
> > >
> > > Eclipse is looking for that STEP_END event.
> > >
> > > Tim
> > >
> >
>



-- 
Mikhail Fursov

Re: Harmony+Eclipse and Scrapbook Pages

Posted by Tim Ellison <t....@gmail.com>.
Ivan Popov wrote:
> I traced debug events sent from Harmony to Eclipse and see that it
> sends both BREAKPOINT and STEP events. However, the first STEP event
> is generated for method java.lang.NoClassDefFoundError.<init>. It
> seems that Eclipse ignores such STEP event, resumes execution and hits
> breakpoint again.

Hmm, ok, I didn't see that but maybe I'm not tracing at the right points.

> I think the problem is that Harmony cannot find particular class while
> execution code generated for Scrapbook snippet. Is it possible to look
> at the generated code to understand what is the problem with class
> loading?

I don't think it is getting as far as trying to evaluate the snippet
code yet.  If you look at JavaSnippetEditor#evaluate(String snippet) the
error is raised (on line 630) before the attempt to evaluate the snippet
expression (on line 636).

We are still in the set-up phase of getting the thread context.

Regards,
Tim

Re: Harmony+Eclipse and Scrapbook Pages

Posted by Ivan Popov <iv...@gmail.com>.
I traced debug events sent from Harmony to Eclipse and see that it
sends both BREAKPOINT and STEP events. However, the first STEP event
is generated for method java.lang.NoClassDefFoundError.<init>. It
seems that Eclipse ignores such STEP event, resumes execution and hits
breakpoint again.

I think the problem is that Harmony cannot find particular class while
execution code generated for Scrapbook snippet. Is it possible to look
at the generated code to understand what is the problem with class
loading?

Thanks.
Ivan

On 4/20/07, Ivan Popov <iv...@gmail.com> wrote:
> I reproduced this problem and I'm investigating now what events are
> generated by Harmony in this case.
>
> Ivan.
>
> On 4/20/07, Tim Ellison <t....@gmail.com> wrote:
> > Ivan Popov wrote:
> > > This differs from other JRE, but I don't think it caused those
> > > problems with Scrapbook.
> >
> > Both are hitting the breakpoint, then when stepping over, the IBM/Sun
> > VMs seem to be producing:
> >
> > DebugEvent[..., RESUME, STEP_RETURN]
> > DebugEvent[..., SUSPEND, STEP_END]
> >
> > On DRLVM I see the STEP_RETURN but I don't see the STEP_END event, which
> > is described in the Eclipse code as "Indicates a thread was suspended
> > due to the completion of a step action"
> >
> > Eclipse is looking for that STEP_END event.
> >
> > Tim
> >
>

Re: Harmony+Eclipse and Scrapbook Pages

Posted by Ivan Popov <iv...@gmail.com>.
I reproduced this problem and I'm investigating now what events are
generated by Harmony in this case.

Ivan.

On 4/20/07, Tim Ellison <t....@gmail.com> wrote:
> Ivan Popov wrote:
> > This differs from other JRE, but I don't think it caused those
> > problems with Scrapbook.
>
> Both are hitting the breakpoint, then when stepping over, the IBM/Sun
> VMs seem to be producing:
>
> DebugEvent[..., RESUME, STEP_RETURN]
> DebugEvent[..., SUSPEND, STEP_END]
>
> On DRLVM I see the STEP_RETURN but I don't see the STEP_END event, which
> is described in the Eclipse code as "Indicates a thread was suspended
> due to the completion of a step action"
>
> Eclipse is looking for that STEP_END event.
>
> Tim
>

Re: Harmony+Eclipse and Scrapbook Pages

Posted by Tim Ellison <t....@gmail.com>.
Ivan Popov wrote:
> This differs from other JRE, but I don't think it caused those
> problems with Scrapbook.

Both are hitting the breakpoint, then when stepping over, the IBM/Sun
VMs seem to be producing:

DebugEvent[..., RESUME, STEP_RETURN]
DebugEvent[..., SUSPEND, STEP_END]

On DRLVM I see the STEP_RETURN but I don't see the STEP_END event, which
is described in the Eclipse code as "Indicates a thread was suspended
due to the completion of a step action"

Eclipse is looking for that STEP_END event.

Tim

Re: Harmony+Eclipse and Scrapbook Pages

Posted by Ivan Popov <iv...@gmail.com>.
No, it does not hit the same breakpoint again.

Actually, if we hit a breakpoint and then do step over, it will work
as expected and application will be suspended on the step event.

The difference is when we try to step to a line where breakpoint is
set. In this case application will be stopped on step event first. If
we step once more, then application will be stopped on breakpoint
event at the same line. And if we step again, application will be
stopped on step event at the next line.

This differs from other JRE, but I don't think it caused those
problems with Scrapbook.

Thanks.
Ivan

On 4/20/07, Tim Ellison <t....@gmail.com> wrote:
> Ivan Popov wrote:
> > There is difference between Harmony and other JREs in how they step
> > over line with breakpoint set. Harmony does not group breakpoint and
> > step events and thus one need to resume application twice at the same
> > line. I'm not sure if this is problem for this particular case, but
> > I'll look what happened there.
>
> You mean that if we hit a breakpoint, then step over, it hits the same
> breakpoint again?
>
> Regards,
> Tim
>
>

Re: Harmony+Eclipse and Scrapbook Pages

Posted by Tim Ellison <t....@gmail.com>.
Ivan Popov wrote:
> There is difference between Harmony and other JREs in how they step
> over line with breakpoint set. Harmony does not group breakpoint and
> step events and thus one need to resume application twice at the same
> line. I'm not sure if this is problem for this particular case, but
> I'll look what happened there.

You mean that if we hit a breakpoint, then step over, it hits the same
breakpoint again?

Regards,
Tim


Re: Harmony+Eclipse and Scrapbook Pages

Posted by Ivan Popov <iv...@gmail.com>.
There is difference between Harmony and other JREs in how they step
over line with breakpoint set. Harmony does not group breakpoint and
step events and thus one need to resume application twice at the same
line. I'm not sure if this is problem for this particular case, but
I'll look what happened there.

Thanks.
Ivan

On 4/20/07, Tim Ellison <t....@gmail.com> wrote:
> After poking around for a bit, and with help from the JDT folk, I put in
> some traces that show how Harmony is behaving differently from (in this
> case) the IBM JRE.
>
> I think the problem may be related to the debug events that Eclipse is
> looking for to implement the scrapbook pages.  The basic mechanism is
> that Eclipse set's a breakpoint, steps over it, and evaluates the code
> from the scrapbook.  It would appear that the IBM VM notifies a STEP_END
> event, but Harmony VM doesn't?
>
> To see the trace take a look at
> https://bugs.eclipse.org/bugs/attachment.cgi?id=64404&action=view
>
> Thanks,
> Tim
>
>
> Wayne Beaton wrote:
> > I've created the Bugzilla record:
> >
> > https://bugs.eclipse.org/bugs/show_bug.cgi?id=183202
> >
> > It is--essentially--asking for help in narrowing into root cause.
> >
> > Wayne
> > --
> > Wayne Beaton
> > The Eclipse Foundation
> > wayne.beaton@eclipse.org
> > Skype, YIM: waynebeaton
> > http://www.eclipse.org
> > http://wbeaton.blogspot.com/
> > http://www.planeteclipse.org/planet/
> >
> >
> >> -----Original Message-----
> >> From: Wayne Beaton [mailto:wayne@eclipse.org]
> >> Sent: April 19, 2007 10:31 AM
> >> To: dev@harmony.apache.org
> >> Subject: RE: Harmony+Eclipse and Scrapbook Pages
> >>
> >> I'll create a new Bugzilla report with the information we
> >> have so far. Maybe the JDT folks can point us in the right direction.
> >>
> >> Wayne
> >> --
> >> Wayne Beaton
> >> The Eclipse Foundation
> >> wayne.beaton@eclipse.org
> >> Skype, YIM: waynebeaton
> >> http://www.eclipse.org
> >> http://wbeaton.blogspot.com/
> >> http://www.planeteclipse.org/planet/
> >>
> >>
> >>> -----Original Message-----
> >>> From: Tim Ellison [mailto:t.p.ellison@gmail.com]
> >>> Sent: April 19, 2007 10:16 AM
> >>> To: dev@harmony.apache.org
> >>> Subject: Re: Harmony+Eclipse and Scrapbook Pages
> >>>
> >>> Wayne Beaton wrote:
> >>>> The message is generated by the
> >>>>
> >> org.eclipse.jdt.internal.debug.ui.snippeteditor.JavaSnippetEditor#eval
> >>>> uate(S
> >>>> tring) method (in the org.eclipse.jdt.debug.ui plug-in).
> >>> I'm just downloading the source now, but this comment [1]
> >> though old,
> >>> may imply that there are assumptions on the JRE implementation for
> >>> snippet evaluation -- not sure if that comment (from 2001) is still
> >>> relevant.
> >>>
> >>> [1] https://bugs.eclipse.org/bugs/show_bug.cgi?id=6434#c3
> >>>
> >>> Regards,
> >>> Tim
> >
> >
>

Re: Harmony+Eclipse and Scrapbook Pages

Posted by Tim Ellison <t....@gmail.com>.
After poking around for a bit, and with help from the JDT folk, I put in
some traces that show how Harmony is behaving differently from (in this
case) the IBM JRE.

I think the problem may be related to the debug events that Eclipse is
looking for to implement the scrapbook pages.  The basic mechanism is
that Eclipse set's a breakpoint, steps over it, and evaluates the code
from the scrapbook.  It would appear that the IBM VM notifies a STEP_END
event, but Harmony VM doesn't?

To see the trace take a look at
https://bugs.eclipse.org/bugs/attachment.cgi?id=64404&action=view

Thanks,
Tim


Wayne Beaton wrote:
> I've created the Bugzilla record:
> 
> https://bugs.eclipse.org/bugs/show_bug.cgi?id=183202
> 
> It is--essentially--asking for help in narrowing into root cause.
> 
> Wayne
> --
> Wayne Beaton
> The Eclipse Foundation
> wayne.beaton@eclipse.org
> Skype, YIM: waynebeaton
> http://www.eclipse.org
> http://wbeaton.blogspot.com/
> http://www.planeteclipse.org/planet/
>  
> 
>> -----Original Message-----
>> From: Wayne Beaton [mailto:wayne@eclipse.org] 
>> Sent: April 19, 2007 10:31 AM
>> To: dev@harmony.apache.org
>> Subject: RE: Harmony+Eclipse and Scrapbook Pages
>>
>> I'll create a new Bugzilla report with the information we 
>> have so far. Maybe the JDT folks can point us in the right direction.
>>
>> Wayne
>> --
>> Wayne Beaton
>> The Eclipse Foundation
>> wayne.beaton@eclipse.org
>> Skype, YIM: waynebeaton
>> http://www.eclipse.org
>> http://wbeaton.blogspot.com/
>> http://www.planeteclipse.org/planet/
>>  
>>
>>> -----Original Message-----
>>> From: Tim Ellison [mailto:t.p.ellison@gmail.com]
>>> Sent: April 19, 2007 10:16 AM
>>> To: dev@harmony.apache.org
>>> Subject: Re: Harmony+Eclipse and Scrapbook Pages
>>>
>>> Wayne Beaton wrote:
>>>> The message is generated by the
>>>>
>> org.eclipse.jdt.internal.debug.ui.snippeteditor.JavaSnippetEditor#eval
>>>> uate(S
>>>> tring) method (in the org.eclipse.jdt.debug.ui plug-in).
>>> I'm just downloading the source now, but this comment [1] 
>> though old, 
>>> may imply that there are assumptions on the JRE implementation for 
>>> snippet evaluation -- not sure if that comment (from 2001) is still 
>>> relevant.
>>>
>>> [1] https://bugs.eclipse.org/bugs/show_bug.cgi?id=6434#c3
>>>
>>> Regards,
>>> Tim
> 
> 

RE: Harmony+Eclipse and Scrapbook Pages

Posted by Wayne Beaton <wa...@eclipse.org>.
I've created the Bugzilla record:

https://bugs.eclipse.org/bugs/show_bug.cgi?id=183202

It is--essentially--asking for help in narrowing into root cause.

Wayne
--
Wayne Beaton
The Eclipse Foundation
wayne.beaton@eclipse.org
Skype, YIM: waynebeaton
http://www.eclipse.org
http://wbeaton.blogspot.com/
http://www.planeteclipse.org/planet/
 

> -----Original Message-----
> From: Wayne Beaton [mailto:wayne@eclipse.org] 
> Sent: April 19, 2007 10:31 AM
> To: dev@harmony.apache.org
> Subject: RE: Harmony+Eclipse and Scrapbook Pages
> 
> I'll create a new Bugzilla report with the information we 
> have so far. Maybe the JDT folks can point us in the right direction.
> 
> Wayne
> --
> Wayne Beaton
> The Eclipse Foundation
> wayne.beaton@eclipse.org
> Skype, YIM: waynebeaton
> http://www.eclipse.org
> http://wbeaton.blogspot.com/
> http://www.planeteclipse.org/planet/
>  
> 
> > -----Original Message-----
> > From: Tim Ellison [mailto:t.p.ellison@gmail.com]
> > Sent: April 19, 2007 10:16 AM
> > To: dev@harmony.apache.org
> > Subject: Re: Harmony+Eclipse and Scrapbook Pages
> > 
> > Wayne Beaton wrote:
> > > The message is generated by the
> > > 
> > 
> org.eclipse.jdt.internal.debug.ui.snippeteditor.JavaSnippetEditor#eval
> > > uate(S
> > > tring) method (in the org.eclipse.jdt.debug.ui plug-in).
> > 
> > I'm just downloading the source now, but this comment [1] 
> though old, 
> > may imply that there are assumptions on the JRE implementation for 
> > snippet evaluation -- not sure if that comment (from 2001) is still 
> > relevant.
> > 
> > [1] https://bugs.eclipse.org/bugs/show_bug.cgi?id=6434#c3
> > 
> > Regards,
> > Tim
> 


RE: Harmony+Eclipse and Scrapbook Pages

Posted by Wayne Beaton <wa...@eclipse.org>.
I'll create a new Bugzilla report with the information we have so far. Maybe
the JDT folks can point us in the right direction.

Wayne
--
Wayne Beaton
The Eclipse Foundation
wayne.beaton@eclipse.org
Skype, YIM: waynebeaton
http://www.eclipse.org
http://wbeaton.blogspot.com/
http://www.planeteclipse.org/planet/
 

> -----Original Message-----
> From: Tim Ellison [mailto:t.p.ellison@gmail.com] 
> Sent: April 19, 2007 10:16 AM
> To: dev@harmony.apache.org
> Subject: Re: Harmony+Eclipse and Scrapbook Pages
> 
> Wayne Beaton wrote:
> > The message is generated by the
> > 
> org.eclipse.jdt.internal.debug.ui.snippeteditor.JavaSnippetEditor#eval
> > uate(S
> > tring) method (in the org.eclipse.jdt.debug.ui plug-in).
> 
> I'm just downloading the source now, but this comment [1] 
> though old, may imply that there are assumptions on the JRE 
> implementation for snippet evaluation -- not sure if that 
> comment (from 2001) is still relevant.
> 
> [1] https://bugs.eclipse.org/bugs/show_bug.cgi?id=6434#c3
> 
> Regards,
> Tim


Re: Harmony+Eclipse and Scrapbook Pages

Posted by Tim Ellison <t....@gmail.com>.
Wayne Beaton wrote:
> The message is generated by the
> org.eclipse.jdt.internal.debug.ui.snippeteditor.JavaSnippetEditor#evaluate(S
> tring) method (in the org.eclipse.jdt.debug.ui plug-in).

I'm just downloading the source now, but this comment [1] though old,
may imply that there are assumptions on the JRE implementation for
snippet evaluation -- not sure if that comment (from 2001) is still
relevant.

[1] https://bugs.eclipse.org/bugs/show_bug.cgi?id=6434#c3

Regards,
Tim

RE: Harmony+Eclipse and Scrapbook Pages

Posted by Wayne Beaton <wa...@eclipse.org>.
The message is generated by the
org.eclipse.jdt.internal.debug.ui.snippeteditor.JavaSnippetEditor#evaluate(S
tring) method (in the org.eclipse.jdt.debug.ui plug-in).

I'm still digging into root cause.

Wayne
--
Wayne Beaton
The Eclipse Foundation
wayne.beaton@eclipse.org
Skype, YIM: waynebeaton
http://www.eclipse.org
http://wbeaton.blogspot.com/
http://www.planeteclipse.org/planet/
 

> -----Original Message-----
> From: Tim Ellison [mailto:t.p.ellison@gmail.com] 
> Sent: April 19, 2007 9:57 AM
> To: dev@harmony.apache.org
> Subject: Re: Harmony+Eclipse and Scrapbook Pages
> 
> Gregory Shimansky wrote:
> > Wayne Beaton wrote:
> >> Greetings folks. I've been testing Harmony (April 18) with 
> Eclipse 3.2.2.
> >> Almost everything I've tried seems to just work (including the 
> >> Eclipse platform UI test suite). I finally managed to run into a 
> >> problem with Scrapbook pages. When I try to evaluate anything on a 
> >> scrapbook page, I get this message "Evaluation failed: 
> internal error 
> >> - unable to obtain an execution context." There's nothing 
> in the log.
> > 
> > I haven't seen such message. Does it come from eclipse 
> sources or from 
> > one of the system classes?
> 
> I'm guessing it is an Eclipse message, since googling the 
> message picked up an old but similar report [1] (from before 
> the days of Harmony).
> 
> I'll poke around to see what Eclipse is expecting.
> 
> [1] 
> http://dev.eclipse.org/newslists/news.eclipse.tools.jdt/msg05288.html
> 
> Regards,
> Tim


Re: Harmony+Eclipse and Scrapbook Pages

Posted by Tim Ellison <t....@gmail.com>.
Gregory Shimansky wrote:
> Wayne Beaton wrote:
>> Greetings folks. I've been testing Harmony (April 18) with Eclipse 3.2.2.
>> Almost everything I've tried seems to just work (including the Eclipse
>> platform UI test suite). I finally managed to run into a problem with
>> Scrapbook pages. When I try to evaluate anything on a scrapbook page,
>> I get
>> this message "Evaluation failed: internal error - unable to obtain an
>> execution context." There's nothing in the log.
> 
> I haven't seen such message. Does it come from eclipse sources or from
> one of the system classes?

I'm guessing it is an Eclipse message, since googling the message picked
up an old but similar report [1] (from before the days of Harmony).

I'll poke around to see what Eclipse is expecting.

[1] http://dev.eclipse.org/newslists/news.eclipse.tools.jdt/msg05288.html

Regards,
Tim

RE: Harmony+Eclipse and Scrapbook Pages

Posted by Wayne Beaton <wa...@eclipse.org>.
> Wayne Beaton wrote:
> > Greetings folks. I've been testing Harmony (April 18) with 
> Eclipse 3.2.2.
> > Almost everything I've tried seems to just work (including 
> the Eclipse 
> > platform UI test suite). I finally managed to run into a 
> problem with 
> > Scrapbook pages. When I try to evaluate anything on a 
> scrapbook page, 
> > I get this message "Evaluation failed: internal error - unable to 
> > obtain an execution context." There's nothing in the log.
> 
> I haven't seen such message. Does it come from eclipse 
> sources or from one of the system classes?

I'm pretty sure that the message comes from Eclipse. But, like I said, I
haven't actually been able to track it down yet. I'll keep poking at it. I
just wanted to make sure that I'm not duplicating effort.

Wayne


Re: Harmony+Eclipse and Scrapbook Pages

Posted by Gregory Shimansky <gs...@gmail.com>.
Wayne Beaton wrote:
> Greetings folks. I've been testing Harmony (April 18) with Eclipse 3.2.2.
> Almost everything I've tried seems to just work (including the Eclipse
> platform UI test suite). I finally managed to run into a problem with
> Scrapbook pages. When I try to evaluate anything on a scrapbook page, I get
> this message "Evaluation failed: internal error - unable to obtain an
> execution context." There's nothing in the log.

I haven't seen such message. Does it come from eclipse sources or from 
one of the system classes?

> Has this problem been encountered yet? I didn't see any discussion of it in
> the mailing list archives or in JIRA. I did start to try and sort out the
> problem (I assume that it has something to do with the communication between
> JVMs), but debugging Eclipse in Harmony is pretty slow and after a couple of
> crashes, I decided I'd see if anybody else had a track on this problem
> before I spend any more cycles trying to sort it out.
> 
> FWIW, I've been testing Eclipse 3.2.2 and Web Tools 1.5.2 deploying against
> Tomcat 5.5.9, all of it running quite flawlessly on Harmony. That is, until
> I try and debug. I assume that the performance degradation of debug mode is
> known and will be addressed at some point. Let me know if I am in error and
> should dig into the cause of this.

The problem about slow down is know. Debugging is possible only in 
non-optimized JIT mode and threading code has to always use slow paths 
in order to keep all information about monitors and thread states.

-- 
Gregory