Thanks David! I'm waiting a second reviewer and a sponsor.
Yasumasa 2016/08/08 10:00 "David Holmes" <david.hol...@oracle.com>: > On 8/08/2016 10:26 AM, Yasumasa Suenaga wrote: > >> Hi David, >> >> To get properties from memory, SA have to know memory layout. >> SA is used for attaching to live process/core image. So we cannot >> execute Java API. >> > > I see - so we have to read memory element by memory element. > > Okay - code seems okay. > > Thanks, > David > > Thanks, >> >> Yasumasa >> >> >> 2016/08/08 8:52 "David Holmes" <david.hol...@oracle.com >> <mailto:david.hol...@oracle.com>>: >> >> Hi Yasumasa, >> >> On 5/08/2016 9:59 PM, Yasumasa Suenaga wrote: >> >> Hi all, >> >> I tried to get system properties via "jhsdb jinfo". >> However, it did not work as below: >> >> ---------------- >> $ /usr/local/jdk-9/bin/jhsdb jinfo --pid 1002 >> Attaching to process ID 1002, please wait... >> Debugger attached successfully. >> Server compiler detected. >> JVM version is 9-ea+129 >> Java System Properties: >> >> java.lang.NullPointerException >> at >> sun.jvm.hotspot.utilities.ObjectReader.getHashtable(jdk.hots >> pot.agent@9-ea/ObjectReader.java:217) >> >> at >> sun.jvm.hotspot.utilities.ObjectReader.readInstance(jdk.hots >> pot.agent@9-ea/ObjectReader.java:247) >> >> at >> sun.jvm.hotspot.utilities.ObjectReader.readObject(jdk.hotspo >> t.agent@9-ea/ObjectReader.java:105) >> >> at >> sun.jvm.hotspot.runtime.VM$2.doOop(jdk.hotspot.agent@9-ea/VM >> .java:940) >> at >> sun.jvm.hotspot.oops.InstanceKlass.visitField(jdk.hotspot. >> agent@9-ea/InstanceKlass.java:872) >> >> at >> sun.jvm.hotspot.oops.InstanceKlass.iterateStaticFieldsIntern >> al(jdk.hotspot.agent@9-ea/InstanceKlass.java:572) >> >> at >> sun.jvm.hotspot.oops.InstanceKlass.iterateStaticFields(jdk.h >> otspot.agent@9-ea/InstanceKlass.java:560) >> >> at >> sun.jvm.hotspot.runtime.VM.readSystemProperties(jdk.hotspot. >> agent@9-ea/VM.java:935) >> >> : >> System Properties info not available! >> ---------------- >> * If you want to see all stack, please see JBS. >> >> >> I think this is caused by JDK-8029891. >> JDK-8029891 changes that j.u.Properties stores properties to >> j.u.c.ConcurrentHashMap. >> ObjectReader should be adapted to this change. >> >> I uploaded webrev. Could you review it? >> >> http://cr.openjdk.java.net/~ysuenaga/JDK-8163272/webrev.00/ >> <http://cr.openjdk.java.net/~ysuenaga/JDK-8163272/webrev.00/> >> >> >> I'm not very familiar with how SA operates here so this could be a >> stupid question, but why do we need to know exactly how Properties >> are implemented instead of just using the public API to access them >> and read/write them ?? >> >> Thanks, >> David >> >> I'm jdk 9 commiter, but I cannot access JPRT. >> So I need a sponsor. >> >> >> Thanks, >> >> Yasumasa >> >> >>