Code Review
/
pti
/
o2.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
review
|
tree
raw
|
inline
| side by side
Fix: INF-254 retry method defined on the higher level makes primary mapper defined...
[pti/o2.git]
/
o2dms
/
adapter
/
orm.py
diff --git
a/o2dms/adapter/orm.py
b/o2dms/adapter/orm.py
index
1fa808b
..
3c1709c
100644
(file)
--- a/
o2dms/adapter/orm.py
+++ b/
o2dms/adapter/orm.py
@@
-12,6
+12,7
@@
# See the License for the specific language governing permissions and
\r
# limitations under the License.
\r
\r
# See the License for the specific language governing permissions and
\r
# limitations under the License.
\r
\r
+from retry import retry
\r
from sqlalchemy import (
\r
Table,
\r
MetaData,
\r
from sqlalchemy import (
\r
Table,
\r
MetaData,
\r
@@
-24,6
+25,7
@@
from sqlalchemy import (
# ForeignKey,
\r
# engine,
\r
# event,
\r
# ForeignKey,
\r
# engine,
\r
# event,
\r
+ exc
\r
)
\r
\r
from sqlalchemy.orm import mapper
\r
)
\r
\r
from sqlalchemy.orm import mapper
\r
@@
-90,6
+92,13
@@
nfOCloudVResource = Table(
)
\r
\r
\r
)
\r
\r
\r
+@retry((exc.IntegrityError), tries=3, delay=2)
\r
+def wait_for_metadata_ready(engine):
\r
+ # wait for mapper ready
\r
+ metadata.create_all(engine, checkfirst=True)
\r
+ logger.info("metadata is ready")
\r
+
\r
+
\r
def start_o2dms_mappers(engine=None):
\r
logger.info("Starting O2 DMS mappers")
\r
\r
def start_o2dms_mappers(engine=None):
\r
logger.info("Starting O2 DMS mappers")
\r
\r
@@
-98,4
+107,4
@@
def start_o2dms_mappers(engine=None):
mapper(dmsModel.NfOCloudVResource, nfOCloudVResource)
\r
\r
if engine is not None:
\r
mapper(dmsModel.NfOCloudVResource, nfOCloudVResource)
\r
\r
if engine is not None:
\r
-
metadata.create_all(engine, checkfirst=Tru
e)
\r
+
wait_for_metadata_ready(engin
e)
\r