You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@qpid.apache.org by or...@apache.org on 2013/04/30 17:12:35 UTC

svn commit: r1477682 - in /qpid/branches/0.22/qpid/java: ./ bdbstore/jmx/src/test/java/org/apache/qpid/server/store/berkeleydb/ broker/ broker/src/main/java/org/apache/qpid/server/model/ broker/src/main/java/org/apache/qpid/server/model/adapter/ broker...

Author: orudyy
Date: Tue Apr 30 15:12:35 2013
New Revision: 1477682

URL: http://svn.apache.org/r1477682
Log:
QPID-4778: Introduce additional states for configured objects: ERRORED and REPLICA

merged from trunk r1477667


Added:
    qpid/branches/0.22/qpid/java/broker/src/test/java/org/apache/qpid/server/model/VirtualHostTest.java
      - copied unchanged from r1477667, qpid/trunk/qpid/java/broker/src/test/java/org/apache/qpid/server/model/VirtualHostTest.java
Modified:
    qpid/branches/0.22/qpid/java/   (props changed)
    qpid/branches/0.22/qpid/java/bdbstore/jmx/src/test/java/org/apache/qpid/server/store/berkeleydb/HAClusterManagementTest.java
    qpid/branches/0.22/qpid/java/broker/   (props changed)
    qpid/branches/0.22/qpid/java/broker/src/main/java/org/apache/qpid/server/model/State.java
    qpid/branches/0.22/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/VirtualHostAdapter.java
    qpid/branches/0.22/qpid/java/broker/src/main/java/org/apache/qpid/server/virtualhost/   (props changed)
    qpid/branches/0.22/qpid/java/broker/src/main/java/org/apache/qpid/server/virtualhost/VirtualHostImpl.java

Propchange: qpid/branches/0.22/qpid/java/
------------------------------------------------------------------------------
  Merged /qpid/trunk/qpid/java:r1477667

Modified: qpid/branches/0.22/qpid/java/bdbstore/jmx/src/test/java/org/apache/qpid/server/store/berkeleydb/HAClusterManagementTest.java
URL: http://svn.apache.org/viewvc/qpid/branches/0.22/qpid/java/bdbstore/jmx/src/test/java/org/apache/qpid/server/store/berkeleydb/HAClusterManagementTest.java?rev=1477682&r1=1477681&r2=1477682&view=diff
==============================================================================
--- qpid/branches/0.22/qpid/java/bdbstore/jmx/src/test/java/org/apache/qpid/server/store/berkeleydb/HAClusterManagementTest.java (original)
+++ qpid/branches/0.22/qpid/java/bdbstore/jmx/src/test/java/org/apache/qpid/server/store/berkeleydb/HAClusterManagementTest.java Tue Apr 30 15:12:35 2013
@@ -235,7 +235,7 @@ public class HAClusterManagementTest ext
         catch  (Exception e)
         {
             String message = e.getMessage();
-            assertEquals(message, "The virtual hosts state of INITIALISING does not permit this operation.");
+            assertEquals("The virtual hosts state of PASSIVE does not permit this operation.", message);
         }
 
         try
@@ -246,7 +246,7 @@ public class HAClusterManagementTest ext
         catch  (Exception e)
         {
             String message = e.getMessage();
-            assertEquals(message, "The virtual hosts state of INITIALISING does not permit this operation.");
+            assertEquals("The virtual hosts state of PASSIVE does not permit this operation.", message);
         }
     }
 

Propchange: qpid/branches/0.22/qpid/java/broker/
------------------------------------------------------------------------------
  Merged /qpid/trunk/qpid/java/broker:r1477667

Modified: qpid/branches/0.22/qpid/java/broker/src/main/java/org/apache/qpid/server/model/State.java
URL: http://svn.apache.org/viewvc/qpid/branches/0.22/qpid/java/broker/src/main/java/org/apache/qpid/server/model/State.java?rev=1477682&r1=1477681&r2=1477682&view=diff
==============================================================================
--- qpid/branches/0.22/qpid/java/broker/src/main/java/org/apache/qpid/server/model/State.java (original)
+++ qpid/branches/0.22/qpid/java/broker/src/main/java/org/apache/qpid/server/model/State.java Tue Apr 30 15:12:35 2013
@@ -26,5 +26,7 @@ public enum State
     QUIESCED,
     STOPPED,
     ACTIVE,
