To be detected the output line should ends with "Boolean[1] "
So "Field (nsk.jdb.unwatch.unwatch002.unwatch002a.FS1) is null, will be
instance of java.lang.Boolean[1] (id=706):" does not match.
It seems to me that other bugs Gary is working have similar cases.
--alex
On 09/20/2018 15:27, Chris Plummer wrote:
The regex you give would still detect Boolean[1] as a prompt, which we
don't want.
Chris
On 9/20/18 3:22 PM, Alex Menkov wrote:
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.