Looks OK to me. The extra diagnostic output will be useful to have.
On 8/30/18, 11:08 AM, Gary Adams wrote:
Hi Chris, It looks good. Thanks, Serguei On 8/29/18 21:19, Chris Plummer wrote: >/ Hi, />/ />/ Please review the following: />/ />/ https://bugs.openjdk.java.net/browse/JDK-8210118 />/ http://cr.openjdk.java.net/~cjplummer/8210118/webrev.00/ <http://cr.openjdk.java.net/%7Ecjplummer/8210118/webrev.00/> />/ />/ There have a been a few jdb bugs (or test bugs) that have caused tests />/ to fail because they never get the expected jdb prompt. The only clue />/ in the log is an abrupt termination of any jdb output, and the />/ following error message: />/ />/ # ERROR: Caught unexpected exception while executing the test: />/ nsk.share.Failure: Prompt is not received during 300200 milliseconds. />/ />/ Dumping the pending reply makes it a lot easier to debug most of these />/ failures. Here's one example output with the fix in place: />/ />/ Sending command: cont />/ receiveReply FAILED due to "nsk.share.Failure: Prompt is not received />/ during 300200 milliseconds.". />/ Pending reply output follows: />/ reply[0]:> />/ reply[1]: Breakpoint hit: Arg"thread=main", />/ nsk.jdb.locals.locals002.locals002a.allKindsOfLocals(), line=100 bci=62 />/ reply[2]: umen100 System.out.println("Locals but no />/ arguments"); // locals002.BREAKPOINT_LINE2 />/ reply[3]: />/ reply[4]: ts bmain[1] ut no locals />/ # ERROR: Caught unexpected exception while executing the test: />/ nsk.share.Failure: Prompt is not received during 300200 milliseconds. />/ />/ In this case we can see all sorts of extra characters in various reply />/ lines. These characters actually come from a println that was executed />/ after execution resumed and before the next breakpoint: />/ />/ System.out.println("Arguments but no locals"); // />/ locals002.BREAKPOINT_LINE1 />/ />/ Having the pending reply helps a lot here. Without it, you have no />/ idea why the main[1] prompt was never seen and might be led to think />/ it was never sent. By looking at the pending output you can see that />/ main[1] was sent, but it not being detected because of all the extra />/ characters appearing on the same line. />/ />/ thanks, />/ />/ Chris />
