[jboss-cvs] JBoss Messaging SVN: r7704 - in trunk: src/main/org/jboss/messaging/core/management/impl and 6 other directories.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Mon Aug 10 17:48:02 EDT 2009


Author: timfox
Date: 2009-08-10 17:48:02 -0400 (Mon, 10 Aug 2009)
New Revision: 7704

Modified:
   trunk/src/main/org/jboss/messaging/core/client/impl/ConnectionManagerImpl.java
   trunk/src/main/org/jboss/messaging/core/management/impl/ManagementServiceImpl.java
   trunk/src/main/org/jboss/messaging/core/postoffice/impl/PostOfficeImpl.java
   trunk/src/main/org/jboss/messaging/core/remoting/impl/Pinger.java
   trunk/src/main/org/jboss/messaging/core/remoting/impl/RemotingConnectionImpl.java
   trunk/src/main/org/jboss/messaging/core/remoting/server/impl/RemotingServiceImpl.java
   trunk/src/main/org/jboss/messaging/core/server/impl/QueueImpl.java
   trunk/tests/src/org/jboss/messaging/tests/integration/cluster/failover/LargeMessageMultiThreadFailoverTest.java
   trunk/tests/src/org/jboss/messaging/tests/integration/cluster/failover/MultiThreadFailoverSupport.java
   trunk/tests/src/org/jboss/messaging/tests/integration/cluster/failover/MultiThreadRandomFailoverTestBase.java
   trunk/tests/src/org/jboss/messaging/tests/util/UnitTestCase.java
Log:
fixed some leaks

Modified: trunk/src/main/org/jboss/messaging/core/client/impl/ConnectionManagerImpl.java
===================================================================
--- trunk/src/main/org/jboss/messaging/core/client/impl/ConnectionManagerImpl.java	2009-08-10 17:12:30 UTC (rev 7703)
+++ trunk/src/main/org/jboss/messaging/core/client/impl/ConnectionManagerImpl.java	2009-08-10 21:48:02 UTC (rev 7704)
@@ -229,7 +229,7 @@
 
       this.orderedExecutorFactory = new OrderedExecutorFactory(threadPool);
    }
-
+   
    // ConnectionLifeCycleListener implementation --------------------------------------------------
 
    public void connectionCreated(final Connection connection)
@@ -450,7 +450,7 @@
    }
 
    public int numSessions()
-   {
+   {   
       return sessions.size();
    }
 

Modified: trunk/src/main/org/jboss/messaging/core/management/impl/ManagementServiceImpl.java
===================================================================
--- trunk/src/main/org/jboss/messaging/core/management/impl/ManagementServiceImpl.java	2009-08-10 17:12:30 UTC (rev 7703)
+++ trunk/src/main/org/jboss/messaging/core/management/impl/ManagementServiceImpl.java	2009-08-10 21:48:02 UTC (rev 7704)
@@ -31,6 +31,7 @@
 import java.util.Map;
 import java.util.Set;
 import java.util.concurrent.ScheduledExecutorService;
+import java.util.concurrent.atomic.AtomicLong;
 
 import javax.management.MBeanServer;
 import javax.management.NotificationBroadcasterSupport;
@@ -154,7 +155,9 @@
 
    // Constructor ----------------------------------------------------
 
-   public ManagementServiceImpl(final MBeanServer mbeanServer, final Configuration configuration, final int managementConnectorID)
+   public ManagementServiceImpl(final MBeanServer mbeanServer,
+                                final Configuration configuration,
+                                final int managementConnectorID)
    {
       this.mbeanServer = mbeanServer;
       this.jmxManagementEnabled = configuration.isJMXManagementEnabled();
@@ -472,6 +475,8 @@
       return registry.get(resourceName);
    }
 
+   private Set<ObjectName> registeredNames = new HashSet<ObjectName>();
+   
    public void registerInJMX(final ObjectName objectName, final Object managedResource) throws Exception
    {
       if (!jmxManagementEnabled)
@@ -482,7 +487,10 @@
       synchronized (mbeanServer)
       {
          unregisterFromJMX(objectName);
+
          mbeanServer.registerMBean(managedResource, objectName);
+
+         registeredNames.add(objectName);
       }
    }
 
@@ -507,11 +515,14 @@
       {
          return;
       }
+
       synchronized (mbeanServer)
       {
          if (mbeanServer.isRegistered(objectName))
          {
             mbeanServer.unregisterMBean(objectName);
+
+            registeredNames.remove(objectName);
          }
       }
    }
@@ -574,10 +585,20 @@
 
       if (jmxManagementEnabled)
       {
-         Set<ObjectName> names = mbeanServer.queryNames(ObjectName.getInstance(ObjectNames.DOMAIN + ":*"), null);
-         for (ObjectName name : names)
+         if (!registeredNames.isEmpty())
          {
-            mbeanServer.unregisterMBean(name);
+            log.warn("On ManagementService stop, there are " + registeredNames.size() + " MBeans");
+
+            for (ObjectName on : this.registeredNames)
+            {
+               try
+               {
+                  mbeanServer.unregisterMBean(on);                                   
+               }
+               catch (Exception ignore)
+               {
+               }
+            }
          }
       }
 
