RFR(XS): [TEST] add test to verify EnableTrace works
Liu Xin
navy.xliu at gmail.com
Thu Sep 13 04:11:27 UTC 2018
Hi, David and Daniel,
Thanks. I will ping Paul to follow up.
--lx
On Wed, Sep 12, 2018, 6:28 PM David Holmes <david.holmes at oracle.com> wrote:
> On 13/09/2018 2:42 AM, Liu, Xin wrote:
> > David,
> > Thank you to let us know that. Excellent.
> > I still need another reviewer. Paul said he can't be reviewer because he
> sponsors this change.
>
> Paul can be a reviewer. Sponsoring is unrelated to reviewing.
>
> Thanks,
> David
>
> > Thanks,
> > --lx
> >
> >
> > On 9/11/18, 6:32 PM, "David Holmes" <david.holmes at oracle.com> wrote:
> >
> > FYI I also hacked JPRT to run this test, so I can confirm it passes
> as
> > expected on Oracle JDK on Solaris, Windows and Linux.
> >
> > Cheers,
> > David
> >
> > On 11/09/2018 11:50 AM, David Holmes wrote:
> > > Looks fine now.
> > >
> > > FWIW didn't need a new webrev just to remove othervm.
> > >
> > > Thanks,
> > > David
> > >
> > > On 11/09/2018 4:57 AM, Hohensee, Paul wrote:
> > >> Copied, http://cr.openjdk.java.net/~phh/8209863/webrev.03/
> > >>
> > >> On 9/10/18, 10:51 AM, "hotspot-runtime-dev on behalf of Hohensee,
> > >> Paul" <hotspot-runtime-dev-bounces at openjdk.java.net on behalf of
> > >> hohensee at amazon.com> wrote:
> > >>
> > >> Because I copied it to the wrong directory! :(
> > >> Paul
> > >> On 9/10/18, 9:55 AM, "hotspot-runtime-dev on behalf of
> Daniel D.
> > >> Daugherty" <hotspot-runtime-dev-bounces at openjdk.java.net on
> behalf of
> > >> daniel.daugherty at oracle.com> wrote:
> > >> Why is this webrev using '8206075' when previous webrev
> used
> > >> '8209863'?
> > >> Dan
> > >> On 9/10/18 12:47 PM, Liu, Xin wrote:
> > >> > You are right. I updated it. othervm doesn't help
> much. I
> > >> remove it.
> > >> > Here is CR.
> > >> > http://cr.openjdk.java.net/~phh/8206075/webrev.03/
> > >> >
> > >> > thanks,
> > >> > --lx
> > >> >
> > >> >
> > >> > On 9/7/18, 4:08 PM, "David Holmes"
> > >> <david.holmes at oracle.com> wrote:
> > >> >
> > >> > On 8/09/2018 2:40 AM, Liu, Xin wrote:
> > >> > > Hi, David,
> > >> > > Thanks you for the commend.
> > >> > >
> > >> > > I added 'othervm' in last minute. The test
> grabs
> > >> Classload or Compilation events when JVM initializes. Without
> > >> `othervm`, the test might not capture them because the JVM has
> already
> > >> did that.
> > >> > > 'othervm' can make the test more consistent.
> > >> >
> > >> > No it won't because you are capturing events
> from JVMs
> > >> that you
> > >> > explicitly launch with ProcessTools. The VM
> launched
> > >> by "othervm" does
> > >> > not have EnableTracing applied to it and nobody
> looks
> > >> at its output anyway.
> > >> >
> > >> > David
> > >> >
> > >> > > Thanks you for reviewing it.
> > >> > >
> > >> > > Thanks,
> > >> > > --lx
> > >> > >
> > >> > >
> > >> > > On 9/6/18, 5:17 PM, "David Holmes"
> > >> <david.holmes at oracle.com> wrote:
> > >> > >
> > >> > > Hi,
> > >> > >
> > >> > > On 7/09/2018 6:51 AM, Liu, Xin wrote:
> > >> > > > Hi, David,
> > >> > > > Could you review this new revision?
> > >> > > > Webrev:
> > >> http://cr.openjdk.java.net/~phh/8209863/webrev.02/
> > >> > > > bug:
> > >> https://bugs.openjdk.java.net/browse/JDK-8209863
> > >> > >
> > >> > > This looks fine to me.
> > >> > >
> > >> > > One nit:
> > >> > >
> > >> > > 29 * @run main/othervm
> > >> > >
> > >> > > You don't need othervm for this test as
> it just
> > >> launches seperate VMs
> > >> > > anyway. No need for updated webrev.
> > >> > >
> > >> > > Thanks,
> > >> > > David
> > >> > >
> > >> > > > I should verify new tests using both
> > >> Openjdk/Oraclejdk. Thank you for heading up.
> > >> > > >
> > >> > > > Thanks,
> > >> > > > --lx
> > >> > > >
> > >> > > > On 9/4/18, 11:05 PM, "Liu Xin"
> > >> <navy.xliu at gmail.com> wrote:
> > >> > > >
> > >> > > > Hi, David,
> > >> > > >
> > >> > > > Thanks to investigate the closed
> > >> implementation.
> > >> > > >
> > >> > > > Indeed, OracleJDK shows “JAVA(TM)”
> > >> instead of OpenJDK.
> > >> > > >
> > >> > > > $java -XX:+EnableTracing -version
> > >> > > > java version "1.8.0_171"
> > >> > > > Java(TM) SE Runtime Environment
> (build
> > >> 1.8.0_171-b11)
> > >> > > > Java HotSpot(TM) 64-Bit Server VM
> (build
> > >> 25.171-b11, mixed mode)
> > >> > > >
> > >> > > > I will add a guard for the Test.
> > >> Furthermore, I think I need to check if it exits with 0 for
> OracleJDK.
> > >> > > > The right behavior of OracleJDK8
> is to
> > >> accept this flag yet suppress all events.
> > >> > > >
> > >> > > > Thanks,
> > >> > > > —lx
> > >> > > >
> > >> > > >
> > >> > > > > On Sep 4, 2018, at 9:51 PM, David
> > >> Holmes <david.holmes at oracle.com> wrote:
> > >> > > > >
> > >> > > > > Hi Liu Xin,
> > >> > > > >
> > >> > > > > On 4/09/2018 7:45 PM, David
> Holmes wrote:
> > >> > > > >> On 4/09/2018 10:12 AM, Liu, Xin
> wrote:
> > >> > > > >>> Hi, David,
> > >> > > > >>> Thank you for reviewing it.
> > >> > > > >>>
> > >> > > > >>> If you are using OracleJDK, it
> won't
> > >> have any output. OracleJDK doesn't suffer from crash. I guess It
> > >> suppress events unconditionally.
> > >> > > > >>> For JDK8u, "-XX:+EnableTracing
> > >> -version" will dump some events. It won't crash if it has this
> patch
> > >>
> http://hg.openjdk.java.net/jdk8u/jdk8u-dev/hotspot/rev/80ee2541504e
> > >> > > > >>> The attachment is the output.
> > >> > > > >> If the Oracle JDK doesn't
> produce any
> > >> output then this test will fail on the Oracle JDK so can't be
> accepted
> > >> in current form.
> > >> > > > >> There's something going on with
> > >> EnableTracing that I'm not understanding. I'll try to take a
> closer
> > >> look tomorrow ( was on a day off today).
> > >> > > > >
> > >> > > > > Okay ... the Oracle JDK replaces
> the
> > >> OpenJDK tracing facility with JFR which completely ignores the
> > >> EnableTracing flag.
> > >> > > > >
> > >> > > > > If the test is simply verifying
> that
> > >> -XX:+EnableTracing doesn't crash then it can reduce to just:
> > >> > > > >
> > >> > > > > /*
> > >> > > > > * @test
> > >> > > > > * @summary Ensure
> -XX:+EnableTracing
> > >> doesn't crash
> > >> > > > > * @run main/othervm
> -XX:+EnableTracing
> > >> TestEnableTracing
> > >> > > > > */
> > >> > > > > public class TestEnableTracing {
> > >> > > > > public static void
> main(String[]
> > >> args) {
> > >> > > > > }
> > >> > > > > }
> > >> > > > >
> > >> > > > > If you want to actually verify
> some of
> > >> the trace output then you will need to guard the
> shouldMatch/Contain
> > >> statements with something like:
> > >> > > > >
> > >> > > > > if
> > >> (output.getOutput().contains("OpenJDK")) {
> > >> > > > > ...
> > >> > > > > }
> > >> > > > >
> > >> > > > > I don't think there is a direct
> way to
> > >> ensure the test is only executed on an OpenJDK binary.
> > >> > > > >
> > >> > > > > Thanks,
> > >> > > > > David
> > >> > > > >
> > >> > > > >> Thanks,
> > >> > > > >> David
> > >> > > > >>>
> > >> > > > >>> Output of jtreg
> > >> > > > >>> ###
> > >> > > > >>> # Running suite single for
> openJDK
> > >> > > > >>> # Results are available in
> > >> build/brazil-open-single-tests
> > >> > > > >>> ###
> > >> > > > >>> Directory "build/JTwork" not
> found:
> > >> creating
> > >> > > > >>> Passed:
> > >> runtime/EnableTracing/TestEnableTracing.java
> > >> > > > >>> Test results: passed: 1
> > >> > > > >>> Report written to
> > >>
> /local/home/xxinliu/ws-openjdk8/build/OpenJDK8CompatibilityTests/OpenJDK8CompatibilityTests-1.0/RHEL5_64/DEV.STD.PTHREAD/build/brazil-open-single-tests/html/report.html
> > >>
> > >> > > > >>> Results written to
> > >>
> /local/home/xxinliu/ws-openjdk8/build/OpenJDK8CompatibilityTests/OpenJDK8CompatibilityTests-1.0/RHEL5_64/DEV.STD.PTHREAD/build/JTwork
> > >>
> > >> > > > >>>
> > >> > > > >>> Thanks,
> > >> > > > >>> --lx
> > >> > > > >>>
> > >> > > > >>>
> > >> > > > >>> On 9/2/18, 10:01 PM, "David
> Holmes"
> > >> <david.holmes at oracle.com> wrote:
> > >> > > > >>>
> > >> > > > >>> Hi,
> > >> > > > >>> On 25/08/2018 2:35 AM,
> Liu, Xin
> > >> wrote:
> > >> > > > >>> > Hi, hotspot-Runtime
> Developers,
> > >> > > > >>> >
> > >> > > > >>> > Could you review this
> small
> > >> tests?
> > >> > > > >>> > It adds a new test to
> verify
> > >> +EnableTracing works for jdk8u.
> > >> > > > >>> I don't see any output
> produced
> > >> with just "-XX:+EnableTracing -version". ??
> > >> > > > >>> >
> > >> > > > >>>
> > >>
> /java/re/jdk/8u172/promoted/latest/binaries/linux-amd64/fastdebug/bin/java
> > >>
> > >> > > > >>> -XX:+EnableTracing
> -version
> > >> > > > >>> java version
> "1.8.0_172-fastdebug"
> > >> > > > >>> Java(TM) SE Runtime
> Environment
> > >> (build 1.8.0_172-fastdebug-b35)
> > >> > > > >>> Java HotSpot(TM) 64-Bit
> Server
> > >> VM (build 25.172-b35-fastdebug, mixed mode)
> > >> > > > >>> Thanks,
> > >> > > > >>> David
> > >> > > > >>> > BUG:
> > >> https://bugs.openjdk.java.net/browse/JDK-8209863
> > >> > > > >>> > WEBREV:
> > >> http://cr.openjdk.java.net/~phh/8209863/webrev.00/
> > >> > > > >>> >
> > >> > > > >>> > Thanks,
> > >> > > > >>> > -lx
> > >> > > > >>> >
> > >> > > > >>>
> > >> > > >
> > >> > > >
> > >> > > >
> > >> > >
> > >> > >
> > >> >
> > >> >
> > >>
> >
> >
>
More information about the hotspot-runtime-dev
mailing list