RFR: 7184195 - java.util.logging.Logger.getGlobal().info() doesn't log without configuration (original) (raw)
Mandy Chung mandy.chung at oracle.com
Mon Oct 29 22:05:50 UTC 2012
- Previous message: RFR: 7184195 - java.util.logging.Logger.getGlobal().info() doesn't log without configuration
- Next message: RFR: 7184195 - java.util.logging.Logger.getGlobal().info() doesn't log without configuration
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Jim,
The logging deadlock issue is subtle and complex. Do we have a test case that verifies your fix that is deadlock-free?
I can't tell for sure but looks like it smells the potential deadlock if Logger.getGlobal() triggers the LogManager class initialization but LogManager. calls Logger.getLogger().setLogManager().
Maybe you already see this - 4994705 may give you some idea of the deadlock problem.
Hope this helps. Mandy
On 10/24/2012 4:13 PM, Jim Gish wrote:
Please review http://cr.openjdk.java.net/~jgish/Bug7184195-global-logger-init-fix/
In JDK7, Logger.global was deprecated because of potential deadlock problems. The method getGlobal() was introduced as a convenience method to get the global logger in lieu of this or calling Logger.getLogger(Logger.GLOBALLOGGERNAME). Unfortunately, this was broken out of the gate. getGlobal() simply used the deprecated static variable global, but this had the result of returning the global logger without initializing the logging system. As a result, simply calling Logger.getGlobal().INFO("msg") does nothing. So much for the convenience of a simple global logger for devs to use ootb without any setup required. This simple fix simply returns Logger.getLogger(Logger.GLOBALLOGGERNAME) when getGlobal() is called and hence results in proper setup of the logging sytem /and /a working global logger with no "assembly" required :-) Thanks, Jim
- Previous message: RFR: 7184195 - java.util.logging.Logger.getGlobal().info() doesn't log without configuration
- Next message: RFR: 7184195 - java.util.logging.Logger.getGlobal().info() doesn't log without configuration
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]