RFR(S): 8198554: Add fuzzy matching for log levels and tags when parsing -Xlog
harold seigel
harold.seigel at oracle.com
Fri Feb 23 12:53:34 UTC 2018
Hi Marcus,
Thanks for the explanation. I agree that the code is good as is.
Harold
On 2/23/2018 4:29 AM, Marcus Larsson wrote:
> Hi Harold,
>
> Thanks for reviewing!
>
> On 2018-02-22 20:56, harold seigel wrote:
>> Hi Marcus,
>>
>> This patch will be very helpful!
>>
>> Can you change code sequences like this in logSelection.cpp:
>>
>> 79 errstream->print("Invalid level '%s' in log selection.",
>> levelstr);
>> 80 LogLevelType match = LogLevel::fuzzy_match(levelstr);
>> 81 if (match != LogLevel::Invalid) {
>> 82 errstream->print(" Did you mean '%s'?", LogLevel::name(match));
>> 83 }
>> 84 errstream->cr();
>>
>> To something like this to lessen the chance of other threads' print
>> statements getting interspersed with this one?
>>
>> if (match != LogLevel::Invalid) {
>> errstream->print_cr("Invalid level '%s' in log selection. Did
>> you mean '%'s?, levelstr, LogLevel::name(match));
>> } else {
>> errstream->print_cr("Invalid level '%s' in log selection.",
>> levelstr);
>> }
>>
>
> Actually, AFAICT these messages can't be interleaved as it's
> implemented right now. When we're parsing -Xlog arguments, the stream
> will be a stringStream (fully buffered). In the case of VM.log
> diagnostic command parsing, the stream will be tied to the output for
> whoever executes that DCMD, which I don't think can be interleaved by
> other threads. This assumption is used in other places around this
> code, so I'm hoping it's OK to leave it as is.
>
> Thanks,
> Marcus
>
>> The rest of the patch looks good.
>>
>> Thanks, Harold
>>
>> On 2/22/2018 8:11 AM, Marcus Larsson wrote:
>>> Hi,
>>>
>>> Please review the following patch to add some fuzzy matching to
>>> improve -Xlog parsing error messages. The implementation of the
>>> fuzzy -XX flag matching is moved out to StringUtils so it can be
>>> re-used here.
>>>
>>> Issue:
>>> https://bugs.openjdk.java.net/browse/JDK-8198554
>>>
>>> Webrev:
>>> http://cr.openjdk.java.net/~mlarsson/8198554/webrev.00
>>>
>>> Tested with hs-tier 1-2.
>>>
>>> Thanks,
>>> Marcus
>>>
>>
>
More information about the hotspot-runtime-dev
mailing list