Tuesday, January 15, 2019

PrintSafepointStatics is missing in JDK 12

A quick note that the Java flag -XX:+PrintSafepointStatics has been obsoleted in OpenJDK 12. Using it will cause the VM to exit, printing:
Unrecognized vm option 'PrintSafepointStatics'
The flag has been replaced by extending "Unified Logging" to handle safepoint statistics as well:
-Xlog:safepoint+stats=debug
The flag was removed as part of the bug fix:
  • JDK-8198720 "Obsolete PrintSafepointStatistics, PrintSafepointStatisticsTimeout and PrintSafepointStatisticsCount options"
This allows the normal "UL" controls to send logging to a file, integrate a number of different log types, etc. But it does change the previous output format. It looks like the other two flag's functionality is gone. See the bug fix.

Some background on safepoints:
This is not a definitive list of resources, but what I found quickly online.