PING: RFR 8218631: jfr tools is effective only the last filter

Erik Gahlin erik.gahlin at oracle.com
Wed Apr 17 20:11:05 UTC 2019


Hi Chihiro,

Another issue surfaced that would have been fixed by your patch. See

"8221569: JFR tool produces incorrect output when both --category and 
--event are specified"
https://bugs.openjdk.java.net/browse/JDK-8221569

I modified your patch and added checks to prevent --categories and 
--events to be specified multiple times.

Webrev:
http://cr.openjdk.java.net/~egahlin/8218631/

If you like I can set you as contributor and sponsor it for you? (and 
close 8221569 as a duplicate)

(An argument can be made that a user should be able to specify --events 
multiple times and get the union, but that is not according to spec. 
which is  [--events <filter>] without repeat. Having multiple ways to 
achieve the same goal may confuse users, i.e. did the event not get 
printed because of multiple --events parameters, or because it was not 
in the file?)

Thanks
Erik

> Hi Chihiro,
>
> If you want to use multiple filters, you can specify them like this:
>
> —events filter1,filter2,filter3
> —categories filter1,filter2,filter2
>
> We could add an error message, if a user specifies the —events flag more than once, and describe how multiple filters can be specified, but I don’t think there should be multiple ways to specify filters.
>
> Thanks
> Erik
>
>
>> On 21 Feb 2019, at 08:38, Chihiro Ito <chihiro.ito at oracle.com> wrote:
>>
>> Hi All,
>>
>> Could you review this change, please?
>>
>> webrev:
>> http://cr.openjdk.java.net/~cito/JDK-8218631/webrev.00/
>>
>> JBS:
>> https://bugs.openjdk.java.net/browse/JDK-8218631
>>
>> This change passed all tests in test-tier1.
>>
>> Regards,
>> Chihiro
>>
>>
>> On 2019/02/08 2:46, Chihiro Ito wrote:
>>> Hi,
>>>
>>> Could you review this change, please?
>>>
>>> I have referred to the setting of Xlog, and I changed this should enable every filter as follows.
>>>
>>> jfr print --events jdk.JVMInformation --events jdk.OSInformation profiling-recording4399235951575204469.jfr
>>> jdk.JVMInformation {
>>>   startTime = 17:40:16.536
>>>   jvmName = "OpenJDK 64-Bit Server VM"
>>>   jvmVersion = "OpenJDK 64-Bit Server VM (fastdebug 13-internal+0-adhoc.chito.jdk) for linux-amd64 JRE (13-internal+0-adhoc.chito.jdk), built on Feb  5 2019 23:57:41 by "chito" with gcc 4.8.5 20150623 (Red Hat 4.8.5-28.0.1)"
>>>   jvmArguments = "-Dtest.class.path.prefix=/src/jdk/build/linux-x86_64-server-fastdebug/test-support/jtreg_test_jdk_jdk_jfr_tool_TestPrintDefault_java/classes/jdk/jfr/tool/TestPrintDefault.d:/src/jdk/test/jdk/jdk/jfr/tool:/src/jdk/build/linux-x86_64-server-fastdebug/test-support/jtreg_test_jdk_jdk_jfr_tool_TestPrintDefault_java/classes/test/lib:/src/jdk/build/linux-x86_64-server-fastdebug/test-support/jtreg_test_jdk_jdk_jfr_tool_TestPrintDefault_java/classes/test/jdk -Dtest.src=/src/jdk/test/jdk/jdk/jfr/tool -Dtest.src.path=/src/jdk/test/jdk/jdk/jfr/tool:/src/jdk/test/lib:/src/jdk/test/jdk -Dtest.classes=/src/jdk/build/linux-x86_64-server-fastdebug/test-support/jtreg_test_jdk_jdk_jfr_tool_TestPrintDefault_java/classes/jdk/jfr/tool/TestPrintDefault.d -Dtest.class.path=/src/jdk/build/linux-x86_64-server-fastdebug/test-support/jtreg_test_jdk_jdk_jfr_tool_TestPrintDefault_java/classes/jdk/jfr/tool/TestPrintDefault.d:/src/jdk/build/linux-x86_64-server-fastdebug/test-support/jtreg_test_jdk_jdk_jfr_tool_TestPrintDefault_java/classes/test/lib:/src/jdk/build/linux-x86_64-server-fastdebug/test-support/jtreg_test_jdk_jdk_jfr_tool_TestPrintDefault_java/classes/test/jdk -Dtest.vm.opts=-Xmx512m -XX:MaxRAMPercentage=25 -ea -esa -Dtest.tool.vm.opts=-J-Xmx512m -J-XX:MaxRAMPercentage=25 -J-ea -J-esa -Dtest.compiler.opts= -Dtest.java.opts= -Dtest.jdk=/src/jdk/build/linux-x86_64-server-fastdebug/images/jdk -Dcompile.jdk=/src/jdk/build/linux-x86_64-server-fastdebug/images/jdk -Dtest.timeout.factor=4.0 -Dtest.modules=java.scripting jdk.jfr -Dtest.nativepath=/src/jdk/build/linux-x86_64-server-fastdebug/images/test/jdk/jtreg/native --add-modules=java.scripting,jdk.jfr -Xmx512m -XX:MaxRAMPercentage=25 -ea -esa -Djava.library.path=/src/jdk/build/linux-x86_64-server-fastdebug/images/test/jdk/jtreg/native"
>>>   jvmFlags = N/A
>>>   javaArguments = "com.sun.javatest.regtest.agent.MainWrapper /src/jdk/build/linux-x86_64-server-fastdebug/test-support/jtreg_test_jdk_jdk_jfr_tool_TestPrintDefault_java/jdk/jfr/tool/TestPrintDefault.d/main.0.jta"
>>>   jvmStartTime = 17:39:51.394
>>>   pid = 23337
>>> }
>>>
>>> jdk.OSInformation {
>>>   startTime = 17:40:16.542
>>>   osVersion = "Oracle Linux Server release 7.5
>>> uname:Linux localhost.localdomain 4.1.12-112.16.4.el7uek.x86_64 #2 SMP Mon Mar 12 23:57:12 PDT 2018 x86_64
>>> libc:glibc 2.17 NPTL 2.17
>>> "
>>> }
>>>
>>> webrev:
>>> http://cr.openjdk.java.net/~cito/JDK-8218631/webrev.00/
>>>
>>> JBS:
>>> https://bugs.openjdk.java.net/browse/JDK-8218631
>>>
>>> This change passed all tests in test-tier1.
>>>
>>> Regards,
>>> Chihiro
>>>




More information about the hotspot-jfr-dev mailing list