summaryrefslogtreecommitdiffstats
path: root/nova/db
diff options
context:
space:
mode:
authorJenkins <jenkins@review.openstack.org>2012-03-12 23:27:41 +0000
committerGerrit Code Review <review@openstack.org>2012-03-12 23:27:41 +0000
commitfd80f1b2e1dc03b77fa51cfa27dedce1c593201d (patch)
tree235ba162d667e0c142d29a5d730f1e90880e9a31 /nova/db
parent5c20aee542fd9af473ca845020ecac9fe9df2d41 (diff)
parent6857fd2d952e5602a227a5f24173c75ba3e70f7b (diff)
downloadnova-fd80f1b2e1dc03b77fa51cfa27dedce1c593201d.tar.gz
nova-fd80f1b2e1dc03b77fa51cfa27dedce1c593201d.tar.xz
nova-fd80f1b2e1dc03b77fa51cfa27dedce1c593201d.zip
Merge "Fixes bug 943188"
Diffstat (limited to 'nova/db')
-rw-r--r--nova/db/sqlalchemy/api.py9
1 files changed, 5 insertions, 4 deletions
diff --git a/nova/db/sqlalchemy/api.py b/nova/db/sqlalchemy/api.py
index 759a07827..7af4323a9 100644
--- a/nova/db/sqlalchemy/api.py
+++ b/nova/db/sqlalchemy/api.py
@@ -4153,15 +4153,15 @@ def aggregate_create(context, values, metadata=None):
values['name'],
session=session,
read_deleted='yes').first()
+ values.setdefault('operational_state', aggregate_states.CREATED)
if not aggregate:
aggregate = models.Aggregate()
- values.setdefault('operational_state', aggregate_states.CREATED)
aggregate.update(values)
aggregate.save(session=session)
elif aggregate.deleted:
- aggregate.update({'deleted': False,
- 'deleted_at': None,
- 'availability_zone': values['availability_zone']})
+ values['deleted'] = False
+ values['deleted_at'] = None
+ aggregate.update(values)
aggregate.save(session=session)
else:
raise exception.AggregateNameExists(aggregate_name=values['name'])
@@ -4230,6 +4230,7 @@ def aggregate_delete(context, aggregate_id):
if query.first():
query.update({'deleted': True,
'deleted_at': utils.utcnow(),
+ 'operational_state': aggregate_states.DISMISSED,
'updated_at': literal_column('updated_at')})
else:
raise exception.AggregateNotFound(aggregate_id=aggregate_id)