diff --git a/src/main/java/net/floodlightcontroller/loadbalancer/LoadBalancer.java b/src/main/java/net/floodlightcontroller/loadbalancer/LoadBalancer.java
index c42f7fb605c17d9ccd5a8a69f15e79e005325c49..de0dbc10c24278460216dbf458988ba284e2a676 100644
--- a/src/main/java/net/floodlightcontroller/loadbalancer/LoadBalancer.java
+++ b/src/main/java/net/floodlightcontroller/loadbalancer/LoadBalancer.java
@@ -687,7 +687,7 @@ public class LoadBalancer implements IFloodlightModule,
             pool = pools.get(poolId);
             if (pool == null)	// fix dereference violations
             	return -1;
-            if (pool.vipId != null)
+            if (pool.vipId != null && vips.containsKey(pool.vipId))
                 vips.get(pool.vipId).pools.remove(poolId);
             pools.remove(poolId);
             return 0;
@@ -750,7 +750,7 @@ public class LoadBalancer implements IFloodlightModule,
         member = members.get(memberId);
         
         if(member != null){
-            if (member.poolId != null)
+            if (member.poolId != null && pools.containsKey(member.poolId))
                 pools.get(member.poolId).members.remove(memberId);
             members.remove(memberId);
             return 0;