-    DELETED
+    DELETED,
+    REPLICA,
+    ERRORED
 }

Modified: qpid/branches/0.22/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/VirtualHostAdapter.java
URL: http://svn.apache.org/viewvc/qpid/branches/0.22/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/VirtualHostAdapter.java?rev=1477682&r1=1477681&r2=1477682&view=diff
==============================================================================
--- qpid/branches/0.22/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/VirtualHostAdapter.java (original)
+++ qpid/branches/0.22/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/VirtualHostAdapter.java Tue Apr 30 15:12:35 2013
@@ -449,12 +449,13 @@ public final class VirtualHostAdapter ex
             case ACTIVE:
                 return State.ACTIVE;
             case PASSIVE:
-                return State.QUIESCED;
+                return State.REPLICA;
             case STOPPED:
                 return State.STOPPED;
+            case ERRORED:
+                return State.ERRORED;
             default:
-                // unexpected state
-                return null;
+                throw new IllegalStateException("Unsupported state:" + implementationState);
             }
         }
     }
@@ -1002,19 +1003,27 @@ public final class VirtualHostAdapter ex
             {
                 throw new IntegrityViolationException("Cannot delete default virtual host '" + hostName + "'");
             }
-            if (_virtualHost != null && _virtualHost.getState() == org.apache.qpid.server.virtualhost.State.ACTIVE)
-            {
-                setDesiredState(currentState, State.STOPPED);
-            }
-            MessageStore ms = _virtualHost.getMessageStore();
-            _virtualHost = null;
-            try
-            {
-                ms.onDelete();
-            }
-            catch(Exception e)
+            if (_virtualHost != null)
             {
-                LOGGER.warn("Exception occured on store deletion", e);
+                if (_virtualHost.getState() == org.apache.qpid.server.virtualhost.State.ACTIVE)
+                {
+                    setDesiredState(currentState, State.STOPPED);
+                }
+
+                MessageStore ms = _virtualHost.getMessageStore();
+                if (ms != null)
+                {
+                    try
+                    {
+                        ms.onDelete();
+                    }
+                    catch(Exception e)
+                    {
+                        LOGGER.warn("Exception occured on store deletion", e);
+                    }
+                }
+
+                _virtualHost = null;
             }
             setAttribute(VirtualHost.STATE, getActualState(), State.DELETED);
             return true;

Propchange: qpid/branches/0.22/qpid/java/broker/src/main/java/org/apache/qpid/server/virtualhost/
------------------------------------------------------------------------------
  Merged /qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/virtualhost:r1477667

Modified: qpid/branches/0.22/qpid/java/broker/src/main/java/org/apache/qpid/server/virtualhost/VirtualHostImpl.java
URL: http://svn.apache.org/viewvc/qpid/branches/0.22/qpid/java/broker/src/main/java/org/apache/qpid/server/virtualhost/VirtualHostImpl.java?rev=1477682&r1=1477681&r2=1477682&view=diff
==============================================================================
--- qpid/branches/0.22/qpid/java/broker/src/main/java/org/apache/qpid/server/virtualhost/VirtualHostImpl.java (original)
+++ qpid/branches/0.22/qpid/java/broker/src/main/java/org/apache/qpid/server/virtualhost/VirtualHostImpl.java Tue Apr 30 15:12:35 2013
@@ -296,6 +296,10 @@ public class VirtualHostImpl implements 
         messageStore.addEventListener(new AfterActivationListener(), Event.AFTER_ACTIVATE);
         messageStore.addEventListener(new BeforeCloseListener(), Event.BEFORE_CLOSE);
         messageStore.addEventListener(new BeforePassivationListener(), Event.BEFORE_PASSIVATE);
+        if (messageStore instanceof HAMessageStore)
+        {
+            messageStore.addEventListener(new AfterInitialisationListener(), Event.AFTER_INIT);
+        }
 
         VirtualHostConfigRecoveryHandler recoveryHandler = new VirtualHostConfigRecoveryHandler(this);
 
@@ -689,6 +693,15 @@ public class VirtualHostImpl implements 
 
     }
 
+    private final class AfterInitialisationListener implements EventListener
+    {
+        public void event(Event event)
+        {
+            _state = State.PASSIVE;
+        }
+
+    }
+
     private final class BeforeCloseListener implements EventListener
     {
         @Override



---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@qpid.apache.org
For additional commands, e-mail: commits-help@qpid.apache.org