diff --git a/core/datastream/decorator.py b/core/datastream/decorator.py index 10284cba6748454a35e5da368b486ea7841d4b91..91fc4f5db0c0fcc37e374706208cfc58e198b9c0 100644 --- a/core/datastream/decorator.py +++ b/core/datastream/decorator.py @@ -47,7 +47,7 @@ def _on_model_change(sender, instance, *args, **kwargs): instance, changed_fields=set( f_name - for f_name in instance.initial_data + for f_name in getattr(instance, "initial_data", []) if instance.initial_data[f_name] != getattr(instance, f_name) ), ) diff --git a/sa/models/administrativedomain.py b/sa/models/administrativedomain.py index 74746e2d72ed15de2704a0eec578a2f1faf4f6a2..a81e2bbeb3a1ef140c52def3501214828a98c27d 100644 --- a/sa/models/administrativedomain.py +++ b/sa/models/administrativedomain.py @@ -22,7 +22,7 @@ from noc.core.model.base import NOCModel from noc.main.models.pool import Pool from noc.main.models.remotesystem import RemoteSystem from noc.core.model.fields import TagsField, DocumentReferenceField -from noc.core.model.decorator import on_delete_check +from noc.core.model.decorator import on_delete_check, on_init from noc.core.bi.decorator import bi_sync from noc.core.datastream.decorator import datastream @@ -30,6 +30,7 @@ id_lock = Lock() _path_cache = cachetools.TTLCache(maxsize=1000, ttl=60) +@on_init @bi_sync @datastream @on_delete_check(