RFR: JDK-8208471: nsk/jdb/unwatch/unwatch002/unwatch002.java fails with "Prompt is not received during 300200 milliseconds"
Alex Menkov
alexey.menkov at oracle.com
Thu Sep 20 22:22:43 UTC 2018
May be it would be better to fix Jdb.receiveReplyFor to properly handle
all replies like
Field (nsk.jdb.unwatch.unwatch002.unwatch002a.FS1) is null, will be
instance of java.lang.Boolean[1] (id=706):
jdk/com/sun/jdi tests use the following regexp to detect jdb prompt:
"[a-zA-Z0-9_-][a-zA-Z0-9_-]*\[[1-9][0-9]*\] [ >]*$"
(see test/jdk/com/sun/jdi/lib/jdb/Jdb.java or
test/jdk/com/sun/jdi/ShellScaffold.sh)
AFAIR nsk/../Jdb does not use regexp, but I believe it can be updated to
work the same way.
--alex
On 09/20/2018 14:50, Chris Plummer wrote:
> This one is a little different than exclude001 in that we don't control
> the name of the thread. We know (at least at the moment) that it is
> called "main", but that could always change. In general I'm fine with
> this fix, but if you have others like it, I'd suggest putting the "main"
> thread name in single place, not in each test that cares about it.
>
> Chris
>
> On 9/20/18 10:54 AM, Gary Adams wrote:
>> The corrupted output has been identified due to the "Boolean[1]"
>> being misrecognized as a compound prompt.
>>
>> The proposed fix waits for the correct prompt before
>> advancing to the next command.
>>
>> Webrev: http://cr.openjdk.java.net/~gadams/8208471/webrev/
>> Issue: https://bugs.openjdk.java.net/browse/JDK-8208471
>>
>> Testing is in progress.
>
>
>
More information about the serviceability-dev
mailing list