From: Zhang Rong(Jon) Date: Fri, 3 Dec 2021 03:33:38 +0000 (+0800) Subject: Fix: UpdateDms throwing error that no attribute 'events' X-Git-Tag: 1.0.0~15 X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=commitdiff_plain;h=71f8155b3b60befb21aabaffe0b0cf4d940eda61;p=pti%2Fo2.git Fix: UpdateDms throwing error that no attribute 'events' 1. Check events exist before the pop event Issue-ID: INF-233 Signed-off-by: Zhang Rong(Jon) Change-Id: I98fc3ebdd766f9e65f012fa61f612c4d587c7457 --- diff --git a/o2app/adapter/unit_of_work.py b/o2app/adapter/unit_of_work.py index e488542..6fd4ae2 100644 --- a/o2app/adapter/unit_of_work.py +++ b/o2app/adapter/unit_of_work.py @@ -24,6 +24,9 @@ from o2common.service.unit_of_work import AbstractUnitOfWork from o2ims.adapter import ocloud_repository from o2dms.adapter import dms_repository +from o2common.helper import o2logging +logger = o2logging.get_logger(__name__) + DEFAULT_SESSION_FACTORY = sessionmaker( bind=create_engine( config.get_postgres_uri(), @@ -70,26 +73,26 @@ class SqlAlchemyUnitOfWork(AbstractUnitOfWork): def _collect_new_events(self): for entry in self.oclouds.seen: - while entry.events: + while hasattr(entry, 'events') and len(entry.events) > 0: yield entry.events.pop(0) for entry in self.resource_pools.seen: - while entry.events: + while hasattr(entry, 'events') and len(entry.events) > 0: yield entry.events.pop(0) for entry in self.resources.seen: - while entry.events: + while hasattr(entry, 'events') and len(entry.events) > 0: yield entry.events.pop(0) for entry in self.resource_types.seen: - while entry.events: + while hasattr(entry, 'events') and len(entry.events) > 0: yield entry.events.pop(0) for entry in self.deployment_managers.seen: - while entry.events: + while hasattr(entry, 'events') and len(entry.events) > 0: yield entry.events.pop(0) for entry in self.nfdeployment_descs.seen: - while entry.events: + while hasattr(entry, 'events') and len(entry.events) > 0: yield entry.events.pop(0) for entry in self.nfdeployments.seen: - while entry.events: + while hasattr(entry, 'events') and len(entry.events) > 0: yield entry.events.pop(0) for entry in self.ocloudvresources.seen: - while entry.events: + while hasattr(entry, 'events') and len(entry.events) > 0: yield entry.events.pop(0)