diff --git a/src/main/java/net/floodlightcontroller/core/internal/Controller.java b/src/main/java/net/floodlightcontroller/core/internal/Controller.java
index d733a3a4a5637a84a80011f557370529697cc114..d0b6631e3824f667a86ecd497a7f37d2d4a88e37 100644
--- a/src/main/java/net/floodlightcontroller/core/internal/Controller.java
+++ b/src/main/java/net/floodlightcontroller/core/internal/Controller.java
@@ -773,13 +773,13 @@ public class Controller implements IFloodlightProviderService,
             sw.setSwitchProperties(state.description);
             readPropertyFromStorage();
 
+            log.info("Switch {} bound to class {}",
+                    HexString.toHexString(sw.getId()), sw.getClass().getName());
+            log.info("{}", state.description);
+
             state.featuresReply = null;
             state.description = null;
             state.switchBindingDone = true;
-
-            log.info("Switch {} bound to class {}",
-                    HexString.toHexString(sw.getId()), sw.getClass().getName());
-            return;
         }
         
        private void readPropertyFromStorage() {
diff --git a/src/main/java/net/floodlightcontroller/core/internal/RoleChanger.java b/src/main/java/net/floodlightcontroller/core/internal/RoleChanger.java
index 82fe45c0c58e8a3593cea4eea908829d5464467f..0c26709ad51c2ac47311a18c6e1812681c1a874d 100644
--- a/src/main/java/net/floodlightcontroller/core/internal/RoleChanger.java
+++ b/src/main/java/net/floodlightcontroller/core/internal/RoleChanger.java
@@ -296,15 +296,15 @@ public class RoleChanger {
         while(iter.hasNext()) {
             IOFSwitch sw = iter.next();
             try {
-                int xid = sendHARoleRequest(sw, role, cookie);
-                PendingRoleRequestEntry entry =
-                        new PendingRoleRequestEntry(xid, role, cookie);
                 LinkedList<PendingRoleRequestEntry> pendingList
                     = pendingRequestMap.get(sw);
                 if (pendingList == null) {
                     pendingList = new LinkedList<PendingRoleRequestEntry>();
                     pendingRequestMap.put(sw, pendingList);
                 }
+                int xid = sendHARoleRequest(sw, role, cookie);
+                PendingRoleRequestEntry entry =
+                        new PendingRoleRequestEntry(xid, role, cookie);
                 // Need to synchronize against removal from list
                 synchronized(pendingList) {
                     pendingList.add(entry);
diff --git a/src/main/java/org/openflow/protocol/statistics/OFDescriptionStatistics.java b/src/main/java/org/openflow/protocol/statistics/OFDescriptionStatistics.java
index 6799fa3618e1f2303a84f4c9a8085db873261cd9..86ad782d8b56a4dff1be90e6f3af503b282adb87 100644
--- a/src/main/java/org/openflow/protocol/statistics/OFDescriptionStatistics.java
+++ b/src/main/java/org/openflow/protocol/statistics/OFDescriptionStatistics.java
@@ -213,4 +213,13 @@ public class OFDescriptionStatistics implements OFStatistics {
         }
         return true;
     }
+
+    @Override
+    public String toString() {
+        return "Switch Desc - Vendor: " +  manufacturerDescription +
+                "  Model: " + hardwareDescription +
+                "  Make: " + datapathDescription +
+                "  Version: " + softwareDescription +
+                "  S/N: " + serialNumber;
+    }
 }