diff --git a/openstackclient/common/utils.py b/openstackclient/common/utils.py
index 5c5466dfc6..818f8d4771 100644
--- a/openstackclient/common/utils.py
+++ b/openstackclient/common/utils.py
@@ -33,8 +33,15 @@ def find_resource(manager, name_or_id):
     try:
         if isinstance(name_or_id, int) or name_or_id.isdigit():
             return manager.get(int(name_or_id))
-    except exceptions.NotFound:
-        pass
+    # FIXME(dtroyer): The exception to catch here is dependent on which
+    #                 client library the manager passed in belongs to.
+    #                 Eventually this should be pulled from a common set
+    #                 of client exceptions.
+    except Exception as ex:
+        if type(ex).__name__ == 'NotFound':
+            pass
+        else:
+            raise
 
     # Try directly using the passed value
     try: