Resolve deadlock caused in a single synchronizer by cross-synchronizer
dependency management mechanisms.
diff --git a/xos/core/models/flavor.py b/xos/core/models/flavor.py
index 3d6b9bb..8251eb1 100644
--- a/xos/core/models/flavor.py
+++ b/xos/core/models/flavor.py
@@ -18,6 +18,10 @@
app_label = "core"
ordering = ('order', 'name')
+ def __init__(self, *args, **kwargs):
+ super(Flavor, self).__init__(*args, **kwargs)
+ self.no_sync=True
+
def __unicode__(self): return u'%s' % (self.name)
""" FlavorParameterType and FlavorParameter are below for completeness sake,
diff --git a/xos/core/models/site.py b/xos/core/models/site.py
index 42855a9..26ff191 100644
--- a/xos/core/models/site.py
+++ b/xos/core/models/site.py
@@ -168,6 +168,9 @@
# given a default of 'allow site <site_of_creator>'
accessControl = models.TextField(max_length=200, blank=False, null=False, default="allow all",
help_text="Access control list that specifies which sites/users may use nodes in this deployment")
+ def __init__(self, *args, **kwargs):
+ super(Deployment, self).__init__(*args, **kwargs)
+ self.no_sync=True
def get_acl(self):
return AccessControlList(self.accessControl)
@@ -261,7 +264,10 @@
admin_tenant = StrippedCharField(max_length=200, null=True, blank=True, help_text="Name of the tenant the admin user belongs to")
domain = StrippedCharField(max_length=200, null=True, blank=True, help_text="Name of the domain this controller belongs to")
deployment = models.ForeignKey(Deployment,related_name='controllerdeployments')
-
+
+ def __init__(self, *args, **kwargs):
+ super(Controller, self).__init__(*args, **kwargs)
+ self.no_sync=True
def __unicode__(self): return u'%s %s %s' % (self.name, self.backend_type, self.version)