From 89e52b3e63862526ad65eb6ec6bc667503a20490 Mon Sep 17 00:00:00 2001 From: Sachin Bansal Date: Sat, 13 Jun 2015 11:55:54 -0700 Subject: [PATCH] Ignore objects in inconsistent state during listing Change-Id: I3d087c26678f2e753959d34550350ee101b881a6 Closes-Bug: 1464901 (cherry picked from commit bb1af7827288e69f5b3ffea82a4f8295e04fe1c0) --- src/config/api-server/vnc_cfg_api_server.py | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/config/api-server/vnc_cfg_api_server.py b/src/config/api-server/vnc_cfg_api_server.py index 1f7283b4960..f8670b4eff1 100644 --- a/src/config/api-server/vnc_cfg_api_server.py +++ b/src/config/api-server/vnc_cfg_api_server.py @@ -1291,6 +1291,11 @@ def _list_collection(self, obj_type, parent_uuids=None, obj_dict['href'] = self.generate_url( obj_type, obj_result['uuid']) obj_dict.update(obj_result) + if 'id_perms' not in obj_dict: + # It is possible that the object was deleted, but received + # an update after that. We need to ignore it for now. In + # future, we should clean up such stale objects + continue if (obj_dict['id_perms'].get('user_visible', True) or self.is_admin_request()): obj_dicts.append({obj_type: obj_dict})