summaryrefslogtreecommitdiffstats
path: root/nova/db
diff options
context:
space:
mode:
authorBrian Lamar <brian.lamar@rackspace.com>2011-08-18 12:34:01 -0400
committerBrian Lamar <brian.lamar@rackspace.com>2011-08-18 12:34:01 -0400
commitcab13dbfd652d1fcf9443e796e50f7eb374fc3fc (patch)
tree5da76f57c882dd6c8360914e05a475f26c64274a /nova/db
parent1d1d027554d6be355bd9b52b2d87081d06f05045 (diff)
downloadnova-cab13dbfd652d1fcf9443e796e50f7eb374fc3fc.tar.gz
nova-cab13dbfd652d1fcf9443e796e50f7eb374fc3fc.tar.xz
nova-cab13dbfd652d1fcf9443e796e50f7eb374fc3fc.zip
Updated a number of items to pave the way for new states.
Diffstat (limited to 'nova/db')
-rw-r--r--nova/db/sqlalchemy/api.py4
-rw-r--r--nova/db/sqlalchemy/migrate_repo/versions/037_update_instance_states.py2
-rw-r--r--nova/db/sqlalchemy/models.py16
3 files changed, 6 insertions, 16 deletions
diff --git a/nova/db/sqlalchemy/api.py b/nova/db/sqlalchemy/api.py
index e7d02cb5d..67736dea2 100644
--- a/nova/db/sqlalchemy/api.py
+++ b/nova/db/sqlalchemy/api.py
@@ -1079,8 +1079,8 @@ def instance_stop(context, instance_id):
session.query(models.Instance).\
filter_by(id=instance_id).\
update({'host': None,
- 'state': power_state.SHUTOFF,
- 'state_description': 'stopped',
+ 'vm_state': vm_state.STOP,
+ 'task_state': None,
'updated_at': literal_column('updated_at')})
session.query(models.SecurityGroupInstanceAssociation).\
filter_by(instance_id=instance_id).\
diff --git a/nova/db/sqlalchemy/migrate_repo/versions/037_update_instance_states.py b/nova/db/sqlalchemy/migrate_repo/versions/037_update_instance_states.py
index 0bbe39def..07efbf90f 100644
--- a/nova/db/sqlalchemy/migrate_repo/versions/037_update_instance_states.py
+++ b/nova/db/sqlalchemy/migrate_repo/versions/037_update_instance_states.py
@@ -14,7 +14,7 @@
# License for the specific language governing permissions and limitations
# under the License.
-from sqlalchemy import MetaData, Table
+from sqlalchemy import MetaData, Table, Column, String
meta = MetaData()
diff --git a/nova/db/sqlalchemy/models.py b/nova/db/sqlalchemy/models.py
index f2a4680b0..d2987cacc 100644
--- a/nova/db/sqlalchemy/models.py
+++ b/nova/db/sqlalchemy/models.py
@@ -193,8 +193,9 @@ class Instance(BASE, NovaBase):
key_name = Column(String(255))
key_data = Column(Text)
- state = Column(Integer)
- state_description = Column(String(255))
+ power_state = Column(Integer)
+ vm_state = Column(String(255))
+ task_state = Column(String(255))
memory_mb = Column(Integer)
vcpus = Column(Integer)
@@ -232,17 +233,6 @@ class Instance(BASE, NovaBase):
root_device_name = Column(String(255))
- # TODO(vish): see Ewan's email about state improvements, probably
- # should be in a driver base class or some such
- # vmstate_state = running, halted, suspended, paused
- # power_state = what we have
- # task_state = transitory and may trigger power state transition
-
- #@validates('state')
- #def validate_state(self, key, state):
- # assert(state in ['nostate', 'running', 'blocked', 'paused',
- # 'shutdown', 'shutoff', 'crashed'])
-
class InstanceActions(BASE, NovaBase):
"""Represents a guest VM's actions and results"""