You are viewing a plain text version of this content. The canonical link for it is here.
Posted to derby-commits@db.apache.org by ma...@apache.org on 2009/07/23 19:04:11 UTC
svn commit: r797147 -
/db/derby/code/trunk/java/engine/org/apache/derby/impl/services/jmx/JMXManagementService.java
Author: mamta
Date: Thu Jul 23 17:04:11 2009
New Revision: 797147
URL: http://svn.apache.org/viewvc?rev=797147&view=rev
Log:
DERBY-4306
registeredMbeans is null but we do not check for nullability before executing following
if (registeredMbeans.remove(mbeanName) == null)
which resulted in NPE.
I have fixed the problem by checking for nullability first. registeredMbeans will be null if someone shuts down the engine first and then later on issues a command to shutdown the server. During the shutdown, registeredMbeans will be null and we should check for that nullability before accessing it.
Modified:
db/derby/code/trunk/java/engine/org/apache/derby/impl/services/jmx/JMXManagementService.java
Modified: db/derby/code/trunk/java/engine/org/apache/derby/impl/services/jmx/JMXManagementService.java
URL: http://svn.apache.org/viewvc/db/derby/code/trunk/java/engine/org/apache/derby/impl/services/jmx/JMXManagementService.java?rev=797147&r1=797146&r2=797147&view=diff
==============================================================================
--- db/derby/code/trunk/java/engine/org/apache/derby/impl/services/jmx/JMXManagementService.java (original)
+++ db/derby/code/trunk/java/engine/org/apache/derby/impl/services/jmx/JMXManagementService.java Thu Jul 23 17:04:11 2009
@@ -283,6 +283,10 @@
*/
private synchronized void unregisterMBean(final ObjectName mbeanName)
{
+ //Has this service been shut down?
+ if (registeredMbeans == null)
+ return;
+
if (registeredMbeans.remove(mbeanName) == null)
return;