@@ -588,9 +609,9 @@
       messageCounterManager.resetAllCounterHistories();
 
       messageCounterManager.clear();
+      
+      registeredNames.clear();
 
-      // replicationInvoker.stop();
-
       started = false;
    }
 
@@ -633,7 +654,8 @@
                }
 
                // start sending notification *messages* only when the *remoting service* if started
-               if (messagingServer == null || !messagingServer.isStarted() || !messagingServer.getRemotingService().isStarted())
+               if (messagingServer == null || !messagingServer.isStarted() ||
+                   !messagingServer.getRemotingService().isStarted())
                {
                   return;
                }
@@ -771,12 +793,11 @@
       {
          throw new IllegalArgumentException("no operation " + operation + "/" + params.length);
       }
-      
+
       Object result = method.invoke(resource, params);
 
       return result;
    }
 
-
    // Inner classes -------------------------------------------------
 }

Modified: trunk/src/main/org/jboss/messaging/core/postoffice/impl/PostOfficeImpl.java
===================================================================
--- trunk/src/main/org/jboss/messaging/core/postoffice/impl/PostOfficeImpl.java	2009-08-10 17:12:30 UTC (rev 7703)
+++ trunk/src/main/org/jboss/messaging/core/postoffice/impl/PostOfficeImpl.java	2009-08-10 21:48:02 UTC (rev 7704)
@@ -459,6 +459,8 @@
 
       boolean existed = addressManager.addBinding(binding);
 
