view agent/test/jdi/README.jjh @ 1359:23b1b27ac76c

6909756: G1: guarantee(G1CollectedHeap::heap()->mark_in_progress(),"Precondition.") Summary: Make sure that two marking cycles do not overlap, i.e., a new one can only start after the concurrent marking thread finishes all its work. In the fix I piggy-back a couple of minor extra fixes: some general code reformatting for consistency (only around the code I modified), the removal of a field (G1CollectorPolicy::_should_initiate_conc_mark) which doesn't seem to be used at all (it's only set but never read), as well as moving the "is GC locker active" test earlier into the G1 pause / Full GC and using a more appropriate method for it. Reviewed-by: johnc, jmasa, jcoomes, ysr
author tonyp
date Tue, 06 Apr 2010 10:59:45 -0400
parents a61af66fc99e
children
line wrap: on
line source


This dir contains a test for the JDI-SA implementation.

sagtest.java, sagtarg.java are a normal JDI regression test
that uses TargetAdapter.java, TargetListener.java,  TestScaffold.java,
and VMConnection.java.

This test starts the debuggee, sagtarg.java, which just does a wait.
The test then calls sagdoit.java which calls all the JDJI interface
functions.  Well, it doesn't call them all yet, but that is the plan.
At least all that are interesting to the JDI-SA client. The result of
each call is sent to stdout

The script runjpda.sh runs this test.  It then runs the targ part of
the test and calls gcore on it to get a core dump into file sagcore.
Do
        runjpda.sh >& kk

to run this.  

        NOTE that this produces 1000s of lines of output
        so be sure to redirect to a file.

File sagclient.java is a test program that uses the JDI-SA
client to connect to a core file or pid and then calls sagdoit
which calls the JDI methods.

The script runsa.sh can be used to run sagclient on sagcore:
        runsa.sh sagcore >& kk1

You can then look at the differences between the runjpda.sh 
and the runsa.sh run to see if there are bugs.  Note that the
order of things might be different.


-----------------------------------------

runjdb.sh contains a script that will run jdb on a core file
using the JDI-sa binding.