Hi Manju - Ive added a few comments inline...
Manju Vijayakumar wrote:
Hi all,
I made some minor improvements to my proposal on gsoc.
Here is the link:
http://socghop.appspot.com/student_proposal/show/google/gsoc2009/manjuvijayakumar/t123808458043
So what do you think of the proposal overall? Your comments could really
help me spruce up my proposal! Also, I was discussing with Oliver about
some
of the things below. So the questions are:
Is the most recent Sun jdb implementation based on JDK 1.3 and earlier?
Because, if that is the case, then there can be several improvements
(apart
from the ones in my proposal) to the existing sun jdb that can be
incorporated in the Harmony jdb and make it a superior version.
- Like say the Hot Swap feature? (fix and continue running the debugging
OR
letting the server continue without restarting)
This could be a very cool additional feature, although it would require
some serious thought as to how to present the ability to edit and hot swap
code within the command line tool. I think this is an ambitious extension,
but could be a valuable one.
- add a watchpoint? (can we stop at a point while comparing (==, <, > etc)
value of a variable)
Another useful feature - it could also allow you to simple watch variable
values e.g. display the new value if a particular variable is changed.
- does jdb show chained exceptions? (each exception in chain is displayed)
- show a hierarchy of classes loaded into target jvm?
- view current threads or individual stack frames and change the context
of
the debugger to a particular thread/stack frame?
I believe this is standard in jdb and exists in the current implementation
already. For example, "thread <thread id>" changes to a particular thread,
and the "up" and "down" commands move up and down stack frames.
I might be shooting in the dark, because I am yet to verify if the latest
jdb in Java 6 supports these..I should probably run all the options of Sun
jdb and see.
I think that's a good idea! Spending some time familiarising yourself with
the existing jdb tool and understanding it's current function would be a
good starting point. It will give you an idea of exactly what you need to
achieve, and also indicate where extensions can be made.
Also, if you have not done so already, I would recommend checking out the
Harmony code and building it so you can start digging around in the source
and getting a feel for the project. [1] should help get you started.
Before you can contribute to the project, you need to submit an ICLA ([2]
under Contributor License Agreements - should be emailed to the ASF
secretary only) and ACQ ([3] should be emailed to the Harmony PMC list [4]
only).
What I am also unsure is, if they are all feasible implementations within
the scope/period of Gsoc. May be we can keep some of the proposed
extensions
optional?
I think your project needs to have a set of core features plus some
extensions which you expect to get done within the time allowed, but I don't
see why you couldn't have some additional extensions which you can implement
if there is time. However, I think having a solid plan for the core features
and extensions that you follow closely is very important, and additional
extensions should only be attempted if there core has been well completed.
Regards,
Oliver
[1] http://harmony.apache.org/quickhelp_contributors.html
[2] http://www.apache.org/licenses/
[3] http://harmony.apache.org/auth_cont_quest.html
[4] http://harmony.apache.org/mailing.html
--
Oliver Deakin
Unless stated otherwise above:
IBM United Kingdom Limited - Registered in England and Wales with number
741598. Registered office: PO Box 41, North Harbour, Portsmouth, Hampshire
PO6 3AU