+      //TODO - why is this code here?
+      //Shouldn't it be in MessagingServerImpl::createQueue??
       if (binding.getType() == BindingType.LOCAL_QUEUE)
       {
          Queue queue = (Queue)binding.getBindable();
@@ -505,6 +507,7 @@
    public synchronized Binding removeBinding(final SimpleString uniqueName) throws Exception
    {
       Binding binding = addressManager.removeBinding(uniqueName);
+      
       if (binding == null)
       {
          throw new MessagingException(MessagingException.QUEUE_DOES_NOT_EXIST);

Modified: trunk/src/main/org/jboss/messaging/core/remoting/impl/Pinger.java
===================================================================
--- trunk/src/main/org/jboss/messaging/core/remoting/impl/Pinger.java	2009-08-10 17:12:30 UTC (rev 7703)
+++ trunk/src/main/org/jboss/messaging/core/remoting/impl/Pinger.java	2009-08-10 21:48:02 UTC (rev 7704)
@@ -77,7 +77,7 @@
       
       channel0.setHandler(this);
    }
-      
+              
    public synchronized void setFuture(final Future<?> future)
    {
       this.future = future;
@@ -129,6 +129,8 @@
       {                      
          future.cancel(false);
       }
+      
+      channel0.setHandler(null);
 
       closed = true;
    }
@@ -137,4 +139,5 @@
    {
       this.stopPinging = true;
    }
+      
 }

Modified: trunk/src/main/org/jboss/messaging/core/remoting/impl/RemotingConnectionImpl.java
===================================================================
--- trunk/src/main/org/jboss/messaging/core/remoting/impl/RemotingConnectionImpl.java	2009-08-10 17:12:30 UTC (rev 7703)
+++ trunk/src/main/org/jboss/messaging/core/remoting/impl/RemotingConnectionImpl.java	2009-08-10 21:48:02 UTC (rev 7704)
@@ -104,8 +104,6 @@
 
    {
       this(transportConnection, -1, interceptors, active, false);
-      
-      log.info("created server connection " + this);
    }
 
    private RemotingConnectionImpl(final Connection transportConnection,

Modified: trunk/src/main/org/jboss/messaging/core/remoting/server/impl/RemotingServiceImpl.java
===================================================================
--- trunk/src/main/org/jboss/messaging/core/remoting/server/impl/RemotingServiceImpl.java	2009-08-10 17:12:30 UTC (rev 7703)
+++ trunk/src/main/org/jboss/messaging/core/remoting/server/impl/RemotingServiceImpl.java	2009-08-10 21:48:02 UTC (rev 7704)
@@ -217,7 +217,7 @@
       {
          return;
       }
-
+      
       // We need to stop them accepting first so no new connections are accepted after we send the disconnect message
       for (Acceptor acceptor : acceptors)
       {
@@ -236,10 +236,12 @@
 
       acceptors.clear();
 
-      for (Pinger runnable : pingers.values())
+      for (Pinger pinger : pingers.values())
       {
-         runnable.close();
+         pinger.close();
       }
+      
+      pingers.clear();
 
       connections.clear();
 

Modified: trunk/src/main/org/jboss/messaging/core/server/impl/QueueImpl.java
===================================================================
--- trunk/src/main/org/jboss/messaging/core/server/impl/QueueImpl.java	2009-08-10 17:12:30 UTC (rev 7703)
+++ trunk/src/main/org/jboss/messaging/core/server/impl/QueueImpl.java	2009-08-10 21:48:02 UTC (rev 7704)
@@ -190,7 +190,7 @@
 
       scheduledDeliveryHandler = new ScheduledDeliveryHandlerImpl(scheduledExecutor);
    }
-
+   
    // Bindable implementation -------------------------------------------------------------------------------------
 
    public SimpleString getRoutingName()

Modified: trunk/tests/src/org/jboss/messaging/tests/integration/cluster/failover/LargeMessageMultiThreadFailoverTest.java
===================================================================
--- trunk/tests/src/org/jboss/messaging/tests/integration/cluster/failover/LargeMessageMultiThreadFailoverTest.java	2009-08-10 17:12:30 UTC (rev 7703)
+++ trunk/tests/src/org/jboss/messaging/tests/integration/cluster/failover/LargeMessageMultiThreadFailoverTest.java	2009-08-10 21:48:02 UTC (rev 7704)
@@ -84,13 +84,11 @@
    {
       InVMRegistry.instance.clear();
 
-      //startNullPersistence();
       startJournal();
    }
    
    protected void startJournal() throws Exception
    {
-
       deleteDirectory(new File(getTestDir()));
 
       Configuration backupConf = new ConfigurationImpl();
@@ -124,7 +122,6 @@
       
       liveConf.setJournalType(JournalType.ASYNCIO);
 
-
       liveConf.setSecurityEnabled(false);
       liveConf.getAcceptorConfigurations()
               .add(new TransportConfiguration(InVMAcceptorFactory.class.getCanonicalName()));
@@ -141,40 +138,8 @@
 
       liveServer.start();
 
-   }
-   
-   
-   protected void startNullPersistence() throws Exception
-   {
-      Configuration backupConf = new ConfigurationImpl();
-      backupConf.setSecurityEnabled(false);
-      backupParams.put(TransportConstants.SERVER_ID_PROP_NAME, 1);
-      backupConf.getAcceptorConfigurations()
-                .add(new TransportConfiguration("org.jboss.messaging.core.remoting.impl.invm.InVMAcceptorFactory",
-                                                backupParams));
-      backupConf.setBackup(true);
-      backupConf.setJMXManagementEnabled(false);
-      backupServer = Messaging.newMessagingServer(backupConf, false);
-      backupServer.start();
+   }  
 
-      Configuration liveConf = new ConfigurationImpl();
-      liveConf.setSecurityEnabled(false);
-      liveConf.getAcceptorConfigurations()
-              .add(new TransportConfiguration("org.jboss.messaging.core.remoting.impl.invm.InVMAcceptorFactory"));
-      Map<String, TransportConfiguration> connectors = new HashMap<String, TransportConfiguration>();
-      TransportConfiguration backupTC = new TransportConfiguration("org.jboss.messaging.core.remoting.impl.invm.InVMConnectorFactory",
-                                                                   backupParams,
-                                                                   "backup-connector");
-      connectors.put(backupTC.getName(), backupTC);
-      liveConf.setConnectorConfigurations(connectors);
-      liveConf.setBackupConnectorName(backupTC.getName());
-      liveConf.setJMXManagementEnabled(false);
-      liveServer = Messaging.newMessagingServer(liveConf, false);
-      liveServer.start();
-   }
-
-
-
    @Override
    protected void setBody(final ClientMessage message) throws Exception
    {

Modified: trunk/tests/src/org/jboss/messaging/tests/integration/cluster/failover/MultiThreadFailoverSupport.java
===================================================================
--- trunk/tests/src/org/jboss/messaging/tests/integration/cluster/failover/MultiThreadFailoverSupport.java	2009-08-10 17:12:30 UTC (rev 7703)
+++ trunk/tests/src/org/jboss/messaging/tests/integration/cluster/failover/MultiThreadFailoverSupport.java	2009-08-10 21:48:02 UTC (rev 7704)
@@ -186,7 +186,7 @@
          sf.close();
 
          stop();
-      }
+               }
    }
 
 

Modified: trunk/tests/src/org/jboss/messaging/tests/integration/cluster/failover/MultiThreadRandomFailoverTestBase.java
===================================================================
--- trunk/tests/src/org/jboss/messaging/tests/integration/cluster/failover/MultiThreadRandomFailoverTestBase.java	2009-08-10 17:12:30 UTC (rev 7703)
+++ trunk/tests/src/org/jboss/messaging/tests/integration/cluster/failover/MultiThreadRandomFailoverTestBase.java	2009-08-10 21:48:02 UTC (rev 7704)
@@ -1287,7 +1287,7 @@
 
    protected int getNumIterations()
    {
-      return 2;
+      return 3;
    }
 
    @Override

Modified: trunk/tests/src/org/jboss/messaging/tests/util/UnitTestCase.java
===================================================================
--- trunk/tests/src/org/jboss/messaging/tests/util/UnitTestCase.java	2009-08-10 17:12:30 UTC (rev 7703)
+++ trunk/tests/src/org/jboss/messaging/tests/util/UnitTestCase.java	2009-08-10 21:48:02 UTC (rev 7704)
@@ -572,8 +572,6 @@
 
       assertEquals(0, InVMRegistry.instance.size());          
 
-      // checkFreePort(TransportConstants.DEFAULT_PORT);
-
       super.tearDown();
    }
 




More information about the jboss-cvs-commits mailing list