From 46b88ca9c0bf90d5511f365f0b08b8b6fc0ca82c Mon Sep 17 00:00:00 2001 From: Michael Still Date: Tue, 12 Jun 2012 10:11:57 +1000 Subject: Add two missing indexes for instance_uuid columns. sqlite has these indexes because they were in the sql scripts, but they're missing from the other database engines. Change-Id: I2a1935f6eb577d2c3d2eb177c083ad647f76f58f --- .../versions/104_instance_indexes_2.py | 43 ++++++++++++++++++++++ .../migrate_repo/versions/104_sqlite_downgrade.sql | 1 + .../migrate_repo/versions/104_sqlite_upgrade.sql | 1 + 3 files changed, 45 insertions(+) create mode 100644 nova/db/sqlalchemy/migrate_repo/versions/104_instance_indexes_2.py create mode 100644 nova/db/sqlalchemy/migrate_repo/versions/104_sqlite_downgrade.sql create mode 100644 nova/db/sqlalchemy/migrate_repo/versions/104_sqlite_upgrade.sql (limited to 'nova') diff --git a/nova/db/sqlalchemy/migrate_repo/versions/104_instance_indexes_2.py b/nova/db/sqlalchemy/migrate_repo/versions/104_instance_indexes_2.py new file mode 100644 index 000000000..4bf6b0484 --- /dev/null +++ b/nova/db/sqlalchemy/migrate_repo/versions/104_instance_indexes_2.py @@ -0,0 +1,43 @@ +# vim: tabstop=4 shiftwidth=4 softtabstop=4 + +# Copyright 2011 OpenStack LLC. +# Copyright 2012 Michael Still and Canonical Inc +# All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); you may +# not use this file except in compliance with the License. You may obtain +# a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT +# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the +# License for the specific language governing permissions and limitations +# under the License. + +from sqlalchemy import Index, MetaData, Table + + +def upgrade(migrate_engine): + meta = MetaData() + meta.bind = migrate_engine + + # NOTE(mikal): these weren't done in 103 because sqlite already has the + # index. + for table in ['instance_metadata', + 'security_group_instance_association']: + t = Table(table, meta, autoload=True) + i = Index('%s_instance_uuid_idx' % table, t.c.instance_uuid) + i.create(migrate_engine) + + +def downgrade(migrate_engine): + meta = MetaData() + meta.bind = migrate_engine + + for table in ['instance_metadata', + 'security_group_instance_association']: + t = Table(table, meta, autoload=True) + i = Index('%s_instance_uuid_idx' % table, t.c.instance_uuid) + i.drop(migrate_engine) diff --git a/nova/db/sqlalchemy/migrate_repo/versions/104_sqlite_downgrade.sql b/nova/db/sqlalchemy/migrate_repo/versions/104_sqlite_downgrade.sql new file mode 100644 index 000000000..8d115abb8 --- /dev/null +++ b/nova/db/sqlalchemy/migrate_repo/versions/104_sqlite_downgrade.sql @@ -0,0 +1 @@ +SELECT 'noop'; \ No newline at end of file diff --git a/nova/db/sqlalchemy/migrate_repo/versions/104_sqlite_upgrade.sql b/nova/db/sqlalchemy/migrate_repo/versions/104_sqlite_upgrade.sql new file mode 100644 index 000000000..8d115abb8 --- /dev/null +++ b/nova/db/sqlalchemy/migrate_repo/versions/104_sqlite_upgrade.sql @@ -0,0 +1 @@ +SELECT 'noop'; \ No newline at end of file -- cgit