Re: RFR 8058506: ThreadMXBeanStateTest throws exception
On 10/21/2014 07:47 PM, Jaroslav Bachorik wrote: On 10/21/2014 03:27 PM, Erik Gahlin wrote: Have you considered creating a LogMessage class that keeps the logCntr value and the log message, instead of putting the counter into the log string and parsing it. Yes. And didn't go that way in order to prevent creating a lot of throwaway stringbuilder instances (the Formatter works that way) - but it might (almost certainly) be a premature optimization. I will clean it up and resubmit the request. http://cr.openjdk.java.net/~jbachorik/8058506/webrev.01 I moved the log collection logic to a separate class available in the testlib now. The code is much more concise now. -JB- -JB- Seems simpler and easier to understand. Erik Jaroslav Bachorik skrev 2014-10-20 13:12: Please, review the following test change Issue : https://bugs.openjdk.java.net/browse/JDK-8058506 Webrev: http://cr.openjdk.java.net/~jbachorik/8058506/webrev.00 The test fails intermittently due to the log printing blocking the test thread from time to time, resulting in incorrect data reported by ThreadMXBean. The solution is to use per-thread non-blocking StringBuilders (wrapped in Formatter instances) and aggregate the log output only after the test is finished. Thanks, -JB-
Re: RFR 8058506: ThreadMXBeanStateTest throws exception
Looks good! Erik Jaroslav Bachorik skrev 2014-10-23 11:45: On 10/21/2014 07:47 PM, Jaroslav Bachorik wrote: On 10/21/2014 03:27 PM, Erik Gahlin wrote: Have you considered creating a LogMessage class that keeps the logCntr value and the log message, instead of putting the counter into the log string and parsing it. Yes. And didn't go that way in order to prevent creating a lot of throwaway stringbuilder instances (the Formatter works that way) - but it might (almost certainly) be a premature optimization. I will clean it up and resubmit the request. http://cr.openjdk.java.net/~jbachorik/8058506/webrev.01 I moved the log collection logic to a separate class available in the testlib now. The code is much more concise now. -JB- -JB- Seems simpler and easier to understand. Erik Jaroslav Bachorik skrev 2014-10-20 13:12: Please, review the following test change Issue : https://bugs.openjdk.java.net/browse/JDK-8058506 Webrev: http://cr.openjdk.java.net/~jbachorik/8058506/webrev.00 The test fails intermittently due to the log printing blocking the test thread from time to time, resulting in incorrect data reported by ThreadMXBean. The solution is to use per-thread non-blocking StringBuilders (wrapped in Formatter instances) and aggregate the log output only after the test is finished. Thanks, -JB-