summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--nova/compute/manager.py8
-rw-r--r--nova/db/sqlalchemy/api.py6
2 files changed, 12 insertions, 2 deletions
diff --git a/nova/compute/manager.py b/nova/compute/manager.py
index 0893db9fc..6fc5c5186 100644
--- a/nova/compute/manager.py
+++ b/nova/compute/manager.py
@@ -99,10 +99,14 @@ class ComputeManager(manager.Manager):
that has just been created
"""
- # Set sane defaults if not specified
- kwargs.setdefault('display_name', "Server %s" % kwargs['internal_id'])
instance_ref = self.db.instance_create(context, kwargs)
inst_id = instance_ref['id']
+ # Set sane defaults if not specified
+ if 'display_name' not in kwargs:
+ display_name = "Server %s" % instance_ref['internal_id']
+ instance_ref['display_name'] = display_name
+ self.db.instance_update(context, inst_id,
+ { 'display_name': display_name })
elevated = context.elevated()
if not security_groups:
diff --git a/nova/db/sqlalchemy/api.py b/nova/db/sqlalchemy/api.py
index afa55fc03..dd9649054 100644
--- a/nova/db/sqlalchemy/api.py
+++ b/nova/db/sqlalchemy/api.py
@@ -530,6 +530,12 @@ def fixed_ip_update(context, address, values):
#functions between the two of them as well.
@require_context
def instance_create(context, values):
+ """Create a new Instance record in the database.
+
+ context - request context object
+ values - dict containing column values.
+ 'internal_id' is auto-generated and should not be specified.
+ """
instance_ref = models.Instance()
instance_ref.update(values)