diff --git a/xos/synchronizer/steps/sync_vspgwctenant.py b/xos/synchronizer/steps/sync_vspgwctenant.py
index c81babb..3354690 100644
--- a/xos/synchronizer/steps/sync_vspgwctenant.py
+++ b/xos/synchronizer/steps/sync_vspgwctenant.py
@@ -22,6 +22,8 @@
 parentdir = os.path.join(os.path.dirname(__file__), "..")
 sys.path.insert(0, parentdir)
 
+class ServiceGraphException(Exception):
+    pass
 
 class SyncVSPGWCTenant(SyncInstanceUsingAnsible):
     observes = VSPGWCTenant
@@ -251,7 +253,7 @@
             except StopIteration:
                 self.log.error(
                     'Could not find service type in service graph', service_type=sitype, object=o)
-                raise Exception(
+                raise ServiceGraphException(
                     "Synchronization failed due to incomplete service graph")
 
         return peer_service 
@@ -267,8 +269,9 @@
         return instance_id
 
     def has_instance(self, sitype, o):
-        i = self.get_peer_serviceinstance_of_type(sitype, o)
-        if not i:
+        try:
+            i = self.get_peer_serviceinstance_of_type(sitype, o)
+        except ServiceGraphException:
             self.log.info("Missing in ServiceInstance graph",
                           serviceinstance=sitype)
             return False
